Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support mppt devices #9

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 13 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,32 @@
# VictronVEDirectArduino
# Victron VE.Direct Arduino library
Light-weight Arduino library to read basic data using the VE.Direct protocol from Victron Energy

Built as part of a larger project, now making it available separately in case others find it useful.

Setup:
- An Arduino(ish) board
- A Victron Energy device that sends serial data using the text version of the VE.Direct protocol
- An Arduino(ish) board, works on Particle devices like Particle Photon and Particle Argon
- A Victron Energy device that sends serial data using the text version of the VE.Direct protocol (little different values for different devices)
- A 5v to 3.3v serial converter (BMV is 3.3v - don't plug it directly into an Arduino!)
- Good to know is hat BMW-712 takes 3.3v in the VE.Direct port but the SmartSolar MPPT 75/15 need 5v to communicate on the VE.Direct port
- Plugged into the Arduino on a serial port (eg Serial1, Serial2 etc)
- See also: https://www.victronenergy.com/live/vedirect_protocol:faq
- Developed and tested with a BMV-700 battery monitor
- Distributed under an MIT license - see LICENCE.txt

- Developed and tested with: MPPT 75/15, MPPT 100/30, BMW-712

Provides:
- Access to basic energy readings - Volts, Power, Current, State of Charge (SOC)
- Access to the full protocol of VE.Direct variables like Power, Voltages, Panel Voltage and Panel Power depending on device.
- A diagnostic "full dump" of everything coming from the device

### Usage:
Code examples exists in the examples directory and the library you find in the src directory.

### Example of basic usage:
#include "VEDirect.h"

VEDirect my_bmv(Serial3);
VEDirect my_bmv(Serial1);

if my_bmv.begin() {
my_int32 = my_bmv.read(VE_SOC);
int32_t my_int32 = my_bmv.read(VE_SOC);
}

// VE_SOC, VE_VOLTAGE, VE_CURRENT, VE_POWER
// Data you can get: VE_FW, VE_VOLTAGE, VE_CURRENT, VE_VOLTAGE_PV, VE_POWER_PV, VE_STATE, VE_MPPT, VE_ERROR, VE_LOAD, VE_YIELD_TOTAL, VE_YIELD_TODAY, VE_POWER_MAX_TODAY, VE_YIELD_YESTERDAY, VE_POWER_MAX_YESTERDAY, VE_DAY_SEQUENCE_NUMBER, VE_LAST_LABEL, VE_SOC, VE_POWER, VE_ALARM

247 changes: 0 additions & 247 deletions VEDirect.cpp

This file was deleted.

41 changes: 0 additions & 41 deletions VEDirect.h

This file was deleted.

56 changes: 0 additions & 56 deletions example.ino

This file was deleted.

Empty file.
Loading