I have a Picoscope 5444B. In my application, the trigger is a digital latch (several seconds long) on EXT. In early testing, it worked fine to use a simple rising edge trigger. However I'm now in an environment where I am getting occasional bursts of noise pickup on that line that are causing spurious triggers. The noise bursts last for a few microseconds. So I would like to trigger on a pulse that rises above threshold and remains above threshold for ~1 ms, but NOT on the falling edge of such a pulse.
I can't quite figure out how to do this with the ps5000a API. Do I need to set both a trigger threshold (SetTriggerChannel*) and pulse width qualifier? Or just the latter?
Advanced trigger setup using the API commands is a bit of a dark art.
The easiest way to go about this is to first try setting up the trigger using the PicoScope 6 software, and if you are able to trigger on the event exactly as you require we can then work out the settings required for the advanced trigger commands.
1) In the current picoscope GUI on linux, I cannot get a dropout trigger to work on EXT. If I put my signal into e.g. channel A with all the same settings, the trigger works as expected, but when I move back to EXT, I get no triggers. Is this a bug?
2) Is there an example for how to set a dropout trigger using the API? The programmer's manual mentions it in the Trigger introduction, but never again.
When I call ps5000aSetTriggerChannelPropertiesV2 with PS5000A_PULSE_WIDTH_SOURCE as the channel, I get error 0x10, invalid channel. But the documentation of PS5000A_CHANNEL enum in the programmer's guide has an asterisk by PS5000A_PULSE_WIDTH_SOURCE that says "For use as a trigger source by functions such as ps5000aSetTriggerChannelPropertiesV2".
Please provide some working examples of advanced trigger setup. The C examples on github do not meet this need as the pulse width qualifier settings are always disabled.