jgaeddert / liquid-dsp

digital signal processing library for software-defined radios
http://liquidsdr.org
MIT License
1.9k stars 442 forks source link

DSSS, longer p/n sequence #190

Open vladkoliesnik opened 4 years ago

vladkoliesnik commented 4 years ago

Hi, DSSS implementation is great, but what about using more longer p/n sequence than 2^7? Is it possible with this library? I want to see difference between 127, 511, 1023 and longer p/n sequence. I am already done test dsssgensync/gen with LimeSDR and want to move forward.

So, its possible without ruining your lib? =) Thank you!

brian-armstrong commented 3 years ago

This is likely possible but not just by changing a single constant. The polynomial is controlled here https://github.com/jgaeddert/liquid-dsp/blob/master/src/framing/src/dsssframegen.c#L129

You would have to change both dsssframegen.c and dsssframesync.c and then change all those 64s to be 2^(n-1)s. It'd take a bit of patience but should be doable.

brian-armstrong commented 3 years ago

Also, the preamble of the frame uses a different polynomial so that it can be distinctly detected separately from the rest of the payload. You would likely want to change it as well. https://github.com/jgaeddert/liquid-dsp/blob/master/src/framing/src/dsssframegen.c#L121