Skip to main content
https://github.com/aequitas/python-rflink/workflows/Push/badge.svg https://img.shields.io/pypi/v/rflink.svg https://img.shields.io/pypi/pyversions/rflink.svg Maintainability Test Coverage https://img.shields.io/requires/github/aequitas/python-rflink.svg https://img.shields.io/badge/Cyberveiligheid-97%25-yellow.svg

Library and CLI tools for interacting with RFlink 433MHz transceiver.

https://www.rflink.nl/

Requirements

  • Python 3.6 (or higher)

Description

This package is created mainly as a library for the Home assistant Rflink component implementation. A CLI has been created mainly for debugging purposes but may be extended in the future for more real-world application if needed.

The package also provides a CLI utility which allows a single RFLink hardware to be shared by multiple clients, e.g. Home assistant + Domoticz or multiple Home assistant instances.

Installation

$ pip install rflink

Usage of RFLinkProxy CLI

$ rflinkproxy -h
Command line interface for rflink proxy.

Usage:
  rflinkproxy [-v | -vv] [options]
  rflinkproxy (-h | --help)
  rflinkproxy --version

Options:
  --listenport=<port>  Port to listen on
  --port=<port>        Serial port to connect to [default: /dev/ttyACM0],
                         or TCP port in TCP mode.
  --baud=<baud>        Serial baud rate [default: 57600].
  --host=<host>        TCP mode, connect to host instead of serial port.
  --repeat=<repeat>    How often to repeat a command [default: 1].
  -h --help            Show this screen.
  -v                   Increase verbosity
  --version            Show version.

Share RFLink connected to serial port /dev/ttyACM1, the proxy will listen on port 2345:

$ rflinkproxy --port /dev/ttyACM0 --listenport 2345

Share TCP mode RFLink instead of serial port (eg: ESP8266 serial bridge), the proxy will listen on port 2345:

$ rflinkproxy --host 1.2.3.4 --port 1234 --listenport 2345

Debug logging is shown in verbose mode for debugging:

$ rflinkproxy -vv --host 1.2.3.4 --port 1234 --listenport 2345
DEBUG:asyncio:Using selector: EpollSelector
INFO:rflinkproxy.__main__:Serving on ('0.0.0.0', 2345)
INFO:rflinkproxy.__main__:Initiating Rflink connection
DEBUG:rflink.protocol:connected
INFO:rflinkproxy.__main__:Connected to Rflink
INFO:rflinkproxy.__main__:Incoming connection from: ::1:63293
DEBUG:rflinkproxy.__main__:got packet: 20;00;Xiron;ID=4001;TEMP=00f1;HUM=38;BAT=LOW;
DEBUG:rflinkproxy.__main__:decoded packet: {'node': 'gateway', 'protocol': 'xiron', 'id': '4001', 'temperature': 24.1, 'temperature_unit': '°C', 'humidity': 38, 'humidity_unit': '%', 'battery': 'low'}
INFO:rflinkproxy.__main__:forwarding packet 20;00;Xiron;ID=4001;TEMP=00f1;HUM=38;BAT=LOW; to clients
DEBUG:rflinkproxy.__main__:got packet: 20;00;NewKaku;ID=013373f6;SWITCH=10;CMD=ON;
DEBUG:rflinkproxy.__main__:decoded packet: {'node': 'gateway', 'protocol': 'newkaku', 'id': '013373f6', 'switch': '10', 'command': 'on'}
INFO:rflinkproxy.__main__:forwarding packet 20;00;NewKaku;ID=013373f6;SWITCH=10;CMD=ON; to clients
DEBUG:rflinkproxy.__main__:got packet: 20;00;Auriol V2;ID=D101;TEMP=006f;BAT=OK;
DEBUG:rflinkproxy.__main__:decoded packet: {'node': 'gateway', 'protocol': 'auriol v2', 'id': 'd101', 'temperature': 11.1, 'temperature_unit': '°C', 'battery': 'ok'}
INFO:rflinkproxy.__main__:forwarding packet 20;00;Auriol V2;ID=D101;TEMP=006f;BAT=OK; to clients

Metadata

Release files for rflink 0.0.68

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rflink 0.0.68
File Size Uploaded Provenance
rflink-0.0.68.tar.gz 23.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for rflink 0.0.68
File Interpreter ABI Platform
rflink-0.0.68-py3-none-any.whl Python 3 none any Details

Total release size: 42.8 kB

Security for rflink 0.0.68

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.68 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page