How to receive RF signals on Raspberry pi 5

June 28, 2024, 00:13

adde9882

I have a raspberry pi 5 and an RF receiver plugged in to GPIO 27. Is there any library or software I can use to find out what RF signal my RF controller is sending?

eric_44794

There are few libraries and software you can use to read RF signals. The most common is the RPi.GPIO library for Python and if you are looking for more professional usage, there is the pigpio library. For software, you might want to check out applications like rtl_433. To use rtl_433, you need a Software Defined Radio (SDR) that can communicate with Raspberry Pi. rtl-sdr is a popular choice.

adde9882

Is there no simple way to do it with an RF receiver if I already have that? I don't have any experience with RF technology so I don't feel confident in writing my own python script to decode the signal from my controller

eric_44794

If you have an RF receiver, you can still listen to the RF signals and understand the data being transmitted in the RF signals by decoding the analog-to-digital converter results. If your RF controller is using a very simple modulation scheme (like OOK, On-off keying, sometimes used in simple applications), and if the data being transmitted is not encrypted, you can read the transmitted data bits.

john_85471

With an RF receiver, you can decode simple, unencrypted signals using On-off keying (OOK) modulation to read transmitted data bits.

adde9882

The controller I am testing on is a Nexa PET-910, which apparently uses Amplitude Shift Keying. Is it still as easy to decode?

adde9882

Also, I assume I have to write some logic to filter out RF noise, no?

adde9882

Reason I want to decode the signal is to be able to send an identical signal myself (I have an RF transmitter), so I still need to know all the details of the signal

oops.se

Depending on hardware the filtering is done in HW. And as for decoding the signal, depending on the type of controller it can be a real PITA as many manufacturer have implemented different hacking prevention.

adde9882

How would the hacking prevention look like? It is just a cheap controller that toggles power outlets.

adde9882

As for interferance, I just tested and there is very little every 5-10 seconds, so it won't be a problem.

adde9882

I just need to decode and replicate the RF signal, but I have 0 clue how RF signals work

adde9882

Or rather I have some idea, but not a great one

adde9882

I tried to use rpi-rf (had to rewrite it the GPIO parts to use gpiozero tomake it work with my rpi 5) but it wouldn't pick up my nexa controller for some reason

oops.se

Hacking prevention is crypto, jumping code and it's implemented in many IoT devices, even a power outlet.