Skip to content

Arduino library to read data over serial using the VE.Direct protocol from Victron Energy devices

License

Notifications You must be signed in to change notification settings

opensensingau/VeDirectDecode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VeDirectDecode Arduino Library

A fast Arduino library to decode serial data adhering to the VE.Direct protcol from Victron Energy devices.

It was created as the existing libraries seemed extremely slow. VeDirectDecode takes ~0.9ms for getData() to complete on a P1AM-100 (~Arduino MKR Zero) device.

Tested mainly on several Victron Energy SmartSolar MPPT 75/10 and 75/15 devices but should work with any Victron Energy device that uses the VE.Direct protocol.

MCU's tested:

  • Arduino MKR Zero
  • Arduino MKR WIFI 1010
  • Arduino MKR WAN 1310
  • AutomationDirect P1AM-100

Overview

NOTE: The Victron Energy devices are 3.3v. If you are using a 5v Arduino you must use a 5V to 3.3V logic level converter.

Interface

  • Read any parameter you would like with the getParam() function
  • Read a bunch of usefull parameters with the getData() function

Example

#include "VeDirectDecode.h"

void setup(){
    VeDirectDecode test{&Serial1};

    int32_t batVoltage = 0;
    int32_t batCurrent = 0;
    int32_t loadCurrent = 0;
    int32_t loadState = 0;
    int32_t panelVoltage = 0;
    int32_t panelPower = 0;
    int32_t converterState = 0;
    int32_t maxPowerToday = 0;

    while(1){
        test.getData(batVoltage, batCurrent, loadCurrent, loadState, panelVoltage, panelPower, converterState, maxPowerToday);
    }
}

Wiring info

Pinout for the serial connector on the VE.Direct cable:

Victron MPPT VeDirect pinout

Both an USB-adapter and RS-232 DB9 cable can be purchased from Victron. For DIY cables the 4-pin JST PH 2.0 connector is used.

Commong cable pinout for Victron Energy VE.Direct cables:

Victron Energy VE.Direct Cable Diagram

Resources

About

Arduino library to read data over serial using the VE.Direct protocol from Victron Energy devices

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages