Skip to main content

Collect 433Mhz weather sensor data and publish to mqtt

Project description

Ambient Radio Weather Network (arwn)

PyPI version CI

Collect 433 MHz weather sensor data and publish to MQTT.

Designed to work with an RFXCOM USB receiver or an RTL-SDR dongle, publishing sensor readings over MQTT so they can be consumed by other software such as Home Assistant.

Hardware Requirements

You will need a Linux system (a Raspberry Pi 3 or later is sufficient) and a 433 MHz receiver:

  • RTL-SDR dongle (~$25 on Amazon) — recommended default. Requires rtl_433 installed separately.
  • RFXCOM receiver — more expensive, narrower sensor support, better hardware error correction. All supporting software is bundled.

Installation

Install rtl_433 (RTL-SDR users only)

Follow the rtl_433 installation instructions. On Debian/Ubuntu a package is available:

sudo apt-get install rtl-433

Install arwn

pip install arwn

Configuration

Copy config.yml.sample to config.yml and edit:

collector:
  type: rtl433        # or rfxcom
  # device: /dev/ttyUSB0   # rfxcom only

mqtt:
  server: 192.168.1.x
  # username: user
  # password: pass

# Optional: Weather Underground reporting
wunderground:
  user: your@email.com
  station: KXXYYY123
  passwd: yourpassword

# Map hardware sensor IDs to friendly names.
# IDs survive battery changes when named here.
# An "Outside" sensor is required for Weather Underground.
names:
  "ae:01": Outside
  "e9:00": Living Room

Running as a systemd service (recommended)

Install and enable the systemd user service:

arwn-install-service --config ~/.config/arwn/config.yml

The service will start immediately, start at boot, and restart automatically on failure. No sudo required.

To check status:

systemctl --user status arwn
journalctl --user -u arwn -f

RFXCOM USB access

If using an RFXCOM receiver, add yourself to the dialout group (one-time):

sudo usermod -aG dialout $USER

Log out and back in for the change to take effect, then re-run arwn-install-service.

Running manually

arwn-collect -f --config config.yml

Development

See CONTRIBUTING.md and AGENTS.md.

License

Apache 2.0 — see LICENSE.

Credits

Sean Dague

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

arwn-2.1.0.tar.gz (33.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arwn-2.1.0-py3-none-any.whl (28.4 kB view details)

Uploaded Python 3

File details

Details for the file arwn-2.1.0.tar.gz.

File metadata

  • Download URL: arwn-2.1.0.tar.gz
  • Upload date:
  • Size: 33.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for arwn-2.1.0.tar.gz
Algorithm Hash digest
SHA256 ec27b26008c8668205bcbc32dbe6227583756d38bd3df80fcbbe1ee19e66c54b
MD5 1341cca07d29ce644b4bc0daebfffe01
BLAKE2b-256 dd65ed340227c688e07d29741d63bbc5230aa03c1bfc2e243652378268d5578b

See more details on using hashes here.

Provenance

The following attestation bundles were made for arwn-2.1.0.tar.gz:

Publisher: release.yml on sdague/arwn

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file arwn-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: arwn-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 28.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for arwn-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d7c2713bfceedc767e10b592fe22c1e2443dee1221b55d9e77a520b081b08111
MD5 7b1706566532a2975105a5f6763157a0
BLAKE2b-256 60251877765891f027c6f2b1978318408dbae87036f287d11b2b4d33be145ce6

See more details on using hashes here.

Provenance

The following attestation bundles were made for arwn-2.1.0-py3-none-any.whl:

Publisher: release.yml on sdague/arwn

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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