Posts by SWL - markro92

    SWL-thorens : i fixed some issues with the FFT plot,could be resolved in the next version. Could i have your test file? maybe truncate it to a few seconds of data.


    I support Pilots on/off and also dummy frames.


    Edit: Okay, found a major bug looking at the code, i'm dividing the floats by 32768, instead of multiplying with 32768. should be easy to fix. now you know the workaround :D I actually didn't test the F32 stuff, but you could also use signed 16bit.

    @on7kec: I think i'll update the sdrplay library and some others in the upcoming release. Some of them are too old. But if the API didn't change too much, your suggestion helps. If they change it too much, the Demod GUI would crash, so i should keep them up do date more often anyway.

    Hi Tony,

    http://v.1337team.tk/dvb-s_gui_amsat.zip

    ^ There, as always.


    I forgot to write a post for it, because the forum didn't let me post messages a few weeks ago.

    There were only minor changes anyway.

    At the moment i'm working on a bigger release (v2.1) which i plan to release mid December.

    Right now i do changes to the demodulator, and a partial rewrite of the whole codebase.


    Main features will be:

    - Receiving multiple transponders at once

    - Scanning a frequency range for transponders and detecting settings automatically

    - Saving common transponder locations and grouping them

    - 16APSK and 32APSK support

    - Displaying the Signal to Noise Ratio

    - Increasing performance by supporting AVX for some of the worker threads.

    - Linux Release (probably Debian or ArchLinux)


    Optional Features:

    - OpenCL support, mainly for offloading LDPC decoding to the GPU.

    - Port to Raspberry PI 4

    Hallo Ulrich,

    Im Recording / Network Panel befinden sich unter dem Dialog zum Aufnehmen auch EIngabefelder für IP/Port und das Protokoll.

    Standardeinstellung ist 127.0.0.1, Port 8888, Protokoll ist TCP. Im VLC Player wäre die entsprechende URL dann tcp://127.0.0.1:8888.

    Für das UDP Protokoll wäre das dann udp://@:8888


    Gruß,

    Marcel


    Edit: Ich sehe gerade, dass Sie version 2.0.15 nutzen, da gab es glaube ich nur die UDP option. Ansonsten, Version 2.0.21 ist die aktuelle.

    DL3DCW: There is a config option to specify PlutoSDR Network devices.


    readme.txt:

    # iio_net_contexts: IP addresses of PlutoSDR devices.

    # Multiple devices can be specified as a space-

    # separated list.


    In the config.ini file the corresponding line looks like this:

    iio_net_contexts = 192.168.2.1


    edit: i haven't tested this in a while, but it should still work. I'll check.

    Hi, there are a few things, maybe there is an error calculating filter coefficients, can you change the symbolrate slightly? maybe to 29501?

    This is clearly a problem with timing recovery or earlier stages than that. Can you also try to increase the input gain? it seems very low. The FFT should atleast be yellow-ish. btw, there is no frequency offset info, but that's not the problem here. I did a lot of optimizations to reduce CPU load, i could give you a new version tomorrow. But don't expect too many new features yet.

    Works for me :)

    Tested with 'Antenne Düsseldorf' TP on Astra 3B @ 23,5°E.

    FEC 7/8


    Well the thing is, DVB-S1 is horrible to use at the moment, because it's kinda unclear.

    Version 2.0.21 will finally have blindscan, but until then:

    Set the FEC, and then click on "DVB-S1 Symbol Skip", and combine that with rotating the constellation with the Derotate slider. There is only one combination that works. SO you basically click a few times onto the skip button, if it doesn't work, rotate the constellation 90 degrees and skip symbols again until it works. In that case the sync_confidence value will go up and stay high without flickering.

    Ok, very good :) nice CPU. Maybe i should upgrade, too. Still have a good old Haswell CPU (5820K).

    In this case, i really think 30MSym/s should also be doable. Thanks for the feedback :)

    Which SDR are you using by the way?

    Edit: Intel says you have a Mobile CPU? is that true? I feel my PC is running on a potato right now :D

    Hi, for performance reasons, you could try to reduce the number of RRC taps to 32, and disable the update of CMA coefficients. That's the Update coeff. checkbox on the right. Can you show me the statistics view? Click on Debug -> Debug Worker Stats.

    Glad it seems to work. how fast do buffers fill on the bottom right of the window? which CPU model are you using?

    Looks promising :)

    You can save the output by clicking on the 'File' button in the 'Network / Network' section. It will ask you for a location and filename.

    Alternatively, streaming is right below that. UDP / TCP are supported. VLC URLs are for example for UDP: udp://@:8888 or for TCP: tcp://127.0.0.1:8888

    Hi, you can do that yourself in the config file. There is a setting called 'sr_max'. You can also edit the presets there.

    However, right now even 10MSym/s is ambitious. I've received tv feeds with 9600ksym/s before. It works with high SNR, otherwise demodulating and LDPC decoding takes too long. I'm partially rewriting the demodulator at the moment. There is a lot of potential when it comes to optimizations, but 30MSym/s seems out of reach for a software-only solution (I'm not saying it's impossible). By the way, thanks for your kind words :)

    M1CTK: do you have an AMD CPU and is is crashing?

    It should run on AMD CPUs, but i'm not able to test it. I'm only using instruction sets at the moment supported by both CPU families.

    Can you give ne a screenshot of your titlebar if the program starts up? otherwise Download CPU-Z and give me a screenshot of the first window, where CPU Name and Feature Flags are displayed. It should support up to SSE4.1. Of course i also want people with recent AMD chips to run this.

    Ok, sorry for not finding the issue earlier, i'll look into it. There are a few spots in the code that i could have overlooked. Is it just the FFT display? The actual reception should work if you rightclick and try to find the transponder by accident while only using the IQ plot. Not sure if you know what i mean. FFT is bugged, rest should work as is. I'm sure that i fixed the calculation of filter coefficients, so reception should be fine regardless.

    You are correct with 4295MHz. To be exact, the maximum frequency seems to be 2^32-1 (two to the power of 32), which is 4294967295Hz.

    @Iz5tep: maybe. The modulation is quite different, though.


    Actually, the roadmap is as follows:

    1. complete the demod gui, which is roughly:

    1.1 Making the demodulator more robust

    1.2 Adding 16APSK and 32APSK modcodes.

    1.3 Support for receiving multiple transponders at once

    1.4 Adding TX capability with LimeSDR Mini and PlutoSDR, so that it can also be used as a modulator.

    2. Creating a PCB Layout and implementing the Demodulator in VHDL. Will be running on a FPGA with USB and Ethernet interfaces.

    It will also have a step-up converter to power the LNB (LNBH-29), mixer is MAX2121 (need to find out if i can tune lower than 10700MHz), and some ADC from Linear Devices (something around 100MHz with 10bit resolution)

    3. Implementing more Standards, like DVB-S2x and DVB-T/T2

    Version 2.0.20

    Download: http://v.1337team.tk/dvb-s_gui_amsat.zip


    Changelog:

    • Support for input frequencies up to 6GHz and theoretically more.
    • The resample worker thread now completely uses fixed point math.
    • Removed the checkbox for DC correction, it's now always enabled.
    • Removed M&M timing estimator, Gardner algorithm works better anyway.
    • Added 2x upsampling before downsampling due to the Gardner algorithm requiring 2 samples per symbol minimum.
    • Added TCP input device for streaming samples over the network. For example, you could connect to a GnuRadio TCP Server Sink.
    • Added support for dummy frames to the demodulator.
    • Added experimental support for generic stream encapsulation to the demodulator (only continuous stream).
    • Fixed crash when recording files larger than 1GiB.


    Known bug: Closing the TCP output connection causes a crash when recording generic streams.


    The only Transponder that i could find and which is currently supported is the NRK DAB Mux on Intelsat 10-02 - Thor 5/6/7 @ 1° West.


    10720 V
    DVB-S2/8PSK
    Multi 171
    5400 3/4 DAB NRK

    Support for Generic streams is not complete this feature needs more work. But when you are recording to a file, there should be IPv4 packets inside. There will be a possibility in future versions to filter Multiple Input Streams.



    Marcel

    Hi, i'm planning on releasing a new version next weekend. Main improvements will be:

    - Raw sample input via TCP to be able to support GnuRadio sinks or sample input from other network devices

    - Upsampling before downsampling to get rid of the M&M Timing Estimator, only using the Gardner algorithm

    - Support for DVB-S2 Dummy Frames

    - Support for Generic Stream Encapsulation (for instance radio stations put into ethernet frames and extracting network traffic)

    - Automatic selection of filter parameters (rolloff factor)

    Hi, i just updated the binary, please re-download.

    The build date is Jul 4 2020 13:19:24.

    SDRPlay works fine for me, but i noticed that i commented out the

    code writing the number of LDPC iterations to the console window

    which could be very confusing :D i was about to implement an alternative

    solution and forgot to re-add it for the release. Sorry for the inconvinience.

    Version 2.0.19

    Download: http://v.1337team.tk/dvb-s_gui_amsat.zip


    Changelog:

    • Fixed frequency slider input not working above 2147MHz.
    • Fixed off-by-one error in SDT (Service Descriptor Table) parsing code.

    Edit: The next update will probably be missing the dropdown box for the rolloff factor,

    further simplifying the UI.

    The rolloff factor for DVB-S1 is always 0.35.

    For DVB-S2 it's transmittd inside the BBHEADER after successful LDPC decoding.

    Second thing is interpolation before decimation, which means i can also get rid of the M&M Timing estimator, only using Gardner.

    Number three on the roadmap is changing the demapper, so that it's using a lookup table for determining the likelihood ratio for every bit of the constellation, which will be fed to the LDPC decoder. Currently i'm doing that by rotating the constellation and using I and Q values directly.

    The new approach will also simplify 16APSK and 32APSK demodulation which is hopefully working until then. I also started working on a hardware solution. I'm currently doing a prototype PCB layout which can be plugged onto an existing FPGA board (Numato Neso with an Artix7 FPGA). I'm planning to use a MAX2121 as mixer IC. I'll open a new forum thread for that when i have more to show.


    Marcel

    Hi, i've read your posts and i probably already know the solution for the problem. I've used signed 32-bit integers somewhere in my code. So the maximum value should be 2^31 - 1, which is 2147483647 Hz, which corresponds to about 2147MHz. I'll quickly release another version with a possible fix.