PS4444: Synchronization between channels

Post any questions you may have about our current range of oscilloscopes
Post Reply
pavital
Newbie
Posts: 0
Joined: Fri Jul 13, 2018 12:24 pm

PS4444: Synchronization between channels

Post by pavital »

Hello,

Exposition Time:
I'm having a hard time making a program to sample all four channels of the PicoScope at the same time. I appear to have a small time offset between the signals recovered on each channel.

My implementation uses block mode to acquire samples. As the signals appeared completely out of sync when not using any triggers, I added a trigger on one of said channels using setSimpleTrigger, but it only seems to mitigate the issue, not resolve it, and important time-jitter can still be observed when plotting the acquired samples through my application.

Question Time:
Is there a mechanism that ensures that all channels are sampled at the exact same time ? It seems so to me considering the PicoScope application doesn't seem to have the issue I'm facing. How can I attain such synchronization ?

Thanks in advance for any help you can provide,
Pierre.

pavital
Newbie
Posts: 0
Joined: Fri Jul 13, 2018 12:24 pm

Re: PS4444: Synchronization between channels

Post by pavital »

I think I've cracked it. I didn't realize there was an API function to recover the delay between triggering and the recording of the first sample for each buffer. Implementing it right now. Cubic spline interpolation should probably do the trick from now on.

This might be a good thing to add into the Developper's Guide : I started on the assumption that the channels would be inherently synced in some way, and obtaining that sync has been harder than it should've been. Probably something like "Use getTriggerTimeOffset64() to realign your data if needed" somewhere in the normal block mode data acquisition summary would be nice. :mrgreen:

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

Re: PS4444: Synchronization between channels

Post by Martyn »

TriggerTimeOffset functionality is used to realign the data so that it can pass through the trigger point when plotted, thus preventing jitter when scrolling between buffers. This feature is used by the PicoScope 6 software and works on buffer to buffer not channel to channel data.

If this does not help to resolve your issues can you email support@picotech.com with some more detail regarding what you are seeing.
Martyn
Technical Support Manager

Post Reply