diyBMSv4ESP32
diyBMSv4ESP32 copied to clipboard
CAN BUS communication
I was testing some firmware with meningd and noticed that the controller does not send the appropriate alarms to the inverter. No mater what fault condition I trigger the controller sends a charge prevented message and the inverter stops charging but no fault codes are displayed on the inverter. I also tested with the latest release here on GitHub so I can rule out any firmware modification mistakes and the behavior is the same. The inverter in question is a Growatt SPF5000ES and is able to display the following errors when connected via can bus:
1. Battery is over-charged 2. Cell over voltage 3. Cell under voltage 4. Total over voltage 5. Total under voltage 6. Discharge over voltage 7. Charge over voltage 8. Discharge over temperature 9. Charge over temperature 10. Mosfet over temperature 11. Battery over temperature 12. Battery under temperature 13. System shut down
The fault codes are implemented and this is a bug , or they are not and the controller just sends a charge prevented without triggering a fault code on the inverter ?
I tested the above mentioned inverter with a pylontech battery and the fault codes are displayed immediately.
Also since i had more time to play with the BMS and can bus communication I noticed the if I change the charge current , activate the charge prevented option , or manually triggering a total pack / cell overvoltage condition or any other fault the controller is sending a charge prevented immediately but it takes 30 seconds to 1 minute for the inverter to respond and act accordingly. I do not know if it is a bug or intended to work this way , but with a pylontech battery the inverter responds immediately. I tested with short can bus cable (10cm) and long cable , same behavior. Is not a big deal , just asking for my knowledge.