Reads data from a Voltronic/MPPSolar inverter and publishes it to MQTT. Supports Home Assistant MQTT auto discovery. Right now this is still incomplete but the following works:
- publishing QPIGS, QPIRI, QDOP and QMOD values
- raw command receiver
- setting battery trigger capacities via PBCC, PBDC and PSDC
- setting output and charging source priorities
- setting maximum charging current
See https://github.com/jblance/mpp-solar/tree/master/docs/protocols for different Voltronic protocols and commands
Tested with a MPPSolar PIP5048GEW, an OrangePi Zero 2W and a CH340 USB to serial adapter from Aliexpress.
mvn cleanmvn package
(Check docker-build.sh if you want to build & docker build at the same time) Run build first. Then for running on a PI/ARM device:
docker build -t mpp-test-arm --platform linux/arm64 .docker save mpp-test-arm -o mpp-test-arm.tar- Copy
mpp-test-arm.tarfile to device - Run
docker load -i mpp-test-arm.taron device - Copy
mqtt.propertiesto device and adapt configuration to your MQTT broker - Copy
docker-compose.ymlto device and adapt devices section, first port should match your host port docker-compose upon device in the directory where docker-compose.yml is- You should see the log with something like "Published MQTT discovery configurations for Home Assistant"
- If everything is alright quit the application with CTRL+C and run in daemon mode with
docker-compose up -dto keep it running
Requirements:
- Home Assistant MQTT integration installed and connected to a MQTT broker
mqtt.propertiesconfigured to connect to that same MQTT brokertopicPrefixinmqtt.propertiesset tohomeassistant
HA should then automatically pick up the different published entities through its MQTT integration.
- implement more commands from inverter protocol manual