Greetings everyone.
I'm hoping someone can give me a hand to read RS485 data from my Pylontech batteries.
I have connected my Pylontech batteries (4x US3000) to a Raspberry Pi through a RS485 cable connected to a USB to RS485 converter.
I am running the Pyloncom.py software (downloaded pylon485-elbow.zip from this post). I had to change the baud rate in the software to 9600 before I could get any readings, but after that change it managed to detect the 4 batteries and retrieve data from them.
The problem is that the data I am receiving does not look accurate, particularly the BatterySOC reading and the RemainingAh readings. What is even more strange is that 2 of the batteries have very different readings to the other two, even though the status lights on the front of the batteries are all the same.
I assume this may be because the software was written for US2000's and not US3000 but I'm not 100% sure.
I've included some sample readings below.
Much appreciated if anyone has any ideas as to what could be causing this.
*** We found batteries at: [2, 3, 4, 5]
*** BatteryInfo: {2: {'serialNumber': <pylonpacket.PPSeriesNumber object at 0xb637ad10>, 'adr': 2, 'systemParams': <pylonpacket.PPSystemParameter object at 0xb637ac90>}, 3: {'serialNumber': <pylonpacket.PPSeriesNumber object at 0xb637add0>, 'adr': 3, 'systemParams': <pylonpacket.PPSystemParameter object at 0xb637a170>}, 4: {'serialNumber': <pylonpacket.PPSeriesNumber object at 0xb637ae90>, 'adr': 4, 'systemParams': <pylonpacket.PPSystemParameter object at 0xb637ad90>}, 5: {'serialNumber': <pylonpacket.PPSeriesNumber object at 0xb637af50>, 'adr': 5, 'systemParams': <pylonpacket.PPSystemParameter object at 0xb637ae50>}}
Conecting to addr 2
Get charge info reply, addr 2 : 02d002b7980025fe8ec0
VER: 0x20, ADR: 0x02, CID1: 0x46, CID2: 0x00, LENGTH: 20, len(INFO): 10, CHKSUM: 0xF937
> VoltageUpLimit: 53.25, VoltageDownLimit: 47.0, MaxChargeCurrent: 3.7, MaxDischargeCurrent: -37.0, Status: 0xc0
Get analog: VER: 0x20, ADR: 0x02, CID1: 0x46, CID2: 0x42, LENGTH: 2, len(INFO): 1, CHKSUM: 0x0000, Command: 2
Get analog reply, addr 2 : VER: 0x20, ADR: 0x02, CID1: 0x46, CID2: 0x00, LENGTH: 122, len(INFO): 61, CHKSUM: 0xE1E4
> CellsCount: 15, TemperaturesCount: 5
> TotalCurrent: 127.900A, TotalVoltage: 65.280V, RemainingCapacity: 6.401Ah, P: 8349.31
> Quantity: 33, TotalCapacity: 4.097Ah, Cycles: 8464
> CellVoltages: [3.509, 3.509, 3.495, 3.51, 3.508, 3.511, 3.509, 3.509, 3.509, 3.51, 3.51, 3.509, 3.509, 3.509, 3.507]
> Temperatures: [29.0, 26.0, 26.0, 26.0, 25.0]
Send { "time":1617012789, "VoltageUpperLimit":53.25, "VoltageLowerLimit":47.0, "MaxChargeAmps":3.7, "MaxDischargeAmps":-37.0, "BatteryCycles":8464, "BatteryVoltage":65.28, "BatteryAmps":127.9, "BatteryWatts":8349.312, "BatterySOC":12.802, "RemainingAh":6.401, "RemainingWh":319, "MinutesToRun":9999, "CellMaxVoltage":3.7, "CellLowVoltage":3.05, "CellUnderVoltage":2.9, "cellVoltage0":3.509, "cellVoltage1":3.509, "cellVoltage2":3.495, "cellVoltage3":3.51, "cellVoltage4":3.508, "cellVoltage5":3.511, "cellVoltage6":3.509, "cellVoltage7":3.509, "cellVoltage8":3.509, "cellVoltage9":3.51, "cellVoltage10":3.51, "cellVoltage11":3.509, "cellVoltage12":3.509, "cellVoltage13":3.509, "cellVoltage14":3.507, "highestCellVoltage":3.511, "lowestCellVoltage":3.495, "cellImbalancePct":0.4, "temp0":29.0, "temp1":26.0, "temp2":26.0, "temp3":26.0, "temp4":25.0, "highestTemp":29.0, "lowestTemp":25.0 } to emon/pylonPPTAH02130415644
Conecting to addr 3
Get charge info reply, addr 3 : 03d002b7980025fe8ec0
VER: 0x20, ADR: 0x03, CID1: 0x46, CID2: 0x00, LENGTH: 20, len(INFO): 10, CHKSUM: 0xF935
> VoltageUpLimit: 53.25, VoltageDownLimit: 47.0, MaxChargeCurrent: 3.7, MaxDischargeCurrent: -37.0, Status: 0xc0
Get analog: VER: 0x20, ADR: 0x03, CID1: 0x46, CID2: 0x42, LENGTH: 2, len(INFO): 1, CHKSUM: 0x0000, Command: 3
Get analog reply, addr 3 : VER: 0x20, ADR: 0x03, CID1: 0x46, CID2: 0x00, LENGTH: 122, len(INFO): 61, CHKSUM: 0xE184
> CellsCount: 15, TemperaturesCount: 5
> TotalCurrent: 127.900A, TotalVoltage: 65.280V, RemainingCapacity: 5.889Ah, P: 8349.31
> Quantity: 33, TotalCapacity: 4.097Ah, Cycles: 8464
> CellVoltages: [3.503, 3.509, 3.509, 3.509, 3.51, 3.51, 3.511, 3.498, 3.511, 3.51, 3.51, 3.51, 3.511, 3.511, 3.51]
> Temperatures: [28.0, 26.0, 26.0, 26.0, 25.0]
Send { "time":1617012790, "VoltageUpperLimit":53.25, "VoltageLowerLimit":47.0, "MaxChargeAmps":3.7, "MaxDischargeAmps":-37.0, "BatteryCycles":8464, "BatteryVoltage":65.28, "BatteryAmps":127.9, "BatteryWatts":8349.312, "BatterySOC":11.777999999999999, "RemainingAh":5.889, "RemainingWh":294, "MinutesToRun":9999, "CellMaxVoltage":3.7, "CellLowVoltage":3.05, "CellUnderVoltage":2.9, "cellVoltage0":3.503, "cellVoltage1":3.509, "cellVoltage2":3.509, "cellVoltage3":3.509, "cellVoltage4":3.51, "cellVoltage5":3.51, "cellVoltage6":3.511, "cellVoltage7":3.498, "cellVoltage8":3.511, "cellVoltage9":3.51, "cellVoltage10":3.51, "cellVoltage11":3.51, "cellVoltage12":3.511, "cellVoltage13":3.511, "cellVoltage14":3.51, "highestCellVoltage":3.511, "lowestCellVoltage":3.498, "cellImbalancePct":0.3, "temp0":28.0, "temp1":26.0, "temp2":26.0, "temp3":26.0, "temp4":25.0, "highestTemp":28.0, "lowestTemp":25.0 } to emon/pylonPPTAH02130332084
Conecting to addr 4
Get charge info reply, addr 4 : 04d002b7980025fe8ec0
VER: 0x20, ADR: 0x04, CID1: 0x46, CID2: 0x00, LENGTH: 20, len(INFO): 10, CHKSUM: 0xF933
> VoltageUpLimit: 53.25, VoltageDownLimit: 47.0, MaxChargeCurrent: 3.7, MaxDischargeCurrent: -37.0, Status: 0xc0
Get analog: VER: 0x20, ADR: 0x04, CID1: 0x46, CID2: 0x42, LENGTH: 2, len(INFO): 1, CHKSUM: 0x0000, Command: 4
Get analog reply, addr 4 : VER: 0x20, ADR: 0x04, CID1: 0x46, CID2: 0x00, LENGTH: 122, len(INFO): 61, CHKSUM: 0xE18B
> CellsCount: 15, TemperaturesCount: 5
> TotalCurrent: 127.900A, TotalVoltage: 65.280V, RemainingCapacity: 24.065Ah, P: 8349.31
> Quantity: 33, TotalCapacity: 4.097Ah, Cycles: 8464
> CellVoltages: [3.506, 3.508, 3.501, 3.512, 3.509, 3.51, 3.507, 3.508, 3.514, 3.511, 3.513, 3.513, 3.512, 3.511, 3.512]
> Temperatures: [29.0, 25.0, 25.0, 25.0, 25.0]
Send { "time":1617012792, "VoltageUpperLimit":53.25, "VoltageLowerLimit":47.0, "MaxChargeAmps":3.7, "MaxDischargeAmps":-37.0, "BatteryCycles":8464, "BatteryVoltage":65.28, "BatteryAmps":127.9, "BatteryWatts":8349.312, "BatterySOC":48.13, "RemainingAh":24.065, "RemainingWh":1202, "MinutesToRun":9999, "CellMaxVoltage":3.7, "CellLowVoltage":3.05, "CellUnderVoltage":2.9, "cellVoltage0":3.506, "cellVoltage1":3.508, "cellVoltage2":3.501, "cellVoltage3":3.512, "cellVoltage4":3.509, "cellVoltage5":3.51, "cellVoltage6":3.507, "cellVoltage7":3.508, "cellVoltage8":3.514, "cellVoltage9":3.511, "cellVoltage10":3.513, "cellVoltage11":3.513, "cellVoltage12":3.512, "cellVoltage13":3.511, "cellVoltage14":3.512, "highestCellVoltage":3.514, "lowestCellVoltage":3.501, "cellImbalancePct":0.3, "temp0":29.0, "temp1":25.0, "temp2":25.0, "temp3":25.0, "temp4":25.0, "highestTemp":29.0, "lowestTemp":25.0 } to emon/pylonPPTAH02139910383
Conecting to addr 5
Get charge info reply, addr 5 : 05d002b7980025fe8ec0
VER: 0x20, ADR: 0x05, CID1: 0x46, CID2: 0x00, LENGTH: 20, len(INFO): 10, CHKSUM: 0xF931
> VoltageUpLimit: 53.25, VoltageDownLimit: 47.0, MaxChargeCurrent: 3.7, MaxDischargeCurrent: -37.0, Status: 0xc0
Get analog: VER: 0x20, ADR: 0x05, CID1: 0x46, CID2: 0x42, LENGTH: 2, len(INFO): 1, CHKSUM: 0x0000, Command: 5
Get analog reply, addr 5 : VER: 0x20, ADR: 0x05, CID1: 0x46, CID2: 0x00, LENGTH: 122, len(INFO): 61, CHKSUM: 0xE1AE
> CellsCount: 15, TemperaturesCount: 5
> TotalCurrent: 127.900A, TotalVoltage: 65.280V, RemainingCapacity: 22.785Ah, P: 8349.31
> Quantity: 33, TotalCapacity: 4.097Ah, Cycles: 8464
> CellVoltages: [3.511, 3.506, 3.511, 3.51, 3.509, 3.505, 3.507, 3.507, 3.511, 3.512, 3.5, 3.512, 3.513, 3.513, 3.512]
> Temperatures: [28.0, 25.0, 25.0, 25.0, 25.0]
Send { "time":1617012793, "VoltageUpperLimit":53.25, "VoltageLowerLimit":47.0, "MaxChargeAmps":3.7, "MaxDischargeAmps":-37.0, "BatteryCycles":8464, "BatteryVoltage":65.28, "BatteryAmps":127.9, "BatteryWatts":8349.312, "BatterySOC":45.57, "RemainingAh":22.785, "RemainingWh":1138, "MinutesToRun":9999, "CellMaxVoltage":3.7, "CellLowVoltage":3.05, "CellUnderVoltage":2.9, "cellVoltage0":3.511, "cellVoltage1":3.506, "cellVoltage2":3.511, "cellVoltage3":3.51, "cellVoltage4":3.509, "cellVoltage5":3.505, "cellVoltage6":3.507, "cellVoltage7":3.507, "cellVoltage8":3.511, "cellVoltage9":3.512, "cellVoltage10":3.5, "cellVoltage11":3.512, "cellVoltage12":3.513, "cellVoltage13":3.513, "cellVoltage14":3.512, "highestCellVoltage":3.513, "lowestCellVoltage":3.5, "cellImbalancePct":0.3, "temp0":28.0, "temp1":25.0, "temp2":25.0, "temp3":25.0, "temp4":25.0, "highestTemp":28.0, "lowestTemp":25.0 } to emon/pylonPPTAH02139910739