Everything posted by googy
-
BMS communication with Axpert MAX
Just for completeness, here is my Proof of Concept implementation of the LiB protocol. lib_protocol.zip BMS communication protocol 20201202(2).pdf
-
BMS communication with Axpert MAX
Thank You @Coulomb , then I will stick to LiB as it supports all I really need. Most critical is start and stop discharging, all other are just nice to have. I flashed my with 02.61 from https://www.ostrovni-elektrarny.cz/support/Axpert/FW/
-
BMS communication with Axpert MAX
Tried Soltaro, worked at first shot. while true; do cansend can0 00001872#33.02.D3.01.2C.01.90.01; sleep 1; cansend can0 00001874#29.02.00.00.21.00.00.01; sleep 1; done I can force inverter stop charging only by sending cansend can0 00001876#01.00.00.00.00.00.00.00 cansend can0 0000187B#00.00.00.00.00.00.00.00 cansend can0 0000187B#00.00.00.00.00.00.00.00 cansend can0 0000187B#00.00.00.00.00.00.00.00 Inverter sets warning 69 and stops charging. But I can't stop discharging, Inverter displays Warning 60, but output stays on (no AC input connected). cansend can0 00001875#E0.E0.E0.E0.E0.E0.E0.E0 cansend can0 00001876#E0.E0.00.00.00.00.00.00 cansend can0 0000187B#00.00.00.00.00.00.00.00 cansend can0 0000187B#00.00.00.00.00.00.00.00 cansend can0 0000187B#00.00.00.00.00.00.00.00 Can't verify if charging stops, because no AC input connected and not enough sun now, but graphical powerflow symbols show charging and discanrging stays on. For reference in the LiB protocol: charge disable + discharge enable -> warning 69, works as it should, also the powerflow symbols do confirm MPPT charger is disabled charge disable + discharge disable -> warning 60, does not work, just like Soltaro above, everything stays on charge enable + discharge disable -> warning 71, works as it should, MPPT is on and DC/AC is off, no output voltage and you hear relays switching PS: firmware is 41.17 and 02.61
-
BMS communication with Axpert MAX
Sorry, my fault. I ment maximum charge current. WatchPower always shows 10A no matter what I am sending. my VM III panel is at 02.61, just tried, my panel shows low battery warning if the SOC is >= 0x000F, completelly ignoring the battery voltage sent @Coulomb I think you are right. Battery voltage is not at the last two bytes. I think I stop experimenting on Weco, unless I can find 02.66 firmware for the VM III panel. Not sure if 02.66 from King does work for my panel. Don't want to destoy it updating. @Coulomb You have uploaded 02.66 and mentioned VM III, has someone verified it fits VM III panel?
-
BMS communication with Axpert MAX
Tried Weco CAN, used the findings from @Coulomb as reference 100kbps I was able to set max and min voltage. highest discharge cut off voltage you can set is 48.0V. Higher values will be trimmed to 48V. Byte1: 0x02; Byte0: 0x38 0x0238 = 568 -> 56.8V max charge voltage Byte5: 0x01; Byte4: 0xDF 0x01DF = 479 -> 47.9V discharge cutoff voltage while true; do cansend can0 00000101#38.02.F4.01.DF.01.F4.01; sleep 1; done setting max discharge curent is not working, tried different value, inverter sets 10A. I think 10A is a safe fallback setting, because of an invalid value. expected: Byte3: 0x01; Byte2: 0xF4; 0x01F4 = 500 -> 50.0A, does not work while true; do cansend can0 00000201#FA.00.00.00.00.00.1C.02; sleep 1; done Byte0: 0xFA = 250; 250 / 2,5 = 100 -> 100% charge 0xB4 = 180; 180/2,5=72 -> 72% charge Byte1 also does influence the result, so you can go easily over 230%, I did not test exactly, whitch bits are used. I think you can go to 255% till it overflows. For example 0xF3F displays 25% in the WatchPower app. Bytes 7 and 6 seams to be the Battery voltage. Without this 201 message inverter displays 04 Low Baterry warning. As soon as I set it for example to 0x021C = 540; 54.0V the Error is gone. That's it for now. Did not test other messages.
-
BMS communication with Axpert MAX
Hi @dropkick ! I do write mostly C. I like to use python for prototyping on PC. Later I am going to implement it on a ESP32-C3 connected to my home automation system by CAN/TWAI. I had the remote panel on my MV III open and noted the pinout on the BMS connector: ? ? D- ? D+ CANH CANL GND ?: Power und Relay to Generator DryContact, no idea what it is ment for. As I do not use the drycontact, I did no further investigation.
-
BMS communication with Axpert MAX
Thank You all I also was lookong for more Informattion on Pylontech RS485 and stumbled over this topic. As I found more information, I wanted to share. Here is some stuff on Soltaro RS485, but I can't use it. Soltaro CAN would be much nicer. https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.battery.soltaro/doc And maybe something for SMA https://community.openenergymonitor.org/uploads/short-url/4CXbIEEWHE0fe4fLejyJ76h4zFP.pdf
-
BMS communication with Axpert MAX
I was trying something similar. Finaly found someone posted Inverter-Battery conversation on the arduino forum: https://forum.arduino.cc/t/rs485-modbus-between-solar-charger-inverter-and-battery-setup/602331/11 If I do not reply on the 0x61 message, my inverter EaSun iSolar SMV III / Axper VM III asks three times after boot and does not ask again and shows no errors. Implemented a small Python prototype as proof of concept. The goal is to integrate it some day into diyBMS. pylon_RS485_working.zip