Wiebo
Members
-
Joined
-
Last visited
Reputation Activity
-
Wiebo reacted to riogrande75 in Infinisolar / MPI 10K / Voltronic hybrid inverter and BMS communication with DIY battery@stefanschoenmaker Yes, I guess this could fix your issue.
@Wiebo Nice work! Smartmeter connection should be a simple task compared what you've done already. But as far as I understand, you are simple rebuiling the dual-modbus-server from voltronic, right?
I remember I planned something similar too, some month ago. I added wifi and BT to make it possible to communicate with other BMS (old jk-bms with BT connection) and push all data to mqtt for my HA. I added a webif for simple changes (ip, etc.) too.
Design and code were done within some hours (thx to AI), but I've never cobbled together all components.
-
Wiebo reacted to stefanschoenmaker in Infinisolar / MPI 10K / Voltronic hybrid inverter and BMS communication with DIY batteryYou are a genius. I wish i coul do the same. I have a cfe battery. Because of the distance there is a voltage difference and i never reach 100%. Could this bms communication fix this?
-
Wiebo got a reaction from riogrande75 in Infinisolar / MPI 10K / Voltronic hybrid inverter and BMS communication with DIY batteryThis is the design. Time to build it...
-
Wiebo reacted to riogrande75 in Infinisolar / MPI 10K / Voltronic hybrid inverter and BMS communication with DIY batteryI always wanted that my 280Ah/16S LiFePo4 battery pack with it's JK BMS fully communicates with my MPI 10k inverter.
Because I did not find any hints regarding this in the net, I started reverse engineering the official BMS card from voltronic, designed for pylontech batteries.
Conclusion: You simply need to send a ^D054BMS... string periodically to the inverter.
Format looks like this:
I created a script to read bms data from a mqtt server (I used a ESP32 to read from JK BMS, any others BMS should be possible with little adaptions) and create the ^D054BMS string that can be sent to the inverter: readmqttbms.php
Sending this periodical to the inverter (I adapted my script infinipoll10k) let's the display show the "LI-bAt" and battery values read from BMS.
The inverter get's informed about BMS stoped charging/discharging and can react correctly:
Reading the actual bms values from the inverter can be done with the ^P004BMS<CR> command.
There are for sure some values that I missed so far (e.g.the bms fault codes), but I do not own a pylontech battery, so reverese engineering without help from others is impossible.
-
Wiebo got a reaction from riogrande75 in Pylontech protocolMeanwhile got the whole thing running on a small PCB standard trough-hole PCB. Still wired bc my final PCB needs to be drawn first. It's based on a PIC16F88 and draws its power directly from the serial connector of the inverter. Just plug it in in the inverter, and the RS485 cable and it works.
4 LED's:
- Green = Power (Power blinking = no BMS connected, constantly on = communication is OK)
- Yellow 1 = Communication with BMS
- Yellow 2 = Communication with Inverter
- Red = Error
Still bebugging tough. Some values need to be calculated but the main code works flawlessly.
Does anybody know how you handle the warnings? My inverter does not respond on any inputs i tried