CaribouLite RPi HAT

A fully open source dual-channel SDR Raspberry Pi HAT with up to 6 GHz tunable range

This project is coming soon. Sign up to receive updates and be notified when this project launches.

CaribouLite is participating in the Qorvo RF Accelerator!

CaribouLite is an affordable, open source dual-channel SDR (Software Defined Radio) platform and Raspberry Pi extension (HAT). With CaribouLite, your Raspberry Pi computer becomes a self-contained dual-channel radio Tx/Rx spanning a wide tunable frequency spectrum (up to 6 GHz, see below).

It is easy to control, modify and program CaribouLite through a Raspberry Pi computer, using the IceStorm FPGA toolchain and our fully open source code and documentation, all contained in our repository tree and linked at the bottom of this page.

CaribouLite is built for makers, hackers, educators and researchers and is designed to complement the current SDR ecosystem as a high-quality, affordable, standalone SDR building block for the Raspberry Pi computer.

Capability & Range

CaribouLite gives two Tx/Rx SDR channels: (1) 30-6000 MHz, and (2) Sub-1GHz. The 4MSPS I/Q samples (both Tx and Rx) are transmitted over the RPI’s secondary memory interface, where CaribouLite acts as a high throughput memory peripheral.

CaribouLite has an internal accurate RF clock source (TCXO @ +/-0.5 ppm), low noise Rx capabilities (NF < 4 dB under 3 GHz) and high Tx power (up to 18 dBm). It also has a fully controllable read / write 8-bit expansion port (PMOD) to support advanced features such as direction finding, synchronization, and more.

On the software side, Raspberry Pi’s high-level APIs like Soapy / GNU Radio, etc. are fully supported, through which the HAT’s complete feature-set can be accessed.

Fully Open Source to Support Your Projects

As a fully open source SDR, users can reprogram, modify and improve CaribouLite’s capabilities for their own custom use. To support such an ecosystem, we will provide the community with the fullest documentation and source code for the project possible, including the required toolchains and programming guidelines. We are also excited to hear your ideas, and support them fully.

Closer to campaign launch, we are planning to provide our own library of usages, such as:

  • A wide range spectrum analyzer
  • Signal / protocol generator
  • Analog / Digital (DAB+) radio receiver
  • ADS-B receiver

…and more!

Useful Linux Software

The software side contains a Linux driver that recognizes the stacked CaribouLite boards and configures them. SDR APIs and applications, such as GNU Radio, are accessed as if they were connected through the USB port. The Linux driver gives access not only to the "SDR" part of CaribouLite, but also the IEEE-802.15.4 PHY built-in core implemented within the AT86RF215-ZU (Microchip’s modem). With the IEEE-802.15.4 PHY radio channels, communication nodes such as Zigbee(Pro), Thread, and others will be implemented without the need for any further SDR programming/design.

Features & Specifications

Block Diagram:

CarabouLite Block Diagram

Click to expand


CaribouLite is powered by the Raspberry Pi’s 5 V rail from the 40-pin header. That gets converted to 3.3 V, which is then filtered and down-converted again (using an LDO) to the 2.8 V RF voltage source and the 1.2 V FGPA voltage source. The LDO outputs are filtered and distributed to the consumer ICs. This power micro-architecture is used to minimize power waste and heat dissipation, and provides decent RF filtering and region isolation using the LDOs and filters.


  • RPI - 40-pin header connection with 40-pin Raspberry Pi boards.
  • PMOD - a header (unpopulated as default) containing 8-bit of FPGA signals, 2-pin GND, and 2-pin VCC. This is a 2.8 V logic connector. Maximal draw current from the power rail is 150 mA.
  • RF 6GHz - a widely tunable RF ANT connector supporting 30-6000 MHz Tx and Rx.
  • RF S1G - a sub-1 GHz RF ANT connector supporting 389.5-510 MHz and 779-1020 MHz Tx and Rx.


  • USER / PROG: (marked USER) - a dual purpose button used mainly for user-programmable functionality or to enable access to the HAT EEPROM

Board Layout

CarabouLite Board Layout

Click to expand

1. Rasperry Pi 40-pin connector7. PMOD connector for FPGA expansion
2. Modem - AT86RF2158. Raspberry Pi configurable EEPROM (following Raspberry Pi HAT specifications)
3. TCXO - 0.5 ppm @ 26 MHz9. RF front-end - switches, amplifiers, and filters
4. FPGA - iCE40LP10. Reset switch
5. Frequency mixer with integrated synthesizer - Qorvo RFFC507211. User custom switch + RPI HAT EEPROM reconfiguration (write-enable) switch
6. External reference clock connector (may be used to achieve coherence between many CaribouLite units)12. Wide band SMA connector
13. Sub 1-GHz SMA connector

Open Source Documentation

CaribouLite is extensively documented on GitHub.

Interested in This Project?

You can sign up to be notified when this campaign launches, and to get any other useful updates, right at the top of this page. We work hard to only send out useful information and you can unsubscribe at any time.

See Also

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects: