Backend reimplementation of OpenWebRX+
This project aims to implement most of OpenWebRX+'s essential server-side functionality while keeping it compatible with owrx's frontend, custom clients, and online receiver catalogues.
Warning
While this project aims to be compatible with OpenWebRX+, it's not meant as an alternative or replacement for it. I'm not planning to implement all of owrx's features, and even the ones that I will implement may not work as well as owrx's counterparts.
If you want to host your own online SDR, please take a look at OpenWebRX+'s homepage.
This project was made just for fun, it may be unstable or not usable at all in some cases, use at your own risk.
| Icon | Meaning |
|---|---|
| ✅ | Implemented |
| ❓ | Might not be able to implement / help needed |
| ❌ | Won't implement |
The goals of this project are as follows:
- Implement the protocol used between OpenWebRX+'s frontend and backend.
- ✅ Seamlessly serve OpenWebRX+'s unmodified frontend (cloned directly from owrx's GitHub repository, found in the /htdocs directory)
- Implement basic analog modes using CSDR or GnuRadio (TBD). This includes:
- Narrow- and Wideband FM
- AM
- SSB
- CW
- RAW
- Implement UI elements, such as:
- ✅ Chat
- Client count (and limit)
- ❓ CPU usage and temperature
- Support adding bookmarks, dial frequencies, and bandplan
- ❓ Possibly integrate with GQRX/SDR++ bandplan formats
- Generate, and serve FFT data
- Allow adjusting starting receiver parameters, including waterfall levels, theme, squelch level, tuning step.
- Allow configuring multiple SDR and SDR profiles (via config files)
- RDS, either with
gr-rds(if I end up using GnuRadio), or redsea (what OpenWebRX+ uses currently) - Integration with RTL-SDR, RTL-TCP, and file sources
- Free tuning (with and without a magic key)
- Integration with receiverbook and other receiver listings
Things that may be added at some point, but generally are of low priority.
- Admin panel
- Files viewer
- Map view
- Digital modes
- There will be an attempt to include modes supported by
multimon-ng,wsjtx, + RTTY, but I might drop the idea
- There will be an attempt to include modes supported by
- Support for any SDR other than RTL-SDR
- If I use GnuRadio, any SDR supported by
gr-osmosdrmight work, but because I don't have the hardware, I can't test anything other than rtl-sdr
- If I use GnuRadio, any SDR supported by
- ADPCM compression
- This one might actually get added soon after I get FFT and audio to work, but it's not guaranteed, because I don't have much knowledge about ADPCM encoding
- Automatic spotting and reporting
- Background decoding
See any issues? Go ahead, report them here!
Pull requests are also welcome.
If you want to support my work, consider buying me a coffee!