CaribouLite SDR

CaribouLite SDR #

Purpose #

Software-defined radio (SDR) receiver for RF signal monitoring and experimentation. The CaribouLite HAT provides dual-channel SDR capability directly on the Pi’s GPIO header.


Hardware #

ComponentSpecification
ComputeRaspberry Pi 4 Model B, 8GB
SDR HATCaribouLite SDR
Storage32GB SD card (minimum)
AntennaSMA connector, antenna per use case

CaribouLite Specifications #

AttributeValue
Frequency range30 MHz – 6 GHz (with gaps)
Channels2 (S1000: sub-1GHz, HiF: 30MHz-6GHz)
ADC13-bit
BandwidthUp to 2.5 MHz per channel
InterfaceGPIO header (directly mounted)

Network Position #

graph LR
    A[Core Router] <--> B[Access Switch
IoT VLAN] <--> C[CaribouLite SDR
Pi4 + SDR HAT]

Deployed on the IoT VLAN for isolation from management traffic.


Software Stack #

LayerComponent
OSRaspberry Pi OS (64-bit)
SDR DriverCaribouLite kernel module
SDR FrameworkSoapySDR
ApplicationsGNU Radio, SDR++ (optional GUI)

Configuration #

Kernel Module #

The CaribouLite kernel module loads automatically via udev rules. Verify with:

lsmod | grep cariboulite

SoapySDR Integration #

CaribouLite integrates with SoapySDR for application compatibility:

SoapySDRUtil --find
SoapySDRUtil --probe="driver=Cariboulite"

Test Scripts #

Located at /opt/deevnet/tests/:

ScriptPurpose
test-sdr-detect.shVerify CaribouLite HAT detected
test-sdr-channels.shConfirm both SDR channels operational
test-sdr-receive.shCapture samples, verify data flow

Running Tests #

sudo /opt/deevnet/tests/run-all-tests.sh

Expected output:

[PASS] Network connectivity
[PASS] CaribouLite HAT detected
[PASS] Kernel module loaded
[PASS] SoapySDR integration
[PASS] Channel S1000 operational
[PASS] Channel HiF operational

Post-Startup Scripts #

Located at /opt/deevnet/post-startup/:

ScriptPurpose
init-sdr.shInitialize SDR hardware, set default gains

These run on first boot after the hardware is detected.


Use Cases #

ApplicationDescription
ADS-B receptionAircraft tracking (1090 MHz)
FM broadcastLocal FM station monitoring
Weather satelliteNOAA APT reception (137 MHz)
ISM band monitoring433/868/915 MHz IoT traffic
Amateur radioHF/VHF/UHF experimentation

Maintenance #

TaskFrequencyProcedure
Firmware updatesAs releasedCheck CaribouLite GitHub for updates
Test validationMonthlyRun test scripts, verify all pass
Antenna inspectionQuarterlyCheck connections, replace worn cables
Page last modified: January 24, 2026