Difference between revisions of "Broadcastify Raspberry Pi Image"
From The RadioReference Wiki
Line 55: | Line 55: | ||
== Trunk Recorder Configuration == | == Trunk Recorder Configuration == | ||
− | ==== | + | ==== Determining RTL-SDR PPM Value ==== |
+ | If you are using an RTL-SDR stick with trunk recorder, | ||
+ | |||
+ | ==== Multiple Airspy Support ==== | ||
Trunk Recorder is compiled with multiple AirSpy support on the image. | Trunk Recorder is compiled with multiple AirSpy support on the image. | ||
Line 65: | Line 68: | ||
pi@bcfy-xxxxxx:~ $ airspy_info | pi@bcfy-xxxxxx:~ $ airspy_info | ||
− | |||
airspy_lib_version: 1.0.9 | airspy_lib_version: 1.0.9 | ||
Revision as of 15:38, 18 April 2021
The Broadcastify Raspberry Pi Image comes preinstalled with the following software:
- Darkice - Audio Streamer for Broadcastify Feeds
- Trunk Recorder - SDR Trunked Radio Capture Software for Broadcastify Calls
- RTLSDR-Airband - SDR Capture and Broadcastify Feed Software for AM Aircraft
- VoxCall - Broadcastify Calls Audio Capture Software
- BCFY Shell - Management shell for configuration, management, and update of Broadcastify Feed Services
The appliance also features preinstalled and configured utilities for SDR Software, including RTL-SDR, Airspy, and HackRF utilities.
For downloads and basic installation instructions see:
Contents
Installation and Configuration Videos
- Broadcastify Image Setup - (Step by Step Guide by Joey Absi)
Darkice Feed Configuration
Darkice is easily configured and managed using the BCFY Shell.
Configuring Broadcast Volume
- Plug your scanner's headphone jack into the mic jack on the USB sound card dongle
- Open a shell and start alsamixer
alsamixer
- press F6, choose the "USB Headphone Set" entry
- press your tab key to select the "Capture" device volume control
- use your "up arrow" key to adjust the level to it's lowest level possible (6)
- press escape to exist alsamixer
- run the following command to save the volume settings
sudo alsactl store
Troubleshoot clicking sound in the audio stream
If your stream has a clicking sound when there is no audio, you may be able to eliminate it by turning off Auto Gain Control.
- Open a shell and start alsamixer
alsamixer
- Press F6 and select your audio device
- Press Tab to select "Auto Gain Control"
- Press the "m" key to toggle it off
- Press Escape key to exit alsamixer
- Save your settings with the following command
sudo alsactl store
Trunk Recorder Configuration
Determining RTL-SDR PPM Value
If you are using an RTL-SDR stick with trunk recorder,
Multiple Airspy Support
Trunk Recorder is compiled with multiple AirSpy support on the image.
If you are using an AirSpy SDR, you must specify the serial number of your AirSpy device(s) in your trunk recorder config with the following syntax
"device": "airspy=0xABCDEFABCDEF01"
You can determine your AirSpy Serial Number by executing the "airspy_info" command at a shell prompt:
pi@bcfy-xxxxxx:~ $ airspy_info airspy_lib_version: 1.0.9 Found AirSpy board 1 Board ID Number: 0 (AIRSPY) Firmware Version: AirSpy MINI v1.0.0-rc10-0-g946184a 2016-09-19 Part ID Number: 0x6906002B 0x00000030 Serial Number: 0xABCDEFABCDEF01989 Supported sample rates: 6.000000 MSPS 3.000000 MSPS Close board 1
Log File
The Trunk Recorder log file is located at
/home/pi/bcfy/logs/trunk-recorder.log
The log file is rotated daily. If you want to watch calls uploaded to Broadcastify Calls in real time, execute the following command at a shell prompt.
tail -f /home/pi/bcfy/logs/trunk-recorder.log
RTLSDR-Airband Configuration
To edit the config file for RTLSDR-Airband enter this command:
sudo nano /usr/local/etc/rtl_airband.conf
and paste the following into the editor
# This is a minimalistic configuration file for RTLSDR-Airband. # More complex configurations are possible. # Refer to https://github.com/szpajder/RTLSDR-Airband/wiki # for description of keywords and config syntax. # Just a single RTL dongle with one FM channel # sent to a single Broadcastify stream. # Note that the center freq is 100 KHz offset from the receive freq # Also, you must enter your server number, stream name, mountpoint and # password from your Broadcastify stream "Technicals" devices: ({ type = "rtlsdr"; index = 0; gain = 25; # This may need adjustment depending on your hardware centerfreq = 153.87; correction = 0; # this can be determined using "cumulative" output from running 'rtl_test -p' for several minutes channels: ( { freq = 153.77; modulation = "nfm"; highpass = 320; outputs: ( { type = "icecast"; server = "audio#.broadcastify.com"; port = 80; mountpoint = "MOUNTPOINT"; # Note: Do not include a leading slash "/" name = "Fire Dispatch"; genre = "Fire"; username = "source"; password = "PASSWORD"; } ); } ); });
Run
It’s time to test. RTLSDR-Airband must run as root in order to have access to the GPU hardware.
sudo /usr/local/bin/rtl_airband -f
You should see a readout of numbers. The numbers should be larger when a signal is detected. Check your Broadcastify stream to see if the feed is streaming live. Once you confirmed everything is working, kill the program with CTRL+C.
Create a service
Now you will want RTLSDR-Airband to run on startup of the Pi as well as restart if there are any errors or crashes over time (bound to happen eventually). Navigate to your systemd startup script folder and create the following serivce file:
cd /etc/systemd/system/rtl_airband.service sudo nano rtl_airband.service
Paste the following into this file:
[Unit] Description=SDR AM/NFM demodulator Documentation=https://github.com/szpajder/RTLSDR-Airband/wiki Wants=network.target After=network.target [Service] Type=simple ExecStart=/usr/local/bin/rtl_airband -Fe # The program may exit only due to startup failure (eg. misconfiguration) # or due to failure of all SDR devices (eg. disconnection). In either case, # there is no point to restart it, because it would fail once again. Restart=Restart=no RestartSec=5s [Install] WantedBy=multi-user.target
Save (ctrl+x and y) and then run these commands to activate the service:
sudo chown root.root /etc/systemd/system/rtl_airband.service sudo systemctl daemon-reload sudo systemctl enable rtl_airband
Now to run it, you simply need to type
sudo systemctl start rtl_airband
or just reboot the Pi!
More info, expansion and troubleshooting
Much of this information I gleaned from this very helpful tutorial: https://viatorci.com/posts/rtlsdr-police-scanner/#install-rtlsdr-airband There are so many more possibilities with this setup and you can scan, receive multiple channels within the rtl-sdr's bandpass and a multitude of other things. This page is intended to get you streaming quickly and is not intended to address all of those scenarios.