#solar #serial #parser #vedirect


Library to parse the Victron Energy VE.Direct protocol and map the data to useful structs with clear units

2 unstable releases

0.2.0 Apr 24, 2022
0.1.0 Apr 3, 2020

#5 in #solar


782 lines

VE.Direct library for Rust

crates.io badge docs.rs badge

Library to parse the Victron Energy "VE.Direct" protocol and map the data to useful structs with clear units.

Can be used in conjuction with the serial library to pull battery status information from devices like the BMV 700, or solar charging data from the Victron's various MPPT solar charge controllers.


Developed using a VE.Direct to USB interface cable to a BMV 700. Should work identically with any other connection method to the device (such as the VE.Direct to serial adapters)

Cross compiled to use on a Raspberry Pi Zero W.

Based of the VE.Direct-Protocol-3.27.pdf.

Currently only implements the "Text-mode" (read only) interface,

The VE.Direct interface includes two modes: Text-mode and the HEX-mode. The purpose of the Text-mode is to make retrieving information extremely simple. The product will periodically transmit all run-time fields. The HEX-mode allows not only to read data but also write data, for example, change settings.


Functional and reasonably well tested. Main limitation is that not all devices are handled, only the BMV battery monitor and solar charge controllers


~31K SLoC