Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You may not want to do that. The sampling rate is very important on a scope, especially for analog signals because of Nyquist.


Hmm, I was expecting the sampling frequency to have been made independent of the USB bus, (i.e for the sampling to occur purely on the picoscope itself and data merely relayed over USB).

I don't even know what the frequency limitations of USB are I just know it's capabilities are highly dependent on the host so relying on it for precise high frequency sampling seems like a bad idea, and if that is the case for the picoscope then you are correct, I just find it a surprising design decision.

Am I wrong in thinking this? or are you referring to a different reason?


Yes, all the sampling is performed on the Picoscope and then streamed over USB.

This is something that you need to grok when using scopes: you're capturing (often) a teeny-tiny snapshot of time. The waveform on your display might be 50ns wide. You certainly can't process this data in real-time using your eyes (that'd be 20 million frames a second). So you're not seeing a continuous signal, you're seeing short snippets of your signal separated by some dead time. The majority of this dead time is probably just writing to the display. You're not pushing pixels to the display at the sampling rate of the scope, otherwise these would be some of the best monitors in existence!

Usually scopes are triggered somehow and you'll be sent waveforms, typically centred on the trigger point, at some maximum frame rate. So you'll see a little bit before the trigger and a little bit after. Most scopes let you vary the trigger offset, e.g. if care more about stuff that happens before or after. Using an oscilloscope well is all about the triggering!

The scope will have (a) a max. sampling speed and (b) a fixed size sample buffer. You trade off both. You can sample really fast for a short period of time, or slower, but see a longer time period. If you want to see 'all' the signal, then you can set the timebase to something long - e.g. 100ms/div. That's useful for seeing slowly varying signals, but you'll lose resolution. A scope with a nice big sample buffer will let you zoom in on a signal once its been captured.

Once the buffer is full, the scope has to transfer that data to you, either directly to a screen or over a serial connection. Unless you're in single shot mode, this process will repeat every time the trigger condition is satisfied.


I think the idea is to use the Pi purely as a display. Picotech's scopes tend to be well specced with regard to analogue bandwidth/sampling rates - around 5x Nyquist typically.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: