rapidradio USB

Home  >>  products  >>  rapidradio USB

rapidradio USBrapidradio USB

rapidradio USB

It contains the Freescale MC9S08JS16 microcontroller and a half-duplex 2.4GHz transceiver based on the RFM75 module (made by HopeRF). Thanks to the USB microcontroller you can send data directly from your laptop to other rapidradios or rapidradios USB.
It’s a perfect solution for any kind of home automation, robotics, DIY projects etc.
You will be surprised how much you can reach using rapidradio. So much opportunities and so much fun, because it will work for you both ways – for your projects and for your taste. Enjoy!

Dimensions (L x W x H): 80mm x 33mm x 8mm
USB: 2.0
RF features: RF power programmable: -35 .. +5dBm; 2.4000-2.4835 GHz ISM band (83 channels), 4-byte addresses
Speed: max. 2Mbit, but practical usable up/down stream is lower when all CRC, ACK, auto-repeat, etc. options are enabled.
Open area range: ~70m; improved indoor range by rapidradio wire antenna in comparison to the RFM75’s pcb antenna
USB Drivers: User-space libusb-1.0 based. For Windows available here, for Linux not needed (tested on Raspbian), for OS X not needed.
Software: Open Source command-line tool written in .NET (C#). On Linux and OS X the Mono .NET runtime is required (it’s free).

USB driver

It’s a so-called user-space driver (libusb-1.0 based). The Windows driver installer is available here. For Linux and OS X driver is not needed. More details (like USB endpoints used by the device) can be read from the source code – it’s fully Open Source and – hosted on GitHub.

using the rapidradioUSB.exe tool

start listening using address 0x12345678 and channel 50:

rapidradioUSB.exe -l -a=0x12345678 -c=50 > received_file.txt

To stop listening just hit Ctrl+C.

to send a ‚sample_file.txt’ to the listening rapidradio (address 0x12345678 and channel 50):

rapidradioUSB.exe -a=0x12345678 -c=50 < sample_file.txt
Note: The channel number and target device address need to match values used on a listening device.


rapidradioUSB.exe --help

to see all available rapidradioUSB tool options.

Note: Elevated access rights may be required when running the tool on Linux or OS X. On Raspbian sudo is needed.


You have to install Mono .NET runtime first.
Then you may need to install the libusb-1.0 libraries.
Once you have them both, you should be able to run the rapidradioUSB.exe tool directly.
The tool has been successfully tested on Raspberry Pi (Raspbian Linux) and Ubuntu.


Currently there is an issue with loading the libusb-1.0 library by the rapidradioUSB.exe tool. Most likely it’s caused by a bug in an external library used by the rapidradioUSB.exe to load the libusb-1.0. We are working hard to solve the issue. There are at least two possible solutions: debug and fix the .NET lib or re-write the tool to C++ and compile it by the native GCC toolset.



frequently asked questions (FAQ)

  1. I plugged the rapidradio USB and the LED is blinking from time to time. What does it mean?

    When you plug it there is a 3s init procedure and then the LED starts blinking. Blinking indicates idle state. Continuous LED light indicates radio activity: either listening or sending.
  2. I plugged the rapidradio USB and tried to send some data but I’m getting only errors.

    By default the ACK option is turned on, so the sender (rapidradio or rapidradio USB) expects to receive ACK packets for every sent packet. If nobody is listening (e.g. a second Raspberry Pi with a rapidradio in listening mode) then default sending will fail because of that.
    The ACK option can be skipped by adding the -nack parameter to the rapidradioUSB.exe command-line tool.
  3. While sending I see errors from time to time, but finally the file is transmitted correctly.

    The air is getting crowded, so from time to time some packets get lost. To keep the whole transmission correct there are two levels of re-transmitting lost packets: hardware level and software level. Hardware level is provided by the RFM75 itself: there are up to 16 auto re-transmissions if no ACK packet is seen. Software level is implemented by the rapidradioUSB.exe command-line tool. There is configurable amount of high-level re-transmissions with 100ms intervals, packet numbering to skip doubled packets and notice skipped packets. In short words: the errors are related to the hardware-level only and can be treated as a link quality indicator. If the devices are in range, then the whole transmission should be completed correctly, regardless of the low-level errors for some missing packets.

  4. I run the rapidradioUSB.exe tool and got ‚interface error’ or ‚USB error’.

    We noticed that on some computers (mostly on Windows) from time to time that error appears. It’s most likely a libusb-1.0 minor bug. Please just unplug and plug the rapidradio USB, then try to run the rapidradioUSB.exe tool again – it will fix the error.
  5. Is the rapidradio USB designed to talk to the other rapidradios/rapidradios USB only?

    No. You can send and receive packets to/from any device using the RFM7x transceiver (RFM70, RFM73, RFM75).
    Apparently it’s even possible to communicate between RFM7x and nRF24L01 transceivers.
  6. May I plug more than one rapidradio USB to my laptop?

    Technically yes, but current version of the rapidradioUSB.exe tool will show an error because multiple devices are not supported yet. This behavior depends on software only and may be fixed in the future.
  7. I’m a skilled hacker and don’t like your firmware. May I burn my own firmware into the rapidradio USB device?

    Yes, you can. The Freescale MC9S08JS16 has a factory USB bootloader (in a non-volatile memory) and can be easily re-programmed. The original rapidradio USB firmware is fully Open Source, so feel free to change it as you wish. Maybe even you want to contribute with the rapidradio team?

One Comment so far:

  1. Jan Busk pisze:

    Hi! I get the error message: libusb-1.0.dll not found.
    Running windows 10. Same error when trying to execute in wine on an ubuntu 15.10 machine.


Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>