/rpi-rf

Sending and receiving 433MHz signals with cheap GPIO RF modules on a Raspberry Pi

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

rpi-rf

Introduction

Python module for sending and receiving 433/315MHz LPD/SRD signals with generic low-cost GPIO RF modules on a Raspberry Pi.

Protocol and base logic ported ported from rc-switch.

Supported hardware

Most generic 433/315MHz capable modules (cost: ~2€) connected via GPIO to a Raspberry Pi.

433modules

Compatibility

Generic RF outlets and most 433/315MHz switches (cost: ~15€/3pcs).

rfoutlet

Chipsets:

  • SC5262 / SC5272
  • HX2262 / HX2272
  • PT2262 / PT2272
  • EV1527 / RT1527 / FP1527 / HS1527

For a full list of compatible devices and chipsets see the rc-switch Wiki

Dependencies

RPi.GPIO

Installation

On your Raspberry Pi, install the rpi_rf module via pip.

Python 3:

# apt-get install python3-pip
# pip3 install rpi-rf

Wiring diagram (example)

Raspberry Pi 1/2(B+):

                   RPI GPIO HEADER
              ____________
             |        ____|__
             |       |    |  |
             |     01|  . x  |02
             |       |  . x__|________       RX
             |       |  . x__|______  |   ________
             |       |  . .  |      | |  |        |
   TX        |   ____|__x .  |      | |__|VCC     |
 _______     |  |  __|__x .  |      |    |        |
|       |    |  | |  |  x____|______|____|DATA    |
|    GND|____|__| |  |  . .  |      |    |        |
|       |    |    |  |  . .  |      |    |DATA    |
|    VCC|____|    |  |  . .  |      |    |        |
|       |         |  |  . .  |      |____|GND     |
|   DATA|_________|  |  . .  |           |________|
|_______|            |  . .  |
                     |  . .  |
                     |  . .  |
                     |  . .  |
                     |  . .  |
                     |  . .  |
                     |  . .  |
                   39|  . .  |40
                     |_______|

TX:
   GND > PIN 09 (GND)
   VCC > PIN 02 (5V)
  DATA > PIN 11 (GPIO17)

RX:
   VCC > PIN 04 (5V)
  DATA > PIN 13 (GPIO27)
   GND > PIN 06 (GND)

Usage

See scripts (rpi-rf_send, rpi-rf_receive) which are also shipped as cmdline tools.

Open Source