infostellarinc / starcoder

A server to read/write data from/to the stars, written in Go.
GNU General Public License v3.0
21 stars 13 forks source link

fsk demodulator fix init #136

Closed CanoRoger closed 5 years ago

CanoRoger commented 5 years ago

FSK demodulator upgraded with newer Symbol Sync module and improved Low pass filter parameters.

Configured parameters tested for optimum GFSK 9600bps performance. Capable (but still not implemented) of different bitrate as well. Tests with passes shows +40% performance in successful received packets.

Other changes: AX25 transmitted postamble = 4 on fsk_ax25_9600_transceiver.

There are 3 modified flowgraphs: -fsk_9600: fsk_9600 -fsk_9600_ax25_transceiver: fsk_9600_ax25_transceiver -fsk_ax100: fsk_ax100

reiinakano commented 5 years ago

I have 2 questions about this:

  1. You say that variable bit rates are not yet supported. This is probably true for fsk_9600 and fsk_9600_ax25_transceiver but those flowgraphs do have a variable called "baud_rate". Are you using this variable instead of hardcoding 9600bps? In the case of fsk_ax100, variable bit rates are already supported since "baud_rate" is a parameter. Are you using this parameter?

  2. Is it correct that the set of blocks after DC Blocker form an RMS AGC? Have you experimented with the other AGC blocks built into GNU Radio? The reason I'm asking is because I've had trouble with a bug in the Divide block and non-deterministic results (see http://lists.gnu.org/archive/html/discuss-gnuradio/2018-10/msg00005.html) when I was trying to decode Spire data. Switching to one of the built-in GNURadio AGCs led to better (and deterministic) results for me, but it might not be the case for this flowgraph.

CanoRoger commented 5 years ago
  1. Yes, I am using baud_rate. I didn't realize it in the fsk_ax100. So yes, it is compatible with variable baud_rate.

  2. It is the contents of the gr-satellite's hier. RMS_AGC but converted to handle float streams. I was not aware of this issue. I remember into a early stage trying to use the other AGCs but this one seemed to perform the best. Let me test it again with this final configuration.

reiinakano commented 5 years ago
  1. It's fine if that one performs the best. Was just wondering if you tried the other AGCs
reiinakano commented 5 years ago

Let's replace those hardcoded variables with https://www.ece.uvic.ca/~ece350/grc_doc/ar01s04s02.html in a separate PR