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 details)

Uploaded Source

File details

Details for the file rpi-rf-gpiod-0.1.0.tar.gz.

File metadata

  • Download URL: rpi-rf-gpiod-0.1.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for rpi-rf-gpiod-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b772dced068715de67fc25b425f0ced8e6cc093347d16692cf6a9ae2dd92c4ee
MD5 3ad5d949dcadead643727f29239a219d
BLAKE2b-256 8e5951c9b94a4d0285e504d619fb974db2b005c4cab11ebe2b92399d50da0c77

See more details on using hashes here.

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