Skip to main content

Sending and receiving 433/315MHz signals with low-cost GPIO RF modules on a Raspberry Pi accessed with gpiod

Project description

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. The libgiod-python library is required to access the GPIO pins. Therefore, the GPIO character device is used instead of the old GPIO sysfs interface.

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

libgiod-python (available through most package managers as python3-libgpiod)

Installation

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

Debian/Ubuntu:

# apt-get install python3-pip python3-libgpiod

Fedora/CentOS:

# dnf install python3-pip python3-libgpiod

With pip installed:

# pip3 install rpi-rf-gpiod

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

  • The code is licensed under the BSD Licence

  • The project is forked from the GPIO sysfs interface implementation of milaq

  • The project source code is hosted on GitHub

  • Please use GitHub issues to submit bugs and report issues

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rpi-rf-gpiod-0.1.0.tar.gz (5.7 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page