ros_mppt repository

Repository Summary

Checkout URI
VCS Type git
VCS Version master
Last Updated 2019-09-21
CI status No Continuous Integration
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)


Name Version
ros_mppt 0.1.1


MPPT ROS Package

License: GPL v3 made-with-python Maintenance Documentation Status Build Status

ROS package for Victron Energy MPPT devices via VE-Direct Protocol from serial USB


This repository is part of my end-of-degree project as mechanical engineer at University of Almería in Spain. The aim of this project is to install a PV system into an electric vehicle, creating a data sender from the MPPT device into the ros-system.

How it works

MPPT Connection

This software is tested with a VE.Direct to USB Interface cable

Topic publisher

At the moment, it sends the most important data from the ve-direct protocol, which are defined in mppt.msg:

  • Battery Voltage (v_bat) - float64
  • Battery Current (i_bat) - float64
  • Solar Panels Voltage (v_pv) - float64
  • Solar Panel Power (p_pv) - float64

Installing the package

Install the package from the distro repo (kinetic)

sudo apt-get install ros-kinetic-ros_mppt

Or you can also clone the package from github repo into your catkin workspace and build as usual

$ git clone

Customize the sender packets

Depending on the interested values from the serial communication interface, it is possible to define more values into the package.

Check the ros_mppt documentation to learn how to define more values.

MPPT valid values:

Implemented Label Units Description
V mV Main (battery) voltage
I mA Battery current
VPV mV Panel voltage
PPV W Panel power
- PID - Product ID
- SER# - Serial Number
- HSDS - Day sequence number (0...364)
- MPPT - Tracker operation mode
- ERR - Error code
- CS - State of operation
- H19 0.01 kW/h Yield Total (user resettable counter)
- H20 0.01 kW/h Yield today
- H21 W Maximum power today
- H22 0.01 kW/h Yield yesterday
- H23 W Maximum power yesterday



My other repositories for MPPT data management

VE Direct MPPT data reader

Visit this repository if you are looking for a ve-direct protocol registration into a file (in this case, in a .xls file)

VE.Direct Protocol Documentation


  • [x] Custom ros messages sender (mppt topic)
  • [x] Log system
  • [ ] Automatic USB port identification
  • [ ] Disconnection handler with timeout requests


ros_mppt is licensed under the GNU General Public License v3.0, detailed in the LICENSE file.


No found.