aranet-cli 0.1.3

Command-line interface for Aranet environmental sensors
Documentation

aranet-cli

Command-line interface for Aranet environmental sensors.

A fast, scriptable CLI for reading sensor data, downloading history, and configuring Aranet devices (Aranet4, Aranet2, AranetRn+, Aranet Radiation).

Installation

cargo install aranet-cli

Or build from source:

git clone https://github.com/cameronrye/aranet.git
cd aranet
cargo build --release --package aranet-cli

Usage

Scan for devices

aranet scan

Read current measurements

aranet read --device <DEVICE_ADDRESS>

Download measurement history

aranet history --device <DEVICE_ADDRESS>
aranet history --device <DEVICE_ADDRESS> --count 100 --format csv --output history.csv

# Filter by date range
aranet history --device <DEVICE_ADDRESS> --since 2026-01-15 --until 2026-01-16

Read from multiple devices

# Specify multiple devices
aranet read -d device1 -d device2

# Or comma-separated
aranet read -d living-room,bedroom,office

Passive read mode

# Read from BLE advertisements without connecting (requires Smart Home enabled)
aranet read --device <DEVICE_ADDRESS> --passive

Watch real-time data

aranet watch --device <DEVICE_ADDRESS> --interval 60

View device information

aranet info --device <DEVICE_ADDRESS>

Configure device settings

aranet set --device <DEVICE_ADDRESS> interval 5
aranet set --device <DEVICE_ADDRESS> range extended

Manage device aliases

# Create an alias for a device
aranet alias set living-room AA:BB:CC:DD:EE:FF

# List all aliases
aranet alias list

# Use aliases instead of addresses
aranet read -d living-room

# Remove an alias
aranet alias remove living-room

Diagnose BLE issues

aranet doctor

Pressure units

# Display pressure in inches of mercury
aranet read --device <DEVICE_ADDRESS> --inhg

# Explicitly use hPa (default)
aranet read --device <DEVICE_ADDRESS> --hpa

Configuration

The CLI supports persistent configuration via a TOML file:

# Initialize config file
aranet config init

# Set a default device
aranet config set device <DEVICE_ADDRESS>

# Set default output format
aranet config set format json

# Show current config
aranet config show

Configuration options:

  • device — Default device address
  • format — Default output format (text, json, csv)
  • timeout — Connection timeout in seconds
  • no_color — Disable colored output
  • fahrenheit — Use Fahrenheit for temperature display
  • inhg — Use inHg for pressure display
  • bq — Use Bq/m3 for radon (instead of pCi/L)

Output Formats

Format Description
text Human-readable colored output (default)
json JSON for scripting and APIs
csv CSV for spreadsheets and data analysis
aranet read --device <DEVICE> --format json
aranet read --device <DEVICE> --json    # shorthand

Shell Completions

Generate shell completions for your preferred shell:

aranet completions bash > ~/.local/share/bash-completion/completions/aranet
aranet completions zsh > ~/.zfunc/_aranet
aranet completions fish > ~/.config/fish/completions/aranet.fish

Related Crates

This CLI is part of the aranet workspace:

Crate crates.io Description
aranet-core crates.io Core BLE library for device communication
aranet-types crates.io Shared types for sensor data
aranet-tui crates.io Terminal UI dashboard
aranet-gui crates.io Desktop application (egui)

License

MIT


Made with love by Cameron Rye