All Projects → rgerganov → rf-car

rgerganov / rf-car

Licence: MIT License
Controlling an RC car with HackRF

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to rf-car

Btle
Bluetooth Low Energy (BLE) packet sniffer and transmitter for both standard and non standard (raw bit) based on Software Defined Radio (SDR).
Stars: ✭ 411 (+705.88%)
Mutual labels:  hackrf
Soapy power
Obtain power spectrum from SoapySDR devices (RTL-SDR, Airspy, SDRplay, HackRF, bladeRF, USRP, LimeSDR, etc.)
Stars: ✭ 88 (+72.55%)
Mutual labels:  hackrf
gqrx
Software defined radio receiver powered by GNU Radio and Qt.
Stars: ✭ 2,345 (+4498.04%)
Mutual labels:  hackrf
Qspectrumanalyzer
Spectrum analyzer for multiple SDR platforms (PyQtGraph based GUI for soapy_power, hackrf_sweep, rtl_power, rx_power and other backends)
Stars: ✭ 677 (+1227.45%)
Mutual labels:  hackrf
Gr Adsb
GNU Radio OOT module for demodulating and decoding ADS-B packets
Stars: ✭ 61 (+19.61%)
Mutual labels:  hackrf
Gqrx
Software defined radio receiver powered by GNU Radio and Qt.
Stars: ✭ 1,934 (+3692.16%)
Mutual labels:  hackrf
Easy Sdr
This project is about creation of affordable and easy-to-manufacture prototypes of PCBs which are used to expand the capabilities of existing low-cost SDR receivers based on RTL2832U chip.
Stars: ✭ 275 (+439.22%)
Mutual labels:  hackrf
multi-sdr-gps-sim
multi-sdr-gps-sim generates a IQ data stream on-the-fly to simulate a GPS L1 baseband signal using a SDR platform like HackRF or ADLAM-Pluto.
Stars: ✭ 53 (+3.92%)
Mutual labels:  hackrf
Adsb Out
📶 1090ES ADS-B Out Add-on
Stars: ✭ 74 (+45.1%)
Mutual labels:  hackrf
urh
Universal Radio Hacker: Investigate Wireless Protocols Like A Boss
Stars: ✭ 9,060 (+17664.71%)
Mutual labels:  hackrf
Sdrangel
SDR Rx/Tx software for Airspy, Airspy HF+, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube
Stars: ✭ 1,058 (+1974.51%)
Mutual labels:  hackrf
Soapyhackrf
SoapySDR HackRF module
Stars: ✭ 59 (+15.69%)
Mutual labels:  hackrf
Imsi Catcher
This program show you IMSI numbers of cellphones around you.
Stars: ✭ 2,198 (+4209.8%)
Mutual labels:  hackrf
Sparrow Wifi
Next-Gen GUI-based WiFi and Bluetooth Analyzer for Linux
Stars: ✭ 525 (+929.41%)
Mutual labels:  hackrf
RF-List
RFSec tools
Stars: ✭ 98 (+92.16%)
Mutual labels:  hackrf
Hackrf Spectrum Analyzer
Stars: ✭ 276 (+441.18%)
Mutual labels:  hackrf
Frequensea
Visualizing the frequency spectrum.
Stars: ✭ 127 (+149.02%)
Mutual labels:  hackrf
tamagotchi-tech-specs
Tamagotchi Tech Specs
Stars: ✭ 29 (-43.14%)
Mutual labels:  toys
crysp
crypto stuff in python
Stars: ✭ 14 (-72.55%)
Mutual labels:  toys
MasterFrequencyList
Erics Master Frequency lists for RF tuning
Stars: ✭ 43 (-15.69%)
Mutual labels:  hackrf

rf-car

This is a small program for controlling RC cars with HackRF. Most of the RC toys use the same protocol, so you just need to find the frequency on which the toy operate. In my case it is 40.684 MHz. If your RC toy can move in 8 directions (forward, backward, left, right, forward-right, forward-left, backward-right, backward-left), then there is a great chance that you can use this program to control it.

You can see it in action here:

screenshot.png

how it works

The remote control is using OOK modulation with long and short pulses. One long pulse is equal to three short pulses. For example, to move the car forward, we need to send 4 long pulses followed by 10 short pulses. We can easily find the control sequence for each direction by recording the signal from the RC and then analyse it with inspectrum:

inspectrum.png

To synthesize the signal with the HackRF, we need to transmit SAMPLE_RATE/SYMBOL_RATE samples ('1' or '0') for each bit of the control sequence. We can find the SYMBOL_RATE with inspectrum, it is about 2018. We choose the SAMPLE_RATE to be 2M.

build & run

The program depends only on SDL2, SDL2_image and libhackrf. To build on Linux:

$ sudo apt-get install libsdl2-dev libsdl2-image-dev libhackrf-dev
$ make
$ ./rf-car

To build on OSX:

$ brew install sdl2 sdl2_image hackrf
$ make
$ ./rf-car
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].