azonenberg changed the topic of #scopehal to: libscopehal, libscopeprotocols, and glscopeclient development and testing | https://github.com/glscopeclient/scopehal-apps | Logs: https://libera.irclog.whitequark.org/scopehal
Degi_ has joined #scopehal
Degi has quit [Ping timeout: 264 seconds]
Degi_ is now known as Degi
_whitenotifier-b has joined #scopehal
<_whitenotifier-b> [scopehal] azonenberg labeled issue #635: Add IIR filter - https://github.com/glscopeclient/scopehal/issues/635
<_whitenotifier-b> [scopehal] azonenberg opened issue #635: Add IIR filter - https://github.com/glscopeclient/scopehal/issues/635
<_whitenotifier-b> [scopehal] azonenberg opened issue #636: FIR filter: support arbitrary user-supplied coefficients - https://github.com/glscopeclient/scopehal/issues/636
<_whitenotifier-b> [scopehal] azonenberg labeled issue #636: FIR filter: support arbitrary user-supplied coefficients - https://github.com/glscopeclient/scopehal/issues/636
<_whitenotifier-b> [scopehal] azonenberg labeled issue #637: FIR filter: support common communications channel filters - https://github.com/glscopeclient/scopehal/issues/637
<_whitenotifier-b> [scopehal] azonenberg opened issue #637: FIR filter: support common communications channel filters - https://github.com/glscopeclient/scopehal/issues/637
<azonenberg> oook so, i'm doing an experiment here
<azonenberg> i want to try and debug two scopes with a third scope :p
<monochroma> :o
<azonenberg> what's bugging me is that the lecroy scopes have the ability to output either "trigger armed" or "trigger occurred" from a single aux output
<azonenberg> but there is no way to see both at once
<azonenberg> which is really what i want
<azonenberg> i suspect there is a race condition in multi-scope where it's possible to arm the trigger on the primary before the secondary has fully armed, leading to missed trigger events
<azonenberg> but actually reproducing this in a lab environment and fixing it is hard
<azonenberg> for extra fun i might try and sniff the actual ethernet traffic to the scope
<azonenberg> to detect the "arm" command
<azonenberg> and measure latency from packet to arm signal going high
<azonenberg> that would be a very meta-debug project :p
<azonenberg> anyway right now i am fighting the picoscope driver giving weird errors sayin ga channel isn't enabled when it obviously is
<_whitenotifier-b> [scopehal-pico-bridge] azonenberg pushed 1 commit to master [+0/-0/±1] https://github.com/glscopeclient/scopehal-pico-bridge/compare/7b53a9cb8db4...2e7d83af17e0
<_whitenotifier-b> [scopehal-pico-bridge] azonenberg 2e7d83a - PicoSCPIServer: fixed bug calculating timebase values for low sample rates (125.25 Msps and below)
<_whitenotifier-b> [scopehal] azonenberg pushed 2 commits to master [+2/-2/±7] https://github.com/glscopeclient/scopehal/compare/fe63744cc6f2...7d5969bf1c06
<_whitenotifier-b> [scopehal] azonenberg 6e7c72e - Refactoring: renamed Ethernet100BaseTDecoder to Ethernet100BaseTXDecoder
<_whitenotifier-b> [scopehal] azonenberg 7d5969b - Ethernet100BaseTXDecoder: now use CDR PLL rather than assuming exact 125.000 Mbps signaling rate
<Degi> How do you synchronously arm two scopes anyways? Synchronize their clocks and time and then send an arm command which says "arm at precisely this time"?
<d1b2> <Darius> you would need something like that
<d1b2> <Darius> no idea how well supported it is
<Degi> Like otherwise it would only work with slow signals... Or a trigger output from the main scope to the other scopes would work too, if you compensate for its length
<Degi> (But then only one scope would be armed)
<d1b2> <Darius> also if you can control when the event happens you can setup the trigger, wait for an ack from each 'scope then cause the event
<Degi> Tru
<azonenberg> Yeah it's lock step
<azonenberg> You have one primary scope that serves as the trigger reference to the others
<azonenberg> and one or more secondaries who have aux trig connected to trig out from the primary
<azonenberg> you arm all the secondaries, wait for them to confirm they're armed
<azonenberg> then arm the primary
<azonenberg> and whenever the primary triggers the secondaries should all trigger too
<azonenberg> then you calibrate out the propagation delay of the cable and trigger subsystem so the same point in time shows up at the correct offset in each capture
<azonenberg> we've had support for this for years but it's been unreliable, i'm trying to make it rock solid and then improve the gui to make it easier to use
<azonenberg> vs having to specify two scopes on the command line at startup
<Degi> Nice
<azonenberg> there's a lot of rough edges i have to figure out, like timestamping of waveforms when there is clock skew between the RTCs on the scopes
<azonenberg> so my plan is to, after i've calibrated out the *actual* skew between their triggers
<azonenberg> go in and edit the waveform timestamp header of each secondary
<azonenberg> knowing the true offset from the primary
<azonenberg> and patch the timestamp to be consistent to the femtosecond with the primary allowing for the calibrated offset
<azonenberg> The other thing i need to do is support an explicit delay between the triggers
<azonenberg> right now everything assumes once the calibration is done you don't touch anything and the two scopes trigger essentially simultaneously
<azonenberg> but i recently had a project for work where it would be nice to record one channel of data then a long time - tens or hundreds of ms later - record another
<azonenberg> with a constant, known skew
<_whitenotifier-b> [scopehal] azonenberg opened issue #638: PCIe: decode gen 1/2 link training - https://github.com/glscopeclient/scopehal/issues/638
<_whitenotifier-b> [scopehal] azonenberg labeled issue #638: PCIe: decode gen 1/2 link training - https://github.com/glscopeclient/scopehal/issues/638
<_whitenotifier-b> [scopehal-docs] azonenberg pushed 1 commit to master [+0/-0/±1] https://github.com/glscopeclient/scopehal-docs/compare/60bb58f46871...9feab7866984
<_whitenotifier-b> [scopehal-docs] azonenberg 9feab78 - Initial skeleton documentation for TCP decode
<_whitenotifier-b> [scopehal] azonenberg pushed 1 commit to master [+2/-0/±3] https://github.com/glscopeclient/scopehal/compare/7d5969bf1c06...968bfeaee237
<_whitenotifier-b> [scopehal] azonenberg 968bfea - Initial implementation of TCP protocol decode. No protocol analyzer integration yet. Doesn't do any stream processing or reassembly, just decodes segment fields.