Skip to main content

Build Status PyPI Version PyPI Downloads

This package is currently in maintenance mode. Please use airthings-ble for new projects.

Wave Reader Utilities

The Airthings Wave is a series of devices that track Radon levels in the home. Radon is a radioactive gas that comes from the breakdown of uranium in soil and rock. It's invisible, odourless and tasteless.

This is an unofficial Airthings Wave community library designed to provide utilities for device communication.

Features

  • Using bleak as a dependency for platform cross-compatibility and support for asynchronous operation.
  • Support for major models: Wave+, Wave, Wave (Version 2) and Wave Mini devices. View Plus is not supported, as it sends data over WiFi, not BTLE.
  • Code testing, coverage reporting, linting, type hinting, and formatting.
  • Provide a more comprehensive programming interface for a developer audience.

Requirements

In Ubuntu/Debian, make sure you have libglib2.0-dev and bluez installed:

sudo apt-get install libglib2.0-dev bluez -y

Other Linux distributions should have equivalent packages. In theory, other platforms (Windows, Mac) are supported by using bleak as a dependency, but open a ticket if you run into any issues.

Installation

You can install the library by running:

pip install wave-reader

Example Usage

There are various concrete examples available in the examples directory. That includes CLI interaction and other interesting scenarios that demonstrate API usage.

import asyncio
from wave_reader import wave

if __name__ == "__main__":
    # Scan for BTLE Wave devices.
    devices = wave.scan()
    # Event loop to run asynchronous tasks.
    loop = asyncio.new_event_loop()
    # Get sensor readings from available wave devices.
    for d in devices:
        sensor_readings = loop.run_until_complete(d.get_sensor_values())
        print(sensor_readings)

# >>> DeviceSensors (humidity: 32.5, radon_sta: 116, radon_lta: 113 ...

Note: The wave_reader/web module has been removed. It relied on an external API that we do not control and cannot guarantee works anymore.

Contribution

If you identify a bug, please open a ticket. Pull requests are always welcome.

Testing

You can run the entire test suite by running make test. It will run flake8, mypy and pytest. If you'd like to just run unit tests, running poetry run pytest ./tests is sufficient.

Metadata

Release files for wave-reader 2.0.2

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

Source distribution (sdist)

Source distribution for wave-reader 2.0.2
File Size Uploaded
wave_reader-2.0.2.tar.gz 11.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wave-reader 2.0.2
File Interpreter ABI Platform
wave_reader-2.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 22.6 kB

Release files / wave_reader-2.0.2.tar.gz

Download URL wave_reader-2.0.2.tar.gz
Size 11.0 kB
Tags Source
SHA-256 checksum
How to use checksums
fa51cbb9470ee1cb3d5e7778560c2be5b6c3af0d72ec93fd88e592eedaf864c2
BLAKE2b-256 checksum
How to use checksums
11fdf0375b82ea4cc0889c023964a4a4883fc55846768465a5dc502df5b56873
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.4 CPython/3.14.4 Darwin/25.4.0

Release files / wave_reader-2.0.2-py3-none-any.whl

Download URL wave_reader-2.0.2-py3-none-any.whl
Size 11.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
54c6a4a7ac393e2e5badd3c218289bc427a4a631067102556df24b876893e0ac
BLAKE2b-256 checksum
How to use checksums
a6994afe38367c9b8275c036a8b1ba06488e45a6a41ec6d9067853aa760f609e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.3.4 CPython/3.14.4 Darwin/25.4.0

Release history Release notifications | RSS feed

This release

2.0.2 This release

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

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