SegDSP: Distributed Cloud Based SDR with SpyServer

Over the last few months Lucas Teske (author of the Open Satellite Project) has been working on a piece of software called "SegDSP". The idea appears to create a web GUI based SDR receiver for SpyServer streams which can be used to create a cloud of channel demodulators, essentially segmenting the DSP computation burden over multiple computers.

SpyServer is a SDR server application that is compatible with Airspy products and RTL-SDRs. It allows you to connect to these SDRs remotely over a network or internet connection. The SDR server computer sends the radio IQ data over the network allowing you to perform processing remotely. A major advantage of SpyServer compared to other SDR server applications is that it only sends the raw IQ data for the portion of the spectrum that you're interested in which can save a lot of bandwidth.

One key application that Lucas envisions for SegDSP is using it with cloud clusters of single board computers (SBC) like the Raspberry Pi 3. The philosophy is that there will be specific roles for each SBC machine. For example you might have some SDR machines running SpyServers, some processing machines for demodulating and decoding multiple channels, and a storage machine for recording data. Then you can dynamically spawn / despawn workers when needed (for example only spawning a machine when a LEO satellite with data to decode passes over).

SegDSP development is still in the early stages, and appears to only have the web GUI set up at the moment with a few demodulators. But keep an eye on his Twitter @lucasteske for updates too. Lucas also did a talk at the last CyberSpectrum meetup. His talk can be found at 1:30:00 in the recording.

SegDSP Screenshot Demodulating WBFM
SegDSP Screenshot Demodulating WBFM



  1. Jeff

    Can you further elobarate on the purpose of SEGDSP? I get you can receive spy server in a browser, instead
    of SDR#, however not sure what “…segmenting the DSP computation burden over multiple computers.” means.
    Can you provide an usage example?


    • Lucas Teske

      Yeah you can receive spyserver in browser, and / or record it to a disk or remote computer. The idea is to be able to use several spyservers with serveral workers and record various channels at the same time. Maybe in the future a better WebSDR or similar interface.

Post a comment

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

This site uses Akismet to reduce spam. Learn how your comment data is processed.