Hi Artur,
Thank you for your suggestions!
And yes, that’s exactly what I am doing. At the receiver, I have a
polyphase clock sync, CMA equalizer, and a costa loop to correct phase and
frequency offset.
I am using Adalm Pluto, which is looping back right now. I am able to align
the bytes manually by adding delay blocks and compare the bit streams from the
transmitter and receiver. However, I want to make the bytes align automatically.
I also have been trying to do cross-correlation to find the peak values,
but the first step for me right now is to find the byte boundary to transmit
audio.
Best regards,
Lannan
> On Jul 22, 2020, at 12:13 PM, Artur Nogueira <[email protected]> wrote:
>
> Hello Lannan,
>
> As far as I could understand, you want to do the following operations:
>
> (i) Generate bytes -> (ii) Modulate -> (iii) Transmit -> (iv) Receive -> (v)
> Demodulate -> (vi) Recover bytes
>
> and then you want to align the byte sequences from steps (i) and (vi).
> Am I correct?
> What hardware (model) are you using to transmit/receive?
>
> I've been trying to solve a similar issue lately and I am convinced that my
> signals are not aligned because of 3 main reasons: wave propagation time, GNU
> Radio processing time (latency) and carrier frequency offset (CFO).
> What I've been doing is: the two first issues are minimized by applying a
> cross-correlation operator (not necessarily in GNU Radio; you can
> post-process using another software if you want) to the transmitted and
> received base-band signals. The peak value allows you to find the lag
> between them.
> The third problem (CFO) comes from an unalignment between the transmitting
> and receiving units (I use HackRF One) and can be solved with a mixer at the
> receiver level tuned with the frequency offset value.
>
> Best regards,
> Artur
>
>
>
>
>
>
>
>
> Em qua., 22 de jul. de 2020 às 12:56, lannan jiang <[email protected]
> <mailto:[email protected]>> escreveu:
> Hi everyone,
> (It's me again.)
> I am working on an audio channel using QPSK modulation. I currently am
> transmitting through a signal source that outputs bytes. I am looking for a
> method to align the byte boundaries so I am able to hear a clean audio at the
> receiver.
> Here is an idea of what I want to do: send packets that have, for example,
> 7 bytes of data and 1 byte of known pattern, and so I can sync with the
> receive block. However, I do not know how to implement this in GRC (I see a
> block named packet header generator, is this what I want to use?). Could
> someone please advise me on how to approach this?
>
> Thanks in advance.
> Lannan Jiang
smime.p7s
Description: S/MIME cryptographic signature
