Skip to main content
Topic: Random levels in capture mode, but self test mode OK! (Read 3099 times) previous topic - next topic

Random levels in capture mode, but self test mode OK!

Hello,

I've received my brand new OLS a few days ago, but i can't manage to have it working correctly! When trying to capture, i get only random levels!

I've spent hours trying different versions of firmware or FPGA bitstreams, switching between Mac OS X 10.6.3 to Windows XP SP3, but i can't manage to have correct captures. I was almost sure to have a faulty buffer like in this thread: http://dangerousprototypes.com/forum/index.php?topic=540.msg4729#msg4729, but to be sure i've tried the self test function with firmware 0.4 and bitstream r2.04 (with Mac OS X since i can't have the r2.04 java client running in Windows: "Error while invoking application: null" message, but that's another problem!).

Surprisingly, the self test is absolutely OK! But even with this configuration, as soon as i try a "real" capture, it fails with random levels.

The test is very simple: i connect both GND probes to a GND pin, and i connect only one probe to VCC pin, either on an external device or on the OLS itself (using UART or ROM ISP pins). So when capturing, i should have only one channel high and all other channels low, but it never works! I got only random results.

I've tested the self test mode 3 times, always OK, but i can't manage to capture anything in normal mode :-(

What can be wrong?

Thanks in advance for your help.

Gerald

Re: Random levels in capture mode, but self test mode OK!

Reply #1
The null error is because the rxtx library is not installed into your java enviroment. Somewhere in the 2.03/2.04 thread this problem is described

How long are the testcables your using? Long (unshielded) cables could pick up quite some noise.

Re: Random levels in capture mode, but self test mode OK!

Reply #2
You might want to try using the power pins from the Wing connector as your VCC supply. The other thing you want to do is ensure that you do not leave any surrounding pins floating. For example, if you have 3.3V connected to pin 0 then make sure pin 1 is connected to ground instead of left floating.

When pins are left floating they tend to randomly pick up the value of pins next to them. I looked at the datasheet for the Spartan 3E and there is an option to activate weak pull down resistors which should help with this problem. I will try activating the pull downs in the next test release.

Jack.

Re: Random levels in capture mode, but self test mode OK!

Reply #3
[quote author="jack.gassett"]I looked at the datasheet for the Spartan 3E and there is an option to activate weak pull down resistors which should help with this problem. I will try activating the pull downs in the next test release.[/quote]
Sounds great, but doesn't that risk affecting the circuit that you're measuring? It's worth testing, but would it be possible to make this configurable in case it causes problems in some situations?

Re: Random levels in capture mode, but self test mode OK!

Reply #4
[quote author="rsdio"]
[quote author="jack.gassett"]I looked at the datasheet for the Spartan 3E and there is an option to activate weak pull down resistors which should help with this problem. I will try activating the pull downs in the next test release.[/quote]
Sounds great, but doesn't that risk affecting the circuit that you're measuring? It's worth testing, but would it be possible to make this configurable in case it causes problems in some situations?
[/quote]

I guess a weak pulldown is to weak to interrupt digital signals (hence the name). But you are still lowering the resistance to ground to a around 10-100K, which could effect partyline busses like I2C (although every measurement has its influence). Depends also on the busvoltage (with 5v the voltage swing is larger then with 3v3)

Could it be made userconfigurable or let it depend on the noise filter setting?

Re: Random levels in capture mode, but self test mode OK!

Reply #5
[quote author="idontknow"]

Surprisingly, the self test is absolutely OK! But even with this configuration, as soon as i try a "real" capture, it fails with random levels.

The test is very simple: i connect both GND probes to a GND pin, and i connect only one probe to VCC pin, either on an external device or on the OLS itself (using UART or ROM ISP pins). So when capturing, i should have only one channel high and all other channels low, but it never works! I got only random results.

[/quote]

Can you please show us all of your settings when you try a capture (perhaps a screen capture of the settings)?  Currently, there are only certain parameter settings in the client which work with the OLS.  When you say you get random results, do you mean that you get constant levels or are you seeing random high and low signals on each channel?  Perhaps a screen capture of the results would help us to see what is wrong.

Re: Random levels in capture mode, but self test mode OK!

Reply #6
[quote author="Sjaak"]
I guess a weak pulldown is to weak to interrupt digital signals (hence the name). But you are still lowering the resistance to ground to a around 10-100K, which could effect partyline busses like I2C (although every measurement has its influence). Depends also on the busvoltage (with 5v the voltage swing is larger then with 3v3)

Could it be made userconfigurable or let it depend on the noise filter setting?
[/quote]
This would only be an issue for the unbuffered channels, right? What are the current input impedance specs? The Intronix Logicport specs are 200kohm in parallel with <5pF (probably without probes, which is a bit dishonest in my opinion). I would expect the OLS to have a much higher input capacitance, especially with the included probes (it's not like you can use it without any probes), that's why most professional logic analyzers use active probes. The capacitive load is probably much more important for I2C, since it's an open collector bus which depends on the pull-up resistor for rise time. 100kohm would be perfectly acceptable in my opinion, although 10kohm might be too low (since many pull up/down resistors are in that order of magnitude).

Re: Random levels in capture mode, but self test mode OK!

Reply #7
Thanks for your replies! This is the week-end, so i have time to come back to my problems!

@Sjaak: Ok for the missing rxtx library, i did not think about that because older version started correctly (i probably can't capture after). I will test later, i can keep using on my Mac for the moment. I use the probes provided by Seeeds, and i've also tested shorter cables (around 10cm long)

@Jack.gasset: Thanks for your advice. By grounding floating pins, results are no more random! I have either constant low or high levels, depending on the connection to VCC or GND. But i have another problem now, see below...

@sdixon: by random i meant constant level all along the capture, but all levels changing randomly between 2 captures.

So now that i know i must connect unused pins to ground, i've tried to capture a "real" signal (not only VCC or GND). Now, my new problem is that i only capture one constant signal, i can't capture level changes. i've first tried to capture serial data link (115200 bps, 3,3V): i can see the data on my terminal application, so serial link is working, but data captured by OLS is only a constant high level. I've then switched to another device using slower 9600 bps at 5V, with in addition a pulse signal on another pin: same results, only constant levels (high for the serial link, low for the pulse output, which is low by default). No serial data, nor any pulse are captured!

So it looks like i capture only an instant level, not sampling its evolution accross time.

Settings are the following:
- Analyzer port: /dev/tty.usbmodem411 (there's also a /dev/cu.usbmodem411, i've not tried it)
- Port speed: 115200 bps(LL)
- Number schemes: inside
- Sampling clock: internal
- Sampling rate: tried different values between 1MHz and 200MHz
- Channel groups: only 0 checked
- Recording size: tried different values between 2K and 256K
- Noise Filter: tried both
- RLE: Off
- Trigger: Off

Pretty basic configuration isn't it? And sampling rate of several Mhz should be far enough to capture 9600 or 115200bps.

May be am i missing something obvious, but i'm completely confused again...

Gérald

Re: Random levels in capture mode, but self test mode OK!

Reply #8
Hi again,

Just after i posted my previous message, i've read this topic: http://dangerousprototypes.com/forum/index.php?topic=585.0. So it seems that even if settings are available in the application, there are very strict limitations to the really working settings. Using only 1 group (8 bits) seems to be forbidden, and also it seems that recording size is limited to 4K for 32 channels or 8K for 16 channels. So, since i'm using only 1 group, i'm out of these limitations!
I have to make some more tests with allowed settings.

Stay tuned!
Gérald

Re: Random levels in capture mode, but self test mode OK!

Reply #9
Hi Gérald - It looks like you found the problem. The latest bitstream (2.04) is starting to support variable channel lengths, but it's a new feature we're just adding now. There are various limitations on the channel depth and sampling rates.
Got a question? Please ask in the forum for the fastest answers.