discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Boundary alignment (follow up)


From: lannan jiang
Subject: Re: Boundary alignment (follow up)
Date: Sat, 25 Jul 2020 15:51:36 +0000

Hi Kevin,
    Thank you for your suggestions. Also I apologize for asking about this over the weekend, I think there is still a lot for me to learn at this time. 
    One more question that I have is, a lot of the examples , such as the tx_stages use protocol formatter, which I think it's at a higher level than what I am doing. I also looked at the packet header generator block in GRC, but they don't have examples of those. Do you have any specific suggestions about which block to use for header generation? 

Thanks again for your help.
Lannan
     


From: Discuss-gnuradio <discuss-gnuradio-bounces+jln925=live.com@gnu.org> on behalf of Kevin McQuiggin <mcquiggi@sfu.ca>
Sent: Saturday, July 25, 2020, 11:26
To: GNURadio Discussion List
Subject: Re: Boundary alignment (follow up)

Hi Lannan:

It’s not that hard and only takes a few blocks: I suggest sticking with it as that’ll be easier than developing your own solution, plus it’ll be compatible with others down the road. 

My own radio isn’t working yet but it is very close, so I am going to study things a bit more and get it working.  

Kevin


On Jul 24, 2020, at 8:18 PM, lannan jiang <jln925@live.com> wrote:

wHi Kevin, 
  Thank you for your response! 
  I have looked at those examples and specifically those blocks already and I have looked at the C++ API reference. But still, as you said, each block requires a lot of studying, and currently I am just trying to find an easier to prepend a known pattern at the transmitter. Perhaps I’ll go with the more complex examples eventually. 
  
  Thanks for you help anyway! 
  Best regards,
  Lannan 



On Jul 24, 2020, at 10:57 PM, Kevin McQuiggin <mcquiggi@me.com> wrote:

Hi Lannan:

I am at about the same stage as you are with packetization and am researching quite similar requirements.  I spent the last few days reading and experimenting with some success.

There are several blocks that can help you add length tags and headers to your data stream.  Look at the examples in your gnuradio installation such as

/(opt or usr)/local/share/gnuradio/examples/digital/packet 

And give the several flowgraphs there a try.  There is also good associated reading in the gnuradio manual at:


I used these materials and the principles in the example flow graphs to now having my QPSK transceiver almost running.  I expect that with a bit more effort it will be running fine early next week, as I am taking the weekend off.

The examples have stuff that you may not need like CRCs and forward error correction, but you could leave those out if you wish.  Focus on the packet length tagging and header creation, and then on the header/payload demuxing process.  

I have a loopback test flowgraph and am just working the bugs out of header and payload recovery.  It is quite detailed and the blocks need some study because, for example, some of the packet blocks want lengths of items in bits, while others want that info in bytes.  I made errors by assuming byte count when it turned out that the block wanted bit count.  Stuff like that.  You have to read about the details of each block.  

Hope this helps,

Kevin






On Jul 24, 2020, at 2:54 PM, lannan jiang <jln925@live.com> wrote:

Hi everyone,

   Two days ago I asked something about boundary alignment, and I have been trying many stuff in GRC to solve this. I am stuck on this for days and any help will be appreciated. Below is a description of what I wish to do.

  1) My transmission and receiving chain are like this: signal source -> constellation modulator -> Adalm Pluto Tx-> Antenna -> Adalm Pluto Rx -> Polyphase Clock Sync -> CMA equalizer -> Costas Loop -> decoding. As for modulation scheme, I am using QPSK.
   2)  Now I just want to transmit  one byte output from the signal source, and following with one byte of a known pattern, and then one byte output from the signal source, etc. Then at the receiver, because i already know the known pattern, I need to sync to the known pattern in order to align the bytes, which will allow me to hear clean audio at the receiver.
   3) There are three things I am looking for:
      a.  I have been looking for a SIMPLE way  to prepend a known pattern at the transmitter, and send it with the output bytes of a signal source.  Is there any block that might work to do this in GRC?
      b.  I have been trying to see if i can write an embedded python block to prepend a known pattern, but I am having a hard time trying to understand the input_items of the block, and how i can add a known pattern iteratively.
      c. If i can successfully send the known pattern with my data to the receiver, is there any easy way to parse at the receiver?

 Thank you in advance!
 Lannan








reply via email to

[Prev in Thread] Current Thread [Next in Thread]