< back to RasPi Projects

N5DUX Raspberry Pi WebSDR Receiver Project


Description

I created my first Raspberry Pi WebSDR receiver in the Fall 2014. I had long intended to setup a WebSDR station, but grad school and work can really keep you busy. The first receiver on the air worked well until a suprise electrical storm popped up while I was away at work and fried my poor little SoftRock. A replacement kit was ordered, built and on the air in less than a week.
I hope the wider ham community enjoys listening to my little WebSDR receiver or that it inspires others to build their own. I have also built a Raspberry Pi APRS iGate for the ISS and I'm working on a 20m WebSDR receiver as well as an amateur radio satellite tracker. Click here for a list of my other amateur radio related Raspberry Pi projects.

You can listen to this WebSDR here: http://n5dux.2y.net

Parts Used

My 40m WebSDR receiver hardware consists of:

Software

Perhaps the most asked question other than what sound card I'm using (see above) is how to get the drivers for the Wolfson to work. After several nights of trying to cross compile the drivers for my Pi's kernel, I decided to use the "official" Wolfson OS image. To initiate the Wolfson sound card and launch WebSDR, I created the following script:
#runWebSDR.sh - N5DUX, 2014
#!/bin/bash

#Record from onboard Line Input to AP
# +9dB input PGA gain
amixer -Dhw:0 cset name='IN3L Volume' 8
amixer -Dhw:0 cset name='IN3R Volume' 8

# better THD in normal mode vs lower noise floor in high performance
amixer -Dhw:0 cset name='IN3 High Performance Switch' on

cd /home/pi/dist11/
sudo ./websdr-rpi

Networking

My shack is detached from my house and I do not (at present) have wired network capability in the shack. Consequently I have my Pi connected to my home cable internet connection via wireless. My home router passes webtraffic to the Pi. I use DynDNS to give me a domain name that is easy to remember (n5dux.2y.net). When my ISP changes my IP address, the router informs DynDNS of the switch and traffic is directed to my new ISP.
At present, I have the Raspberry Pi WebSDR client restricted to 4 concurrent users. The reason for this is two-fold. 1) Not to overload the scarce system resources of a Raspi 2) Not overload my internet connection upload to the point I can no longer watch movies, play games or use my internet connection for my every day silliness and nonsense.

Future Expansion/Refinement

I hope to tweak/modify my setup in the future. A couple ideas I have:

Presentation

Here is the PowerPoint presentation I used when I presenting this project at HamCom 2015 and the Shreveport Hamfest 2015.
  • RaspiWebSDR.pptx

    About me

    I am an ARRL ETP instructor for the ARRL Teachers' Institute and an Instructional Designer and faculty at LeTourneau University, W5LET, in Longview, TX. I am also a doctoral candidate from the University of Texas at Brownsville. My current research interests include epistemology and the efficacy of education technology.
    I became an ARRL Life Member at the ARRL Centinnial Convention in Hartford, CT, in 2014. Here is my QRZ page. In addition to amateur radio and electronics tinkering, I enjoy webscripting and computer gaming.


    For more amateur radio related Raspberry Pi projects, visit the main project page: http://n5dux.com/ham/raspberrypi/
    © 2017, N5DUX