From c3411b88566d99693657529aaa5c945f11bdfc1a Mon Sep 17 00:00:00 2001 From: Jakob Ketterl Date: Sun, 30 Jun 2019 15:57:32 +0200 Subject: [PATCH] update readme with recent stuff --- README.md | 81 +++++++++++++++++++++++++++++++------------------------ 1 file changed, 46 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index d308c36..d505a79 100644 --- a/README.md +++ b/README.md @@ -9,38 +9,28 @@ OpenWebRX is a multi-user SDR receiver software with a web interface. It has the following features: -- csdr based demodulators (AM/FM/SSB/CW/BPSK31), +- [csdr](https://github.com/simonyiszk/csdr) based demodulators (AM/FM/SSB/CW/BPSK31), - filter passband can be set from GUI, -- waterfall display can be shifted back in time, -- it extensively uses HTML5 features like WebSocket, Web Audio API, and <canvas>, -- it works in Google Chrome, Chromium (above version 37) and Mozilla Firefox (above version 28), -- currently supports RTL-SDR, HackRF, SDRplay, AirSpy and many other devices, see the OpenWebRX Wiki, -- it has a 3D waterfall display: +- it extensively uses HTML5 features like WebSocket, Web Audio API, and Canvas +- it works in Google Chrome, Chromium and Mozilla Firefox +- currently supports RTL-SDR, HackRF, SDRplay, AirSpy +- Multiple SDR devices can be used simultaneously +- [digiham](https://github.com/jketterl/digiham) based demodularors (DMR, YSF) +- [dsd](https://github.com/f4exb/dsdcc) based demodulators (D-Star, NXDN) -![OpenWebRX 3D waterfall](http://blog.sdr.hu/images/openwebrx/screenshot-3d.gif) +**News (2019-06-30 by DD5JFK)** +- I have done some major rework on the openwebrx core, and I am planning to continue adding more features in the near future. Please check this place for updates. +- My work has not been accepted into the upstream repository, so you will need to chose between my fork and the official version. +- I have enabled the issue tracker on this project, so feel free to file bugs or suggest enhancements there! +- This version sports the following new and amazing features: + - Support of multiple SDR devices simultaneously + - Support for multiple profiles per SDR that allow the user to listen to different frequencies + - Support for digital voice decoding + - Feature detection that will disable functionality when dependencies are not available (if you're missing the digital buttons, this is probably why) +- Raspbian SD Card Images and Docker builds available (see below) +- I am currently working on the feature set for a stable release, but you are more than welcome to test development versions! -**News (2015-08-18)** -- My BSc. thesis written on OpenWebRX is available here. -- Several bugs were fixed to improve reliability and stability. -- OpenWebRX now supports compression of audio and waterfall stream, so the required network uplink bandwidth has been decreased from 2 Mbit/s to about 200 kbit/s per client! (Measured with the default settings. It is also dependent on `fft_size`.) -- OpenWebRX now uses sdr.js (*libcsdr* compiled to JavaScript) for some client-side DSP tasks. -- Receivers can now be listed on SDR.hu. -- License for OpenWebRX is now Affero GPL v3. - -**News (2016-02-14)** -- The DDC in *csdr* has been manually optimized for ARM NEON, so it runs around 3 times faster on the Raspberry Pi 2 than before. -- Also we use *ncat* instead of *rtl_mus*, and it is 3 times faster in some cases. -- OpenWebRX now supports URLs like: `http://localhost:8073/#freq=145555000,mod=usb` -- UI improvements were made, thanks to John Seamons and Gnoxter. - -**News (2017-04-04)** -- *ncat* has been replaced with a custom implementation called *nmux* due to a bug that caused regular crashes on some machines. The *nmux* tool is part of the *csdr* package. -- Most consumer SDR devices are supported via rx_tools, see the OpenWebRX Wiki on that. - -**News (2017-07-12)** -- OpenWebRX now has a BPSK31 demodulator and a 3D waterfall display. - -> When upgrading OpenWebRX, please make sure that you also upgrade *csdr*! +> When upgrading OpenWebRX, please make sure that you also upgrade *csdr* and *digiham*! ## OpenWebRX servers on SDR.hu @@ -50,12 +40,35 @@ It has the following features: ## Setup -OpenWebRX currently requires Linux and python 2.7 to run. +### Raspberry Pi SD Card Images + +Probably the quickest way to get started is to download the [latest Raspberry Pi SD Card Image](https://s3.eu-central-1.amazonaws.com/de.dd5jfk.openwebrx/2019-06-21-OpenWebRX-full.zip). It contains all the depencencies out of the box, and should work on all Raspberries up to the 3B+. + +This is based off the Raspbian Lite distribution, so [their installation instructions](https://www.raspberrypi.org/documentation/installation/installing-images/) apply. + +Please note: I have not updated this to include the Raspberry Pi 4 yet. (It seems to be impossible to build Rasbpian Buster images on x86 hardware right now. Stay tuned!) + +Once you have booted a Raspberry with the SD Card, it will appear in your network with the hostname "openwebrx", which should make it available as http://openwebrx:8073/ on most networks. This may vary depending on your specific setup. + +For Digital voice, the minimum requirement right now seems to be a Rasbperry Pi 3B+. I would like to work on optimizing this for lower specs, but at this point I am not sure how much can be done. + +### Docker Images + +For those familiar with docker, I am providing [recent builds and Releases for both x86 and arm processors on the Docker hub](https://hub.docker.com/r/jketterl/openwebrx). You can find a short introduction there. + +### Manual Installation + +OpenWebRX currently requires Linux and python 3 to run. First you will need to install the dependencies: -- libcsdr -- rtl-sdr +- [csdr](https://github.com/simonyiszk/csdr) +- [rtl-sdr](http://sdr.osmocom.org/trac/wiki/rtl-sdr) + +Optional Dependencies if you want to be able to listen do digital voice: + +- [digiham](https://github.com/jketterl/digiham) +- [dsd](https://github.com/f4exb/dsdcc) After cloning this repository and connecting an RTL-SDR dongle to your computer, you can run the server: @@ -65,7 +78,7 @@ You can now open the GUI at http://localhost:807 Please note that the server is also listening on the following ports (on localhost only): -- port 4951 for the multi-user I/Q server. +- ports 4950 to 4960 for the multi-user I/Q servers. Now the next step is to customize the parameters of your server in `config_webrx.py`. @@ -86,8 +99,6 @@ If you have any problems installing OpenWebRX, you should check out the summary).