Skip to content

Latest commit

 

History

History
56 lines (36 loc) · 1.93 KB

File metadata and controls

56 lines (36 loc) · 1.93 KB

Dependencies

This project bundles external Python libraries in the data/ext/ directory for deployment to Venus OS systems, which typically lack internet access and package management tools.

Why Bundle Dependencies?

Venus OS (Cerbo GX, Venus GX, etc.) systems:

  • No pip or package manager - cannot install from PyPI
  • Limited/no internet access - especially in marine/RV environments
  • Immutable root filesystem - custom software must be self-contained

This approach follows the pattern used by Victron's own dbus-serialbattery project.

Bundled Libraries

velib_python

Architecture Note

This service uses the dbus-ble-advertisements router for BLE scanning. It does not directly interact with Bluetooth hardware - all BLE advertisements are received via D-Bus signals from the router service.

The SeeLevel protocol uses simple manufacturer data parsing (Cypress ID 305, SeeLevel ID 3264) and does not require encryption libraries.

Updating Dependencies

To update velib_python:

  1. Clone the latest version:

    git clone https://github.com/victronenergy/velib_python /tmp/velib_python
  2. Copy to data/ext/:

    cp -r /tmp/velib_python data/ext/
  3. Test on Venus OS to ensure compatibility

  4. Update this file with the new commit/version

For Developers

When developing locally, you can install velib_python from source:

git clone https://github.com/victronenergy/velib_python
export PYTHONPATH="${PYTHONPATH}:$(pwd)/velib_python"

The code will preferentially import from data/ext/velib_python/ when running on Venus OS.