Skip to content

Bug found - Samsung BMS #95

Open
Open
@chuotde

Description

My setup:

  • Inverter: Solis S5-EH1P5K-L
  • Battery: 2x Samsung ELPM482-00005 in parallel
  • RPi with 2-CAN HAT, can0: BMS, can1: inverter
  • BMS-to-Inverter configuration: can0: SAMSUNG_CAN; can1: PYLON_CAN

Issue: Discharge current limit sent to inverter is wrong, inverter sees it as 645.9A

can0 dump: can0 502 [8] 45 02 AC 03 AC 03 C0 01 --> charge and discharge limit are the same 0x3AC
can1 dump: can1 351 [8] 45 02 AC 03 54 FC C0 01 --> discharge limit is 0xFC54 (64596)

Bug found in: SamsungBmsCANProcessor.java, line 151

pack.maxPackDischargeCurrent = data.getChar() * -1; --> should not times the value by -1, (0x3AC + 0xFC54 = 0x10000)

Can you please fix it? Many thanks.

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions