[Python Wrapper - pico4000a] Can we set attenuation of the picoscope?

Post general discussions on using our drivers to write your own software here
Post Reply
Posts: 0
Joined: Tue Aug 06, 2019 5:09 am

[Python Wrapper - pico4000a] Can we set attenuation of the picoscope?

Post by vitsensei » Wed Aug 14, 2019 12:16 pm

Is it possible to set the picoscope's attenuation so that collected data automatically multiple to X number? Or do we have to do that manually after collect the data?
Also, can we set the resolution of the picoscope like in the Picoscope6 software? In the sample code for pico4000a, maxADC is set to be 32767, which is 15 bit. Is 15 bit the default resolution?
I also don't really understand streaming mode. In streaming mode, is the data automatically get aggregated? If not, why in the sample code, we use SetDataBuffers instead of SetDataBuffer? Is aggregation and downsampling the same thing? If not, what is the difference?

Thanks, lovely documentation so far. I'm just a little bit inexperience in signal processing and oscilloscope :(.

Posts: 164
Joined: Tue Jul 18, 2017 8:28 am

Re: [Python Wrapper - pico4000a] Can we set attenuation of the picoscope?

Post by NeilH » Thu Aug 15, 2019 8:02 am


The attenuation would need to be corrected for after retrieving data from the device.

If the device supports multiple hardware resolutions then you can switch between these using API functions, but the resolution enhancement feature with PicoScope 6 is a software feature rather than a driver or hardware feature so is not available through our API.

When data is returned from the scope, it is scaled to be a 16 bit value regardless of the resolution of the scope for constituency.

When using the scopes the data is not downsampled unless the user sets up downsampling when applying their settings, in our examples we use SetDataBuffers rather than SetDataBuffer to show the setting of two buffers as its easier to go from setting two per channel to setting one per channel so we chose to give the SetDataBuffers as the example.

Downsampling can be done using one of three methods, aggregate which reduced every block of n values to the max and min values within the block, average which reduces every block of n values to the mean of these values and decimate which reduces every block of n values to just the first value while the rest are discarded.

I hope this helps

Technical Support Engineer

Post Reply