On Thu, Aug 25, 2022 at 1:55 PM James Wanga <jwa...@gmail.com> wrote:
> I'm receiving a phase modulated signal representing a periodic pulsed byte > that looks something like this: > > > -------------|-|||--||-------------|||--||||-------------|--||||-|------------- > > I'm trying to understand how I might split this signal roughly halfway > between each pulse of activity so I can save each pulse as a separate IQ > fil, bit like this: > > ------|-|||--||------ > > -------|||--||||------- > > ------|--||||-|------ > > The split does not have to be precise, it only needs to avoid bisecting > any of the pulses. Here are some things I've tried.- Creating a custom > block on the receiver that uses a timing interval. Unfortunately, the > pulses aren't perfectly periodic so eventually this causes the split to > drift. > > - Since I also control the transmitter, I tried sending an async pmt > message from the transmitter to the receiver, but again, since the message > is async the timing is too unpredictable to make an accurate enough cut. > > - I was also wondering if there is any way to propagate a tag from a > transmitter to a receiver if both are in the same flow graph, but I > couldn't find any info on how to do this. > > Any Ideas? Thanks! > I was looking at a bursty signal in the ISM band that I wanted to save and came up with the attached flowgraph. The key is the "Burst Tagger" block and the creation of the trigger utilizing the magnitude of the incoming signal. I utilize two "Threshold" blocks - one on the magnitude itself which should rise pretty quickly, and one based on a filtered version of the magnitude which falls slower. Both of those are OR'd together to create the trigger and saved with the "Tagged File Sink". GRC and PDF screen capture both attached. Hope this helps. Brian
burst_saver.grc
Description: Binary data
burst_saver.pdf
Description: Adobe PDF document