The “Git-R-Done” approach I’m thinking of could likely be tried entirely with XOD patch nodes, no writing code required. Imagine the problem in the analog domain. You have a sequence of pulses. What you want is a DC voltage encoding its average pulse width, say the pulse train has a constant positive-going amplitude of 1 volt, in the analog domain you could average a pulse sequence to a DC voltage using an RCR filter followed by a buffer, so by appropriately picking components the filter spits out say 0.02 volts DC if the average pulse width of the train is 2%, 0.03 if it’s 3%, etc. over some (probably limited) range of input widths.
You could grunge a bunch of math to find out what the resistor and capacitor values would be to do that or adjust component values in analog simulation software or on a breadboard to find them empirically.
Basically the idea is to do exactly that but digitally in XOD, just send the pulse train to the ADC, it spits out a train of numbers whatever they are, send it to the digital equivalent of that analog filter, then send that output to LCD or serial port or whatever, and empirically tweak the coefficients of the digital filter while looking at the actual pulse width on a scope until it gives you the response you want for the range of pulse widths you expect. Could probably connect a couple pots to some of the other analog inputs to tweak the digital filter parameters in real time until the readout looks good compared to what the scope shows.
I don’t know for sure this will work out but seems plausible at least…