Victron BLE HA Parser
Overview
This project exists solely to provide an interface to the excellent
victron-ble project suitable for use with a Home
Assistant integration. Thank you to Keshav Varma for maintaining the victron-ble project.
Installation
This package is available on PyPI:
pip install victron-ble-ha-parser
Installing the Home Assistant custom component
Currently the Home Assistant integration is only available as a custom component, for testing purposes. The goal is to make this part of Home Assistant core.
If you'd like to test this, clone my fork on the HA project and checkout the victron-ble-custom-component branch:
git clone https://github.com/rajlaud/home-assistant.git --branch victron-ble-custom-component
Then, copy or symlink homeassistant/components/victron-ble into your config/custom_components folder.
Details
The parser module has one class, VictronBluetoothDeviceData, which parses Bleak advertisements and
updates itself with the sensor data from the advertisement. Each instance of
VictronBluetoothDeviceData should be fed advertisements from exactly one Victron device (based on
the MAC address) and the instance needs to be initiated with the encryption key of the device that
is going to be sending updates. If the encryption key is set correctly everything else will be
figured out automatically.
There is a handy package from maintainers of the HA project called sensor-state-data to make it
easy to automate ingesting sensor state updates like this. Unfortunately, we need to use a unit
(amp-hours) not supported by the module and my PR to include amp-hours was rejected because they are
not a common unit (https://github.com/Bluetooth-Devices/sensor-state-data/pull/47). For that
reason, we need a custom extension of sensor-state-data, which is contained in the
custom-sensor-state.py file.
Release files for victron-ble-ha-parser 0.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| victron_ble_ha_parser-0.7.0.tar.gz | 13.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| victron_ble_ha_parser-0.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.3 kB
Release files / victron_ble_ha_parser-0.7.0.tar.gz
| Download URL | victron_ble_ha_parser-0.7.0.tar.gz |
|---|---|
| Size | 13.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
45b50c8bf6bfa23e9793e94bb4f61c8a37e69d794da93f6dd3fb457818b96a8a
|
|
BLAKE2b-256 checksum How to use checksums |
83da7d0106ac0da793ce6114ccf04cbe4c6e852fff4d229bbf7f57c1886b1ff0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 4, 2026.
Transparency logRelease files / victron_ble_ha_parser-0.7.0-py3-none-any.whl
| Download URL | victron_ble_ha_parser-0.7.0-py3-none-any.whl |
|---|---|
| Size | 11.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4a67c98101f710560d038702344dc4397daef2829b3dadc945b7ec535a3bfd1c
|
|
BLAKE2b-256 checksum How to use checksums |
b8af0e19f6494f1bdece8c346b2cdc31cd11091c4c7ee9c47732e1118f8b482f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 4, 2026.
Transparency log