Change APIs from PicoScope3224 to PicoScope4224

Post general discussions on using our drivers to write your own software here
Post Reply
Posts: 0
Joined: Wed Oct 26, 2011 10:43 pm

Change APIs from PicoScope3224 to PicoScope4224

Post by ivantsou » Thu Oct 27, 2011 4:20 am

Recently I am working on the new PicoScope device 4224 to replace old 3224 APIs with 4224 APIs. But I got the following questions during my work. It would be great somebody can help me to answer them or let me know how I can get the solution. I appreciate the help!

1. ps3000_get_timebase and P4000GetTimebase difference
Here is the code I used to find the appropriate timebase:
while (!_ps.GetTimebase(_timebase, no_of_samples, out time_interval, out _time_units, _oversample, out maxSamples))

The while loop is designed to keep incrementing the _timebase until it falls into the right range.

When I use PicoScope3224 and call this function, I got the following numbers:
Timebase = 12
numbSamples = 982 (user defined)
nsInterval = 204800
timeUnits = nanosecond
oversample = 1
maxSamples = 261631

But when I switch to the 4224 API P4000GetTimebase, I could not find a valid timebase and got stuck inside the while loop. Could somebody let me know what could possibly go wrong?
I looked at the ps4000 programming guide and it says the TimeBase is divided into two subrages, “Hight” and “Low”. How do I know which subrange I am using now?

2. Does ps4000IsReady have the same usage as ps3000_ready?
I tried to replace ps4000IsReady with ps3000_ready after ps4000RunBlock to know when I can start getting data from PicoScope. But the device was never ready.

Site Admin
Site Admin
Posts: 3330
Joined: Fri Jun 10, 2011 8:15 am
Location: St. Neots

Re: Change APIs from PicoScope3224 to PicoScope4224

Post by Martyn » Fri Oct 28, 2011 9:11 am

Can you post the relevant sections of the 4224 code for GetTimebase, RunBlock and IsReady.
Technical Support Manager

Post Reply