Programmatically read data from your Solar Inverter (Voltronic, Axpert, Mppsolar PIP, Voltacon, Effekta etc) and interface with Home Assistant via MQTT - Works with RS232 & USB!

I’m running all on one server. Any setting will do the trick? And I wonna thank you for your work on the improving ned-kelly’s repo. I switched to use your repo)

All in one? Also HA here?
Yes, in my Invertor, I change from appliance to ups or vice versa

As I posted earlier, i have connected my server via usb to the inverter so I ran voltronic-mqtt container also in the server. I even managed to get values in ha (except PV input watts, but this is not critical, as it can be easily calculated). Unfortunatelly, at some point inverter stops responding. I tried to change time in settings, but no result. Changed as you’ve said and have no luck. ( It’s so annoying when it was working and with no reason just stops…

It might be that your inverter is using a different protocoll. I also tried catalinbordan’s version, and
i was receiving exactly the same message “(NAKss” … after i started sniffing the communication between the SolarPower app and the inveter, i found out the protocol is different. Currently working to implement it. I have an EASUN Igrid SV4, which seems to be same as the Voltronic Infinisolar V
You could also try that to see what the messages look like.
or you could try
docker exec -it voltronic-mqtt bash -c /opt/inverter-cli/bin/inverter_poller -d -r ^P005PI

I’m also looking to connect an EG4 but I’m using a 6000EX-48HV. Have you have any luck? I’d imagine the setup would be simalar.

So my problem is not a new one ) There is a different baud rate of serial port between default linux config and inverter. As I understood, inverter supports ‘2400 raw’ baud rate (whatever it means). So there is a solution that worked for me

1 Like

Can you point out where somebody managed to change the baud rate on startup? I am having no luck.

Thanks

Where do you run your inverter-poller? Is this raspberry of smth else?

Yes, Rpi4, with debian 11 host.

If I open a minicomm session with 9600 baud rate, inverter communications works fine, but that baud rate does not stay after reboot and I’ve been unable to get it to stay using setserial etc.

I’ve used this for running script at start How to Run Script on Boot Up in Debian 11
I put script in /opt/<any_folder> and it works fine. Just not to forget set the script executable.

#!/bin/bash

sudo stty -F /dev/ttyUSB0 sane
sudo stty -F /dev/ttyUSB0 2400 raw -echo

exit 0

Not sure about ‘-echo’, most probably it’s redundant. This approach grants me connection to inverter after reboot. From the moment I configured this it works like charm.
I hope I understood you correctly that you are using Debian 11 on Rpi4.

1 Like

Heyhey @catalinbordan,

was tempering with mpp-solar python package and found out, that a custom protocol specification

( -P PI17)

is needed. Can this also be configured with your nice dockerized approach?

Thanks and regards

Jakob

I’ll be setting up the same unit as well a JBD BMS for monitoring the battery status. Any luck?

This worked for me, many thanks :slight_smile:

Hi guys,

I bought a new Voltronic inverter VM II Premium 2.5K since I burned the old one (Voltronic AXPERT VM 3000) In my config I am using (usb-rs232(rj45)):

device=/dev/ttyUSB0

qpiri=98
qpiws=36
qmod=5
qpigs=110

I tried various configs from the thread but had no success. For this one I’m getting:

Tue Jun 20 14:37:29 2023 INVERTER: Current CRC: B7 A9
Tue Jun 20 14:37:32 2023 INVERTER: QPIGS read timeout
Tue Jun 20 14:37:32 2023 INVERTER: QPIGS reply too short (7 bytes)
Tue Jun 20 14:37:32 2023 INVERTER: Current CRC: F8 54
Tue Jun 20 14:37:35 2023 INVERTER: QPIRI read timeout
Tue Jun 20 14:37:35 2023 INVERTER: QPIRI reply too short (7 bytes)
Tue Jun 20 14:37:35 2023 INVERTER: Current CRC: B4 DA
Tue Jun 20 14:37:38 2023 INVERTER: QPIWS read timeout
Tue Jun 20 14:37:38 2023 INVERTER: QPIWS reply too short (7 bytes)
Tue Jun 20 14:37:43 2023 INVERTER: Current CRC: 49 C1
Tue Jun 20 14:37:43 2023 INVERTER: QMOD reply size (5 bytes)

please help gonna go crazy :smiley:
@ned-kelly god of repository

I think your problem is with serial port baud rate. Try this Programmatically read data from your Solar Inverter (Voltronic, Axpert, Mppsolar PIP, Voltacon, Effekta etc) and interface with Home Assistant via MQTT - Works with RS232 & USB! - #689 by oleksii1
And read further discussion as you probably will want to set the right value on the server startup.
Default WatchPower app on Windows running with baud rate smth around 11k. I tried on Debian more then 2400 and it was not working.

Is there a way to get from the inverter data for the grid consumption? I see the grid voltage, but no grid current in protocol. Did someone manage to get this data? I think, this could be done somehow, as default app has dynamic depiction of energy flow coming from grid, but I just can’t figure this out.

Hi Jacob,
Probably yes, If I succeeded to do some small changes, you can do it with a proper documentation and a lot of time.

Hey @catalinbordan,

that would be great from my perspective as I already have got the commands to shoot against my inverter. So wüit would be perfect, you you’d expose the „inverter protocol“ and „command“ command :stuck_out_tongue_winking_eye:

I use a TP Link Kasa smart plug on the AC in line and track it that way.

Hi,
:slight_smile: I do not have it. Look for it on web. take a look on the esphome integration for mpp, if I remember correctly, on github they have a lot of documentations.