A Guide for Creating a 6-Band RBN Receiver and I/Q Recorder Using a Red Pitaya
Part 1: Major Equipment
An active broadband receive antenna is a suitable choice for a modest multi-band RBN receive station. Ideally, this antenna should be able to receive between 1.5-30 MHz and be omni-directional.
- The DX Engineering ARAV3-1P is a suitable commercially available active antenna. ARAV3-1P instructions are available as a PDF on the DX Engineering website. This is the antenna we used for our testing.
A multiband RBN receiver is a HF software defined radio that is capable of listening to multiple bands simultaneously. There are very few reasonably priced receivers with this capability currently available. Some recommendations are listed below.
- Red Pitaya STEMLab
- We recommend the Red Pitaya because as of this writing (June 6, 2017) it is the only receiver we are aware of that is capable of simultaneous multiband skimming that is readily available for purchase under $500.
- The Red Pitaya is a development board geared to education and hobbyists, but can also act as a 6-band HF software defined radio with the correct software. Mouser.com is the US-based distributor for Red Pitaya.
- We recommend purchasing the STEMLab 125-14 Starter Kit with an appropriate case.
- The 10-bit version of the Red Pitaya (STEMLab 125-10) can also serve as a satisfactory skimmer, but it will have less of a dynamic range than the 14-bit version.
Recommended Receivers with Limited Availability:
- Rabbit S9-C SDR. This Chinese Receiver is reasonably priced and performs well. Here are the installation page and manual. The software page also contains the S9-C USB driver, .DLL file for HDSDR, and the .DLL file for CW & RTTY Skimmer.
- QuickSilver QS1R. This has been the staple receiver of the RBN network, but is currently unavailable. It might be possible to obtain one second hand. A separate guide is available for setting up an RBN node using this receiver.
- While more likely to be used on the air, most FlexRadio SDRs can be used to skim one or more bands. See this guide for details. We urge Flex users who won't be operating the contest to run their radios as skimmers instead.
Dai Nagakura, JF2IWL, has performed a comparison of the Red Pitaya, Rabbit S9-C, and QuickSilver QS1R receivers as RBN Skimmers. He concludes that all three radios perform well as multiband skimmers if installed properly.
In certain cases, a preamplifier may be needed to improve the performance of the receiver. The typical advice is not to use one unless you have data showing it would be useful. Otherwise it just reduces the dynamic range of the system and does more harm than good, especially if there is a transmitter nearby like most ham stations. An easy and valid test is to listen and connect the antenna. If you hear any increase in noise with the antenna conected, you have plenty of gain already. The need for a preamplifier can vary as a function of band.
To check the RF noise level with the Red Pitaya, use the HamLAB PowerSDR software. This will let you use the Red Pitaya as standard software defined radio and listen to and see the RF spectrum anywhere in the Red Pitaya's operating range (0-62.5 MHz). Note that you can have up to two antennas attached to a single Red Pitaya, and assign each slice receiver to a particular antenna.
Note that the NJIT/K2MMF-2 RBN node appears to be providing satisfactory results with only an ARAV3-1P antenna connected directly to the Red Pitaya with no additional preamplifiers or modifications. Further testing will be done in the future to see if a preamplifier is really needed in this configuration.
Recommended Premplifier Options:
Front End Protection
When installing the RBN Receiver, it is important to make sure that your transmit operations do not damage your RBN receiver, especially the pre-amplifiers. This can be done by:
- ensuring adequate separation between transmit and receive antennas
- using a timing device to disable the preamps during transmission.
- use of an RF Limiting device such as the DX Engineering Receiver Guard Electronic RF Limiters DXE-RG-5000
Also, active antenna and preamp instructions manuals should provide good guidance with this.
Part 2: Installing a Red Pitaya 125-14 RBN Node
Red Pitaya Preparation
- Reconfigure attenuation jumpers.
- The Red Pitaya inputs are shipped from the factory to place a Low Voltage attenuator immediately after the SMA inputs. This attenuation circuit is a source of noise, and can be bypassed by jumpering pins 2 & 5 as in the photo below. Do this for each input you intend to use as an antenna. See K1TTT's blog for more information.
- Install the image of Pavel Demin’s SDR Receiver.
- Use a computer to extract the contents of Pavel Demin’s SDR Receiver zip image to a blank microSD card.
- Insert the SD card into the Red Pitaya while the power is disconnected.
- Connect the Red Pitaya to the network, the antenna, and power.
- Connect the antenna to the SMA input labeled IN1. For the previously mentioned ARAV-3, you will need an RCA to SMA adapter to connect to the Feedline Voltage Injector directly to the Red Pitaya.
- Connect the Ethernet cable to your Red Pitaya and then to your router, switch, etc. Note that the Red Pitaya needs to be provided an IP address. This is typically done by a router on the same subnet as your computer. Connecting the Red Pitaya directly to your computer is generally not sufficient.
- Plug in the power supply from the outlet to the port labeled PWR.
Figure 1: Annotate photo of the Red Pitaya STEMLab 125-14.
CW Skimmer Server Installation
- Download and install the CW Skimmer and CW Skimmer Server.
- Purchase and register the CW Skimmer and Skimmer Server. The programs will run for 30 days as a free trial. To purchase, launch the CW Skimmer and select Help → Buy Now. Keep in mind that once the CW Skimmer has been registered, the Skimmer Server will also be registered.
Figure 2: "Buy Now..." option of the CW Skimmer program. Note that when you register CW Skimmer, CW Skimmer Server is also automatically registered.
- Copy HermesIntf.dll to the skimmer server program directory, located here: “C:\Program Files (x86)\Afreet\SkimSrv\HermesIntf.dll”
- Launch the CW Skimmer Server. The program will automatically minimize to your tray, rather than opening a window. Click on the icon in the tray to open the window. The Skimmer Server should automatically locate your Red Pitaya if it is properly connected to the network; no extra configuration required. The one thing you will have to set is which bands you would like to be skimming so they will properly report your location on the Reverse Beacon Network.
Figure 3: Status tab of CW Skimmer Server Settings.
Figure 4: Operator tab of CW Skimmer Server Settings.
Figure 5: Skimmer tab of CW Skimmer Server Settings.
Figure 6: Telnet tab of CW Skimmer Server Settings.
RBN Aggregator Installation
- Install the RBN Aggregator. This program takes the spots from the CW Skimmer Server and sends them to the Reverse Beacon Network. The file provided from the website is the executable program; not an installer. Place the downloaded file in a directory that your computer has write permissions to. An "RBN Aggregator" directory inside of your "Dcouments" directory may be an appropriate choice. Once this is done, launch the executable. Like the CW Skimmer Server, the Aggregator will automatically minimize to your tray, rather than opening a window.
- For basic operations: Once the program has been installed properly and opened, there are only two tabs you need to pay attention to. The Status tab and the Connections tab.
- Under the Connections tab:
- Enter your desired Call Sign.
- Set the password to blank.
- Check the box to connect to the RBN as soon as the Aggregator starts.
- Make sure you uncheck "Don’t send spots to RBN Server".
- Press Connect to connect to the RBN and begin sending spots.
- Under the Status tab:
- You are looking for green text. Pay attention to Skew Data. If you are seeing red, you may need to calibrate your receiver.
- Spots on the right are the ones being sent to the RBN.
- Under the Connections tab:
Figure 7: RBN Aggregator Connections tab.
Figure 8: RBN Aggregator Skimmer Traffic tab.
Figure 9: RBN Website showing reported spots from the new RBN Skimmer Node.
Similarly, the Red Pitaya can be used as a RTTY skimmer.
- RTTY Skimmer Server can be obtained from Afreet Software.
- The RTTY Skimmer program is notorious for requiring large amounts of computer processing power, much more than CW skimmer.
- Because of the high computing demand, It is recommended to run separate computers and radios for simultaneous RTTY Skimming, although it is possible to run RTTY Skimmer and CW Skimmer simultaneously on the same machine.
Recording Raw I/Q Data
Recordings of digitized RF data are valuable to HamSCI in that they can be analyzed after the contest to reveal signal characteristics that aren't visible in the spots sent to the RBN network. Using the CWSL_Tee library, it is possible to record the raw I/Q data being sent to CW Skimmer Server to files while Skimmer is running. When recording, it is recommended that you install the NTP client to keep the PC's clock synchronized, as this will make the file timestamps as accurate as possible. To install the NTP client, follow the steps in the section "Meinberg NTP Client Installation" under the QS1R Reverse Beacon Network setup guide.
To configure Skimmer Server to run behind CWSL_Tee, do the following:
- Download CWSL_Tee.dll, CWSL_Tee.cfg, and CWSL_File.exe from https://github.com/HrochL/CWSL - look under the 'bin' subdirectory.
- At the above link, follow the procedure in the description, labeled "Installation procedure is as follows". Note that while CWSL_Tee.dll and CWSL_Tee.cfg should be placed in the Skimmer Server directory (typically C:\Program Files\Afreet\SkimSrv), CWSL_File.exe should be placed in any folder on the hard drive which will be used to store the recorded data, as this program does not have an option to direct its output files to another folder or drive.
- Edit the CWSL_Tee.cfg file such that its two lines are exactly as follows:
- Start CW Skimmer Server. Visible at the top of the "Receiver" option in the Skimmer tab should be a new option, "CWSL_Tee on RP-xxxxxx", where "xxxxxx" are the last 6 digits of the Red Pitaya's MAC address:
If the selection reads "CWSL_Tee on QuickSilver QS1R" instead, then the edits made to CWSL_Tee.cfg probably did not stick, and CWSL_Tee is attempting to access the interface for a QS1R radio instead of the Red Pitaya.
Select this option, and click Apply. Skimmer should now be operating normally behind CWSL_Tee.
Once Skimmer Server is operating through CWSL_Tee, the CWSL_File program is used to record the data from a given band. This program is run via the command line, and records a single band per instance. Therefore, to record every band being skimmed, multiple instances of CWSL_File are run simultaneously.
Note that CWSL_Tee should not be placed in the C:\Program Files or C:\Program Files (x86) directories - these are not writable without administrator privileges, and attempting to record to these directories will result in no file output.
Recording a 192KHz band segment was observed to produce slightly under 1MB/s of sustained disk writes. At this rate, recording 6 bands for 24 hours would produce about 375GB of output. It is expected that any modern 1TB or greater hard drive should provide enough write bandwidth to sustain the recording of 6 bands simultaneously for the duration of the event.
To initiate recording follow the procedure below:
- Open a command prompt. Navigate to the directory in which CWSL_File.exe is located.
- Run CWSL_File.exe without any arguments to display the usage information. Note the BandNr and Scale Factor arguments - each of these is a single number.
For the Red Pitaya, the Scale Factor argument should be omitted. The BandNr argument is a number from 0 - 5 representing one of the selected bands. In Skimmer Server, under the 'Skimmer' tab, band 0 is the first selected band, band 1 is the second, and so forth. This is shown in the screenshot below, in which the red numbers next to the band segment selection panel denote the BandNr that corresponds to each band.
Additionally, the -L argument should not be used, such that the filenames are generated using UTC times rather than local times. It is recommended that the '-Q' argument is used such that CWSL_File makes a new output file every 15 minutes. This ensures that as many timestamps as possible are recorded during the recording session.
Note that the screenshot is from a session using a QS1R - the Red Pitaya configuration looks identical aside from one less band being selectable.
- Start the first recorder, using a command line such as 'cwsl_file 0 -Q'. The output should look like the following:
The first band is now being recorded. Leave the command prompt in this state until it is time to stop recording, then stop the program via Ctrl-C.
- Start the remaining five recorders using the above procedure, incrementing the BandNr by 1 for each other recorder. Note that each recorder doesn't need to be in its own folder - the files are named uniquely by band. Below is what a typical recording session will look like:
After the contest ends, please follow the procedure under the "Uploading to Zenodo" section of the HamSCI Wideband Recording How-To Guide to upload the recordings. As Zenodo has a 50GB limit per data set, please upload the recording for each band as a separate data set where this makes sense. If it is not feasible to upload this much data following the contest, please contact HamSCI so we can make arrangements to get the data via another method.
Part 3: Community Support
There are a number of great support communities online for people who operate RBN Receive Nodes and Skimmers.