Software Defined Radio based ground station for uplink and downlink


Our SDR Ground Station is self-contained but connected. The SDR Node GS include a NVIDIA Jetson TX2 which run a Linux based Operating System, therefore the Ground Station does not need a computer to receive telemetry or send telecommand. The SDRNode GS is a computer with a full-duplex SDR receiver and transmitter. The embedded GPU provides the required signal-processing power to handle modulation, demodulation and remote operation for multiple satellites simultaneously.


Technical specifications :

Dimensionsshort 1U 19 inch rack
Power supply88V – 264V AC | 50W
Power Over Ethernet (POE in option)45 – 57 V | IEEE 802.3 at
Frequency range70 Mhz – 6000 Mhz
ModulationsFSK, PSK, ASK…
Bandwith30 MHz
RF ouput powerMax. 0 dBm
Available interfacesGigabit Ethernet, USB 2.0, 4 digital I/O, CANbus (in option)
Data storageSSD in option

Software informations :

  • Automatic TLE download
  • Passes prediction
  • Doppler correction
  • Rotator control
  • Send telecommands with a WEB interface and/or an automatic script (in Python, HTTP API…)

Use example : WEB interface

The SDRNode GS has a WEB interface to send telecommand. This interface contains an input for the frequency, an input field for the TLE (the TLE are automatically downloaded but it is still possible to modify it manually), a map to track the satellite and a log for the day.

The ground station start the TX chain (pre-amplifier, power-amplifer…) and wait frames to send. To poweroff the TX chain, the user needs to click on the STOP button or send the command. When the user send a frame, the TX chain is already ON, therefore the frame is send immediately.

The user set the « official » frequency of the satellite, the Ground Station apply automatically the doppler compensation for every frame sent.

The user send frame per frame with the WEB interface, but using a script code he can ask at once at the station to send a list of frames. In this case, the station send the first frame, then the second, then the third…

Use example : Python script

The SDR Node GS can be used with scripts, in Python for example. This allows users to program operations on the satellites.

The script need to send a POST request with the command.

# Start the TX chain on 145.200 MHz
arguments = {'frequency': '145.2', 'start_tx' : 'true'}
command = "control"
x = requests.post(url+command, data = arguments)
print( command + ":" + x.text ) # print the command sent
# Enqueue 2 TC in the FIFO
arguments = { 'data' : '00 01 02 03 04 05 06 07 08 09 FF'}
command = "control"
x = requests.post(url+command, data = arguments)
print( command + ":" + x.text ) # print the command sent

arguments = { 'data' : '12 11 12 13 04 05 06 07 08 09 FF'}
command = "control"
x = requests.post(url+command, data = arguments)
print( command + ":" + x.text ) # print the command sent

# Stop the TX chain
arguments = { 'stop_tx' : 'true'}
command = "control"
x = requests.post(url+command, data = arguments)
print( command + ":" + x.text )

If you need more informations, contact us : www.sdrtechnologies.fr/#contact