This is a simple plugin that captures periodically signal information from SDR# and sends it via UDP to other applications.
Currently, the following parameters are captured:
- Noise Floor [dbFS]
- Signal Peak [dbFS]
- Signal / Noise ratio [db]
The values are rounded to one decimal and concatenated into a string in the order shown above. The values are separated by a semicolon (';'). The string is terminated with a newline character ('\n').
The plugin allows you to adjust the update interval in steps of 50ms. In most cases you want to send a UDP broadcast of send the UDP datagram to a specific IP address.
This plugin is based on the Template provided by the SDR# SDK for Plugin Developers.
The plugin was built with Visual Studio 2022 against the .NET7 Windows x86 SDK. It has been tested with SDR# Version 1.0.0.1919.
Download the latest release and drop it into the plugin directory of your SDR# installation. The plugin will then become available with SDR#'s plugin menu.
In case you built the plugin yourself, will find the SDRSharp.UDPSignalExporter.dll
in the Release/net7.0-windows
folder.
It's easy to capture the UDP datagram for further processing. Find below a couple of examples how to capture and process the data.
You can easily capture the UDP broadcast with netcat
or socat
on any Linux / MacOS.
$ socat - udp-recv:9988
-118.4;-102.8;15.6
-118.6;-104.2;14.4
-118.6;-105.5;13.2
-118.6;-107.7;10.9
-118.8;-108.7;10.1
-118.9;-110.4;8.5
-118.8;-111.2;7.7
[...]
On Windows, execute the powershell script demo/udp-listener.ps1
PS C:\> .\listen-udp.ps1
Receive-UDP:Wait for Data on Port: 9988
Received packet from IP 192.168.1.110 : 59321
Content -100;-96.1;3.9
Receive-UDP:Wait for Data on Port: 9988
Received packet from IP 192.168.1.110 : 59321
Content -101.1;-96.8;4.3
[...]
You can find in demo/udp-listener.py an example python3 script on how to receive and further process the data.
PS C:\> python.exe udp-listener.py
Got an UDP Message from 192.168.1.110
Floor: -119.3dbFS
Peak: -117.6dbFS
S/N: 1.7db
Got an UDP Message from 192.168.1.110
Floor: -119.2dbFS
Peak: -117.5dbFS
S/N: 1.7db
Got an UDP Message from 192.168.1.110
Floor: -119.3dbFS
Peak: -117.6dbFS
S/N: 1.8db
This plugin is published under the permissive MIT License.