User Guide¶
voltkeeper is a cross-platform command-line tool for Bluetti power stations. It scans, connects, reads battery data, writes device settings, publishes to MQTT, and runs load tests — all over local BLE, with no cloud account required.
Install¶
Quick run (no clone required)¶
uvx --from git+https://github.com/mikemccllstr/voltkeeper voltkeeper --help
This downloads and runs the tool in an isolated environment.
From source¶
git clone https://github.com/mikemccllstr/voltkeeper
cd voltkeeper
uv run voltkeeper --help
Requirements¶
Python 3.13+
Linux with BlueZ, macOS 11+, or Windows 10 build 19041+ (BLE support)
Bluetooth adapter with scan capability
On Linux, the BLE adapter may require elevated privileges (CAP_NET_ADMIN or
sudo). On macOS, the device’s BLE MAC address may be reported as a UUID
rather than a hardware address — use the UUID directly.
The tool reads plain Modbus RTU over BLE from Bluetti power stations. Encrypted devices (AES-CBC over BLE) are supported; the handshake is handled automatically.
Development¶
Run the full quality gate before committing:
mise run check
This runs lint, typecheck, and tests. See the Developer Guide for contributing and adding new devices.