Giter Club home page Giter Club logo

Comments (4)

pabr avatar pabr commented on August 19, 2024

The open issue about self-tests is a trade-off between low SNR and higher-order MODCODS. It's hard to handle all cases equally well. Probably unrelated unless you are trying to do 32APSK.

Another test you can do is leandvbtx->file1 then file1->SDR->RF->SDR->file2 then file2->leandvbrx. This would rule out any realtime performance issue.

Can you show your command lines ? Maybe post a IQ recording of the RX side ?

from leansdr.

vankxr avatar vankxr commented on August 19, 2024

Hello,
I tried to pipe the TX IQ into a file, then transmit the file, and also to pipe the RX IQ to a file, then run the demodulator on the file data, with no success.
The command line looks like this:

sudo leandvbtx \
--s16 \
-f 3 \
--standard DVB-S2 \
--modcod 14 \
--roll-off 0.20 \
--rrc-rej 40 \
--buf-factor 2

sudo leandvb \
--u8 \
-f 960e3 \
--sr 256e3 \
--standard DVB-S2 \
--sampler linear \
--ldpc-helper ldpc_tool \
--nhelpers 6 \
--buf-factor 4 \
--gui

Here is an IQ file directly from RTL-SDR. unsigned 8 bit data, 960 kHz sample rate, 256 kSymbols/s 8PSK 3/4 DVB-S2 centered at 0Hz: https://easyupload.io/9mqtir
The resulting Transport Stream should have a bitrate of 570 kbps and should contain only one channel with a static image 640x480 pixels.

from leansdr.

pabr avatar pabr commented on August 19, 2024

Works for me with "--sr 256060" instead of "--sr 256e3". This suggests that the oscillator frequency error from your SDRs (rx+tx) is about 230 ppm, which is a lot (the default tolerance is 100 ppm). Solutions:

  • Specify --sr as above to compensate the oscillator error
  • Add "--sr-tol 300e-6" (undocumented) to increase the tolerance to 300 ppm
  • Calibrate the oscillator correction factor (hardware-specific).

Besides, I recommend "--sampler rrc" for noisy channels.

from leansdr.

vankxr avatar vankxr commented on August 19, 2024

Hello,

Indeed, my SDR had a bug in the software that controls the board clocks, and the frequency was slightly off.
I dug the code and fixed the problem, and now everything works as expected, even in real-time, without changing the tolerance.

Thank you for your help !

from leansdr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.