Louisvdw / dbus-serialbattery

Battery Monitor driver for serial battery in VenusOS GX systems
MIT License
539 stars 165 forks source link

Battery does not charge until cutoff 55,2v anymore #707

Closed dersch81 closed 1 year ago

dersch81 commented 1 year ago

Describe the bug

After uprading to the latest release the battery stopps charging at ~55,12 v but the end voltage should be 55,2 v.

image

How to reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior

Charge until 55.2 overall voltage

Driver version

1.0.20230531

Venus OS device type

Raspberry Pi

Venus OS version

v2,94

BMS type

Smart BMS (LLT, JBD, Overkill Solar)

Cell count

16s3p

Connection type

Serial USB adapter to TTL

Config file

cat /data/etc/dbus-serialbattery/config.default.ini
[DEFAULT]

; --------- Battery Current limits ---------
MAX_BATTERY_CHARGE_CURRENT    = 50.0
MAX_BATTERY_DISCHARGE_CURRENT = 60.0

; --------- Cell Voltages ---------
; Description: Cell min/max voltages which are used to calculate the min/max battery voltage
; Example: 16 cells * 3.45V/cell = 55.2V max charge voltage. 16 cells * 2.90V = 46.4V min discharge voltage
MIN_CELL_VOLTAGE   = 2.900
; Max voltage can seen as absorption voltage
MAX_CELL_VOLTAGE   = 3.450
FLOAT_CELL_VOLTAGE = 3.375

; --------- Bluetooth BMS ---------
; Description: List the Bluetooth BMS here that you want to install
; -- Available Bluetooth BMS:
; Jkbms_Ble, LltJbd_Ble
; Example:
;     1 BMS: Jkbms_Ble C8:47:8C:00:00:00
;     3 BMS: Jkbms_Ble C8:47:8C:00:00:00, Jkbms_Ble C8:47:8C:00:00:11, Jkbms_Ble C8:47:8C:00:00:22
BLUETOOTH_BMS =

; --------- BMS disconnect behaviour ---------
; Description: Block charge and discharge when the communication to the BMS is lost. If you are removing the
;              BMS on purpose, then you have to restart the driver/system to reset the block.
; False: Charge and discharge is not blocked on BMS communication loss
; True: Charge and discharge is blocked on BMS communication loss, it's unblocked when connection is established
;       again or the driver/system is restarted
BLOCK_ON_DISCONNECT = False

; --------- Charge mode ---------
; Choose the mode for voltage / current limitations (True / False)
; False is a step mode: This is the default with limitations on hard boundary steps
; True is a linear mode:
;     For CCL and DCL the values between the steps are calculated for smoother values (by WaldemarFech)
;     For CVL max battery voltage is calculated dynamically in order that the max cell voltage is not exceeded
LINEAR_LIMITATION_ENABLE = True

; Specify in seconds how often the linear values should be recalculated
LINEAR_RECALCULATION_EVERY = 60
; Specify in percent when the linear values should be recalculated immediately
; Example: 5 for a immediate change, when the value changes by more than 5%
LINEAR_RECALCULATION_ON_PERC_CHANGE = 5

; --------- Charge Voltage limitation (affecting CVL) ---------
; Description: Limit max charging voltage (MAX_CELL_VOLTAGE * cell count), switch from max voltage to float
;              voltage (FLOAT_CELL_VOLTAGE * cell count) and back
;     False: Max charging voltage is always kept
;     True: Max charging voltage is reduced based on charge mode
;         Step mode: After max voltage is reached for MAX_VOLTAGE_TIME_SEC it switches to float voltage. After
;                    SoC is below SOC_LEVEL_TO_RESET_VOLTAGE_LIMIT it switches back to max voltage.
;         Linear mode: After max voltage is reachend and cell voltage difference is smaller or equal to
;                      CELL_VOLTAGE_DIFF_KEEP_MAX_VOLTAGE_UNTIL it switches to float voltage after 300 (fixed)
;                      additional seconds.
;                      After cell voltage difference is greater or equal to CELL_VOLTAGE_DIFF_TO_RESET_VOLTAGE_LIMIT
;                      OR
;                      SoC is below SOC_LEVEL_TO_RESET_VOLTAGE_LIMIT
;                      it switches back to max voltage.
; Example: The battery reached max voltage of 55.2V and hold it for 900 seconds, the the CVL is switched to
;          float voltage of 53.6V to don't stress the batteries. Allow max voltage of 55.2V again, if SoC is
;          once below 90%
;          OR
;          The battery reached max voltage of 55.2V and the max cell difference is 0.010V, then switch to float
;          voltage of 53.6V after 300 additional seconds to don't stress the batteries. Allow max voltage of
;          55.2V again if max cell difference is above 0.080V or SoC below 90%.
; Charge voltage control management enable (True/False).
CVCM_ENABLE = True

; -- CVL reset based on cell voltage diff (linear mode)
; Specify cell voltage diff where CVL limit is kept until diff is equal or lower
CELL_VOLTAGE_DIFF_KEEP_MAX_VOLTAGE_UNTIL = 0.010
; Specify cell voltage diff where CVL limit is reset to max voltage, if value get above
; the cells are considered as imbalanced, if the cell diff exceeds 5% of the nominal cell voltage
; e.g. 3.2 V * 5 / 100 = 0.160 V
CELL_VOLTAGE_DIFF_TO_RESET_VOLTAGE_LIMIT = 0.080

; -- CVL reset based on SoC option (step mode)
; Specify how long the max voltage should be kept, if reached then switch to float voltage
MAX_VOLTAGE_TIME_SEC = 900
; Specify SoC where CVL limit is reset to max voltage, if value gets below
SOC_LEVEL_TO_RESET_VOLTAGE_LIMIT = 90

; --------- Cell Voltage Current limitation (affecting CCL/DCL) ---------
; Description: Maximal charge / discharge current will be in-/decreased depending on min and max cell voltages
; Example: 18 cells * 3.55V/cell = 63.9V max charge voltage
;          18 cells * 2.70V/cell = 48.6V min discharge voltage
;          But in reality not all cells reach the same voltage at the same time. The (dis)charge current
;          will be (in-/)decreased, if even ONE SINGLE BATTERY CELL reaches the limits

; Charge current control management referring to cell-voltage enable (True/False).
CCCM_CV_ENABLE = True
; Discharge current control management referring to cell-voltage enable (True/False).
DCCM_CV_ENABLE = True

; Set steps to reduce battery current
; The current will be changed linear between those steps if LINEAR_LIMITATION_ENABLE is set to True
CELL_VOLTAGES_WHILE_CHARGING   = 3.55, 3.50, 3.45, 3.30
MAX_CHARGE_CURRENT_CV_FRACTION =    0, 0.05,  0.5,    1

CELL_VOLTAGES_WHILE_DISCHARGING   = 2.70, 2.80, 2.90, 3.10
MAX_DISCHARGE_CURRENT_CV_FRACTION =    0,  0.1,  0.5,    1

; --------- Temperature limitation (affecting CCL/DCL) ---------
; Description: Maximal charge / discharge current will be in-/decreased depending on temperature
; Example: The temperature limit will be monitored to control the currents. If there are two temperature senors,
;          then the worst case will be calculated and the more secure lower current will be set.
; Charge current control management referring to temperature enable (True/False).
CCCM_T_ENABLE = True
; Charge current control management referring to temperature enable (True/False).
DCCM_T_ENABLE = True

; Set steps to reduce battery current
; The current will be changed linear between those steps if LINEAR_LIMITATION_ENABLE is set to True
TEMPERATURE_LIMITS_WHILE_CHARGING = 0,   2,   5,  10,  15, 20, 35,  40, 55
MAX_CHARGE_CURRENT_T_FRACTION     = 0, 0.1, 0.2, 0.4, 0.8,  1,  1, 0.4,  0

TEMPERATURE_LIMITS_WHILE_DISCHARGING = -20,   0,   5,  10, 15, 45, 55
MAX_DISCHARGE_CURRENT_T_FRACTION     =   0, 0.2, 0.3, 0.4,  1,  1,  0

; --------- SOC limitation (affecting CCL/DCL) ---------
; Description: Maximal charge / discharge current will be increased / decreased depending on State of Charge,
;              see CC_SOC_LIMIT1 etc.
; Example: The SoC limit will be monitored to control the currents.
; Charge current control management enable (True/False).
CCCM_SOC_ENABLE = True
; Discharge current control management enable (True/False).
DCCM_SOC_ENABLE = True

; Charge current soc limits
CC_SOC_LIMIT1 = 98
CC_SOC_LIMIT2 = 95
CC_SOC_LIMIT3 = 91

; Charge current limits
CC_CURRENT_LIMIT1_FRACTION = 0.1
CC_CURRENT_LIMIT2_FRACTION = 0.3
CC_CURRENT_LIMIT3_FRACTION = 0.5

; Discharge current soc limits
DC_SOC_LIMIT1 = 10
DC_SOC_LIMIT2 = 20
DC_SOC_LIMIT3 = 30

; Discharge current limits
DC_CURRENT_LIMIT1_FRACTION = 0.1
DC_CURRENT_LIMIT2_FRACTION = 0.3
DC_CURRENT_LIMIT3_FRACTION = 0.5

; --------- Time-To-Go ---------
; Description: Calculates the time to go shown in the GUI
;              Recalculation is done based on TIME_TO_SOC_RECALCULATE_EVERY
TIME_TO_GO_ENABLE = True

; --------- Time-To-Soc ---------
; Description: Calculates the time to a specific SoC
; Example: TIME_TO_SOC_POINTS = 50, 25, 15, 0
;          6h 24m remaining until 50% SoC
;          17h 36m remaining until 25% SoC
;          22h 5m remaining until 15% SoC
;          28h 48m remaining until 0% SoC
; Set of SoC percentages to report on dbus and MQTT. The more you specify the more it will impact system performance.
; [Valid values 0-100, comma separated list. More that 20 intervals are not recommended]
; Example: TIME_TO_SOC_POINTS = 100, 95, 90, 85, 75, 50, 25, 20, 10, 0
; Leave empty to disable
TIME_TO_SOC_POINTS =
; Specify TimeToSoc value type [Valid values 1, 2, 3]
; 1 Seconds
; 2 Time string <days>d <hours>h <minutes>m <seconds>s
; 3 Both seconds and time string "<seconds> [<days>d <hours>h <minutes>m <seconds>s]"
TIME_TO_SOC_VALUE_TYPE = 1
; Specify in seconds how often the TimeToSoc should be recalculated
; Minimum are 5 seconds to prevent CPU overload
TIME_TO_SOC_RECALCULATE_EVERY = 60
; Include TimeToSoC points when moving away from the SoC point [Valid values True, False]
; These will be as negative time. Disabling this improves performance slightly
TIME_TO_SOC_INC_FROM = False

; --------- Additional settings ---------
; Specify only one BMS type to load else leave empty to try to load all available
; -- Available BMS:
; Daly, Ecs, HeltecModbus, HLPdataBMS4S, Jkbms, Lifepower, LltJbd, Renogy, Seplos
; -- Available BMS, but disabled by default:
; https://louisvdw.github.io/dbus-serialbattery/general/install#how-to-enable-a-disabled-bms
; Ant, MNB, Sinowealth
BMS_TYPE =

; Publish the config settings to the dbus path "/Info/Config/"
PUBLISH_CONFIG_VALUES = 1

; Select the format of cell data presented on dbus [Valid values 0,1,2,3]
; 0 Do not publish all the cells (only the min/max cell data as used by the default GX)
; 1 Format: /Voltages/Cell (also available for display on Remote Console)
; 2 Format: /Cell/#/Volts
; 3 Both formats 1 and 2
BATTERY_CELL_DATA_FORMAT = 1

; Simulate Midpoint graph (True/False).
MIDPOINT_ENABLE = False

; Battery temperature
; Specify how the battery temperature is assembled
; 0 Get mean of temperature sensor 1 to sensor 4
; 1 Get only temperature from temperature sensor 1
; 2 Get only temperature from temperature sensor 2
; 3 Get only temperature from temperature sensor 3
; 4 Get only temperature from temperature sensor 4
TEMP_BATTERY = 0

; Temperature sensor 1 name
TEMP_1_NAME = Temp 1

; Temperature sensor 2 name
TEMP_2_NAME = Temp 2

; Temperature sensor 2 name
TEMP_3_NAME = Temp 3

; Temperature sensor 2 name
TEMP_4_NAME = Temp 4

; --------- BMS specific settings ---------

; -- LltJbd settings
; SoC low levels
; NOTE: SOC_LOW_WARNING is also used to calculate the Time-To-Go even if you are not using a LltJbd BMS
SOC_LOW_WARNING = 20
SOC_LOW_ALARM   = 10

; -- Daly settings
; Battery capacity (amps), if the BMS does not support reading it
BATTERY_CAPACITY = 50
; Invert Battery Current. Default non-inverted. Set to -1 to invert
INVERT_CURRENT_MEASUREMENT = 1

; -- ESC GreenMeter and Lipro device settings
GREENMETER_ADDRESS  = 1
LIPRO_START_ADDRESS = 2
LIPRO_END_ADDRESS   = 4
LIPRO_CELL_COUNT = 15

; -- HeltecModbus (Heltec SmartBMS/YYBMS) settings
; Set the Modbus addresses from the adapters
; Separate each address to check by a comma like: 1, 2, 3, ...
; factory default address will be 1
HELTEC_MODBUS_ADDR = 1

; --------- Battery monitor specific settings ---------
; If you are using a SmartShunt or something else as a battery monitor, the battery voltage reported
; from the BMS and SmartShunt could differ. This causes, that the driver never goapplies the float voltage,
; since max voltage is never reached.
; Example:
;     cell count: 16
;     MAX_CELL_VOLTAGE = 3.45
;     max voltage calculated = 16 * 3.45 = 55.20
;     CVL is set to 55.20 and the battery is now charged until the SmartShunt measures 55.20 V. The BMS
;     now measures 55.05 V since there is a voltage drop of 0.15 V. Since the dbus-serialbattery measures
;     55.05 V the max voltage is never reached for the driver and max voltage is kept forever.
;     Set VOLTAGE_DROP to 0.15
VOLTAGE_DROP = 0.00

cat /data/etc/dbus-serialbattery/config.ini
[DEFAULT]

; If you want to add custom values/settings, then check the values/settings you want to change in "config.default.ini"
; and insert them below to persist future driver updates.

; Example (remove the semicolon ";" to uncomment and activate the value/setting):
MAX_BATTERY_CURRENT = 100.0
MAX_BATTERY_DISCHARGE_CURRENT = 100.0
CCCM_CV_ENABLE = False
DCCM_CV_ENABLE = False
CCCM_T_ENABLE = False
DCCM_T_ENABLE = False
MIN_CELL_VOLTAGE = 2.700

Relevant log output

ls /data/log/dbus-serialbattery.ttyACM0/
@400000006477500c21d57dcc.s  @400000006477aa9812617f6c.s  lock
@400000006477a30d391e853c.s  current                      state
root@VenusOS:~# cat /data/log/dbus-serialbattery.ttyACM0/current
@400000006477aa981e52c77c INFO:SerialBattery:Testing HLPdataBMS4S
@400000006477aa9c17ed86c4 ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aa9c17f4c254 INFO:SerialBattery:Testing Jkbms
@400000006477aa9c3775614c ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aa9c3775808c INFO:SerialBattery:Testing Lifepower
@400000006477aa9d19138864 ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aa9d1913b35c INFO:SerialBattery:Testing LltJbd
@400000006477aa9e096cbe1c INFO:SerialBattery:Connection established to LltJbd
@400000006477aa9e09750b1c INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
@400000006477aa9e097c2b54 INFO:SerialBattery:========== Settings ==========
@400000006477aa9e0984d614 INFO:SerialBattery:> Connection voltage: 53.11V | Current: -5.91A | SoC: 92.32%
@400000006477aa9e098c1d5c INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
@400000006477aa9e1158e90c INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
@400000006477aa9e116266bc INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 50.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
@400000006477aa9e116a4e2c INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
@400000006477aa9e1171c06c INFO:SerialBattery:> CVCM:     True
@400000006477aa9e11799c24 INFO:SerialBattery:> MIN CELL VOLTAGE: 2.9V | MAX CELL VOLTAGE: 3.45V
@400000006477aa9e1181395c INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
@400000006477aa9e11888c5c INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
@400000006477aa9e118fdf5c INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
@400000006477aa9f0346d824 INFO:SerialBattery:DeviceInstance = 1
@400000006477aa9f03470704 INFO:SerialBattery:com.victronenergy.battery.ttyACM0
@400000006477aa9f29389acc INFO:SerialBattery:publish config values = 1
@400000006477aadb38e31664 INFO:SerialBattery:Starting dbus-serialbattery
@400000006477aadb38f49ac4 INFO:SerialBattery:dbus-serialbattery v1.0.20230531
@400000006477aadb38fd31fc INFO:SerialBattery:Testing Daly
@400000006477aadc04fab62c ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aadc05047e14 INFO:SerialBattery:Testing Daly
@400000006477aadc0cf86d4c ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aadc0d09074c INFO:SerialBattery:Testing Ecs
@400000006477aadc10ec9694 ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aadc10f4dfac INFO:SerialBattery:Testing HeltecModbus
@400000006477aadc31601d24 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aadd0e4b0114 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aadd26e1a2dc WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aade040bbe64 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aade1c64ca8c WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aade34e9e40c WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aadf11cc3c7c WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aadf2a396ce4 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aae0074d6c44 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aae0200234cc WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@400000006477aae0200c1424 INFO:SerialBattery:Testing HLPdataBMS4S
@400000006477aae5039dc60c ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aae503a520dc INFO:SerialBattery:Testing Jkbms
@400000006477aae513b2c344 ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aae513e1e994 INFO:SerialBattery:Testing Lifepower
@400000006477aae52571cecc ERROR:SerialBattery:>>> ERROR: No reply - returning
@400000006477aae5258a09ec INFO:SerialBattery:Testing LltJbd
@400000006477aae53a517f2c INFO:SerialBattery:Connection established to LltJbd
@400000006477aae53a594f2c INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
@400000006477aae53a602144 INFO:SerialBattery:========== Settings ==========
@400000006477aae53a68146c INFO:SerialBattery:> Connection voltage: 53.17V | Current: -3.47A | SoC: 92.3%
@400000006477aae53a70cecc INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
@400000006477aae53a795e34 INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
@400000006477aae53a818bf4 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 50.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
@400000006477aae53a897f1c INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
@400000006477aae53a90ca4c INFO:SerialBattery:> CVCM:     True
@400000006477aae53a9882dc INFO:SerialBattery:> MIN CELL VOLTAGE: 2.9V | MAX CELL VOLTAGE: 3.45V
@400000006477aae53a9fe194 INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
@400000006477aae53aa728dc INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
@400000006477aae53aae740c INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
@400000006477aae60266577c INFO:SerialBattery:DeviceInstance = 1
@400000006477aae602717b0c INFO:SerialBattery:com.victronenergy.battery.ttyACM0
@400000006477aae60dfef83c INFO:SerialBattery:publish config values = 1
@40000000647a15591e780a8c INFO:SerialBattery:Starting dbus-serialbattery
@40000000647a15591e9892ac INFO:SerialBattery:dbus-serialbattery v1.0.20230531
@40000000647a15591ea74c34 INFO:SerialBattery:Testing Daly
@40000000647a1559263a1454 ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647a15592646ca3c INFO:SerialBattery:Testing Daly
@40000000647a15592de8961c ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647a15592df6ea14 INFO:SerialBattery:Testing Ecs
@40000000647a1559317c6b3c ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647a15593189444c INFO:SerialBattery:Testing HeltecModbus
@40000000647a155a140bc084 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155a2c6fa604 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155b09feb54c WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155b227ffe3c WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155b3b081d2c WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155c1804a0d4 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155c30e4598c WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155d0dcf83cc WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155d2667fe3c WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155e0366431c WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647a155e03795dbc INFO:SerialBattery:Testing HLPdataBMS4S
@40000000647a1562226605cc ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647a156222710a1c INFO:SerialBattery:Testing Jkbms
@40000000647a156233c0582c ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647a156234c66a04 INFO:SerialBattery:Testing Lifepower
@40000000647a15630d42f36c ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647a15630d6855bc INFO:SerialBattery:Testing LltJbd
@40000000647a1563232ff904 INFO:SerialBattery:Connection established to LltJbd
@40000000647a156323382e94 INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
@40000000647a1563233e77f4 INFO:SerialBattery:========== Settings ==========
@40000000647a15632345b76c INFO:SerialBattery:> Connection voltage: 55.37V | Current: 3.91A | SoC: 99.5%
@40000000647a1563234c1c24 INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
@40000000647a1563235422d4 INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
@40000000647a15632359b49c INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 50.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
@40000000647a156323605bbc INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
@40000000647a15632366c844 INFO:SerialBattery:> CVCM:     True
@40000000647a156323713054 INFO:SerialBattery:> MIN CELL VOLTAGE: 2.7V | MAX CELL VOLTAGE: 3.47V
@40000000647a156323781dc4 INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
@40000000647a1563237e9dd4 INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
@40000000647a156323868d14 INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
@40000000647a1563273a4a2c INFO:SerialBattery:DeviceInstance = 1
@40000000647a156327456dbc INFO:SerialBattery:com.victronenergy.battery.ttyACM0
@40000000647a156333bc83b4 INFO:SerialBattery:publish config values = 1
@40000000647f034e0858bddc INFO:SerialBattery:Starting dbus-serialbattery
@40000000647f034e08749e94 INFO:SerialBattery:dbus-serialbattery v1.0.20230531
@40000000647f034e0ce51044 INFO:SerialBattery:Testing Daly
@40000000647f034e1020bb14 ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647f034e1031783c INFO:SerialBattery:Testing Daly
@40000000647f034e17f52014 ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647f034e1803a2ec INFO:SerialBattery:Testing Ecs
@40000000647f034e1bfa6c14 ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647f034e1c04f74c INFO:SerialBattery:Testing HeltecModbus
@40000000647f034e3aa315e4 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f034f179ba9bc WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f034f305540bc WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f03500d35188c WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f035025c31b4c WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f035102cb148c WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f03511b6373a4 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f0351340a9be4 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f03521128150c WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f03522a06433c WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
@40000000647f03522a11dbfc INFO:SerialBattery:Testing HLPdataBMS4S
@40000000647f03570d232ab4 ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647f03570d2b19f4 INFO:SerialBattery:Testing Jkbms
@40000000647f03571e9c7aac ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647f03571ee7cfd4 INFO:SerialBattery:Testing Lifepower
@40000000647f0357303fdc2c ERROR:SerialBattery:>>> ERROR: No reply - returning
@40000000647f035730954b44 INFO:SerialBattery:Testing LltJbd
@40000000647f035809be7414 INFO:SerialBattery:Connection established to LltJbd
@40000000647f035809d77e3c INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
@40000000647f03580a97057c INFO:SerialBattery:========== Settings ==========
@40000000647f03580a9724bc INFO:SerialBattery:> Connection voltage: 55.31V | Current: 3.12A | SoC: 99.96%
@40000000647f03580a973844 INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
@40000000647f03580a9743fc INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
@40000000647f03580a97539c INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 50.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
@40000000647f03580a976724 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
@40000000647f03580a988c1c INFO:SerialBattery:> CVCM:     False
@40000000647f03580a9897d4 INFO:SerialBattery:> MIN CELL VOLTAGE: 2.7V | MAX CELL VOLTAGE: 3.47V
@40000000647f03580a98ab5c INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
@40000000647f03580a98b714 INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
@40000000647f03580a98c6b4 INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
@40000000647f03580e5f0de4 INFO:SerialBattery:DeviceInstance = 1
@40000000647f03580e6c506c INFO:SerialBattery:com.victronenergy.battery.ttyACM0
@40000000647f035819b0e58c INFO:SerialBattery:publish config values = 1

Any other information that may be helpful

No response

mr-manuel commented 1 year ago

Have you checked the "Parameters" Page in the remote console/GUI? What does it say when reaching 55.12 V?

You specified you have 16s3p, that means you have 16s battery and 3 in parallel right? What do you use as battery aggregator?

Since with Venus OS 2.94 you cannot select the BMS for DVCC, please upgrade to Venus OS > 3.00.

dersch81 commented 1 year ago

It's telling me CVL of 55.52v? From where is that value coming from?

image

It stopped at 55.1v like every day.

image

To aggregate i'm using https://github.com/Dr-Gigavolt/dbus-aggregate-batteries and this is also selected as the main BMS

I'm totally lost why i can't reach the 55.2v anymore since i have upgraded serialbattery to the latest release. Something is stopping the charge processs on the last mile but i can't figure out which setting it is.

So i can't reach the 3.45v anymore and my balance will not start in case of a too high diff. image

mr-manuel commented 1 year ago

Looking at all the data you provided it does not match. The config, logs and screenshot do not match.

Why is CVCM in the logs 2 times True and the last time False? Did you change something? Unfortunately the logs do not help much, since you did not executed the command as it is found in the documentation.

Please change MAX_BATTERY_CURRENT to MAX_BATTERY_CHARGE_CURRENT in your config.ini. This is a typo in the master branch and is solved with a next version.

Please install the nightly from the dev branch and reboot.

dersch81 commented 1 year ago

Do you mean this command? tail -F -n 100 /data/log/dbus-serialbattery.ttyUSB0/current | tai64nlocal

i never got any output with it.

CVCM has been changed and i did not restart after it. That mismatched the config and log.

I have changed the MAX_BATTERY_CURRENT in the config.ini now.

I will try the nightly

dersch81 commented 1 year ago

The nightly and dev branch does not start in my case

@400000006487444f154394a4 INFO: Start service dbus-serialbattery.ttyACM2 once
@400000006487445222a5fccc INFO: Start service vedirect-interface.ttyACM0 once
@40000000648744553076de34 INFO: Start service dbus-serialbattery.ttyACM0 once
@4000000064874457057cbf3c INFO: Start service vedirect-interface.ttyACM1 once
root@VenusOS:~# tail -F -n 100 /data/log/dbus-serialbattery.ttyACM0/current | tai64nlocal
2023-06-12 16:14:15.382915500 #12
2023-06-12 16:14:15.382916500 #13
2023-06-12 16:14:15.382917500 #14
2023-06-12 16:14:15.383101500 #15
2023-06-12 16:14:15.406950500 Traceback (most recent call last):
2023-06-12 16:14:15.406957500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 208, in <module>
2023-06-12 16:14:15.406962500     main()
2023-06-12 16:14:15.406964500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 180, in main
2023-06-12 16:14:15.406969500     battery.log_settings()
2023-06-12 16:14:15.406971500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 1037, in log_settings
2023-06-12 16:14:15.406976500     logger.info(f"Serial Number/Unique Identifier: {self.unique_identifier()}")
2023-06-12 16:14:15.407094500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 144, in unique_identifier
2023-06-12 16:14:15.407099500     "".join(filter(str.isalnum, self.hardware_version)) + "_"
2023-06-12 16:14:15.407103500 TypeError: 'float' object is not iterable
2023-06-12 16:14:30.820556500 INFO:SerialBattery:
2023-06-12 16:14:30.821078500 INFO:SerialBattery:Starting dbus-serialbattery
2023-06-12 16:14:30.822084500 INFO:SerialBattery:dbus-serialbattery v1.0.20230611dev
2023-06-12 16:14:30.822904500 INFO:SerialBattery:-- Testing BMS: 1 of 3 rounds
2023-06-12 16:14:30.823676500 INFO:SerialBattery:Testing Daly at address "\x40"
2023-06-12 16:14:30.952175500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:30.952551500 INFO:SerialBattery:Testing Daly at address "\x80"
2023-06-12 16:14:31.080234500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:31.080404500 INFO:SerialBattery:Testing Ecs
2023-06-12 16:14:31.138705500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:31.139175500 INFO:SerialBattery:Testing HeltecModbus
2023-06-12 16:14:31.647188500 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:32.059037500 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:32.472518500 WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:32.883221500 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:33.295002500 WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:33.714671500 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:34.126774500 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:34.551997500 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:34.966158500 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:35.408326500 WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:35.410794500 INFO:SerialBattery:Testing HLPdataBMS4S
2023-06-12 16:14:39.931144500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:39.931615500 INFO:SerialBattery:Testing Jkbms
2023-06-12 16:14:40.203269500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:40.207362500 INFO:SerialBattery:Testing Lifepower
2023-06-12 16:14:40.495697500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:40.499900500 INFO:SerialBattery:Testing LltJbd
2023-06-12 16:14:40.841726500 INFO:SerialBattery:Connection established to LltJbd
2023-06-12 16:14:40.842196500 INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
2023-06-12 16:14:40.842685500 INFO:SerialBattery:========== Settings ==========
2023-06-12 16:14:40.843110500 INFO:SerialBattery:> Connection voltage: 54.17V | Current: 0.0A | SoC: 99.4%
2023-06-12 16:14:40.843636500 INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
2023-06-12 16:14:40.844079500 INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
2023-06-12 16:14:40.844535500 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 100.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
2023-06-12 16:14:40.844969500 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
2023-06-12 16:14:40.845392500 INFO:SerialBattery:> CVCM:     True
2023-06-12 16:14:40.845837500 INFO:SerialBattery:> MIN CELL VOLTAGE: 2.7V | MAX CELL VOLTAGE: 3.45V
2023-06-12 16:14:40.846303500 INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
2023-06-12 16:14:40.846735500 INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
2023-06-12 16:14:40.847167500 INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
2023-06-12 16:14:40.847390500 #0
2023-06-12 16:14:40.847392500 #1
2023-06-12 16:14:40.847394500 #2
2023-06-12 16:14:40.847395500 #3
2023-06-12 16:14:40.847396500 #4
2023-06-12 16:14:40.847397500 #5
2023-06-12 16:14:40.847399500 #6
2023-06-12 16:14:40.847400500 #7
2023-06-12 16:14:40.847401500 #8
2023-06-12 16:14:40.847402500 #9
2023-06-12 16:14:40.847404500 #10
2023-06-12 16:14:40.847405500 #11
2023-06-12 16:14:40.847406500 #12
2023-06-12 16:14:40.847408500 #13
2023-06-12 16:14:40.847409500 #14
2023-06-12 16:14:40.847410500 #15
2023-06-12 16:14:40.854606500 Traceback (most recent call last):
2023-06-12 16:14:40.854613500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 208, in <module>
2023-06-12 16:14:40.854618500     main()
2023-06-12 16:14:40.854620500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 180, in main
2023-06-12 16:14:40.854625500     battery.log_settings()
2023-06-12 16:14:40.854627500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 1037, in log_settings
2023-06-12 16:14:40.854632500     logger.info(f"Serial Number/Unique Identifier: {self.unique_identifier()}")
2023-06-12 16:14:40.854704500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 144, in unique_identifier
2023-06-12 16:14:40.854709500     "".join(filter(str.isalnum, self.hardware_version)) + "_"
2023-06-12 16:14:40.854713500 TypeError: 'float' object is not iterable
2023-06-12 16:14:56.636971500 INFO:SerialBattery:
2023-06-12 16:14:56.637665500 INFO:SerialBattery:Starting dbus-serialbattery
2023-06-12 16:14:56.638763500 INFO:SerialBattery:dbus-serialbattery v1.0.20230611dev
2023-06-12 16:14:56.639417500 INFO:SerialBattery:-- Testing BMS: 1 of 3 rounds
2023-06-12 16:14:56.640029500 INFO:SerialBattery:Testing Daly at address "\x40"
2023-06-12 16:14:56.773778500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:56.773786500 INFO:SerialBattery:Testing Daly at address "\x80"
2023-06-12 16:14:56.898297500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:56.898980500 INFO:SerialBattery:Testing Ecs
2023-06-12 16:14:56.957790500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:14:56.958465500 INFO:SerialBattery:Testing HeltecModbus
2023-06-12 16:14:57.461862500 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:57.872222500 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:58.287769500 WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:58.704998500 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:59.117609500 WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:59.526505500 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:14:59.937688500 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:00.353410500 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:00.779495500 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:01.177879500 WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:01.177888500 INFO:SerialBattery:Testing HLPdataBMS4S
2023-06-12 16:15:05.690813500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:15:05.691301500 INFO:SerialBattery:Testing Jkbms
2023-06-12 16:15:05.959455500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:15:05.962183500 INFO:SerialBattery:Testing Lifepower
2023-06-12 16:15:06.237804500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:15:06.243685500 INFO:SerialBattery:Testing LltJbd
tail: /data/log/dbus-serialbattery.ttyACM0/current has been replaced; following end of new file
2023-06-12 16:15:06.619592500 Traceback (most recent call last):
2023-06-12 16:15:06.619600500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 208, in <module>
2023-06-12 16:15:06.619606500     main()
2023-06-12 16:15:06.619607500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 180, in main
2023-06-12 16:15:06.619612500     battery.log_settings()
2023-06-12 16:15:06.619615500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 1037, in log_settings
2023-06-12 16:15:06.619619500     logger.info(f"Serial Number/Unique Identifier: {self.unique_identifier()}")
2023-06-12 16:15:06.619739500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 144, in unique_identifier
2023-06-12 16:15:06.619745500     "".join(filter(str.isalnum, self.hardware_version)) + "_"
2023-06-12 16:15:06.619749500 TypeError: 'float' object is not iterable
2023-06-12 16:15:22.334717500 INFO:SerialBattery:
2023-06-12 16:15:22.334724500 INFO:SerialBattery:Starting dbus-serialbattery
2023-06-12 16:15:22.337091500 INFO:SerialBattery:dbus-serialbattery v1.0.20230611dev
2023-06-12 16:15:22.337100500 INFO:SerialBattery:-- Testing BMS: 1 of 3 rounds
2023-06-12 16:15:22.337350500 INFO:SerialBattery:Testing Daly at address "\x40"
2023-06-12 16:15:22.467245500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:15:22.467841500 INFO:SerialBattery:Testing Daly at address "\x80"
2023-06-12 16:15:22.601474500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:15:22.602089500 INFO:SerialBattery:Testing Ecs
2023-06-12 16:15:22.660184500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-12 16:15:22.660643500 INFO:SerialBattery:Testing HeltecModbus
2023-06-12 16:15:23.164169500 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:23.574842500 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:23.990666500 WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:24.406875500 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:24.819080500 WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:25.239452500 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:25.663438500 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:26.093500500 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:26.490158500 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:26.904476500 WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-12 16:15:26.905021500 INFO:SerialBattery:Testing HLPdataBMS4S
mr-manuel commented 1 year ago

I will update it in the next hours, then it will work. If you don't want to wait copy the code from my dev branch.

dersch81 commented 1 year ago

Ok i will try this. Is there any change regarding the initial symptom?

mr-manuel commented 1 year ago

Since it's not clear what the problem is, no.

mr-manuel commented 1 year ago

The changes are now in the dev branch and you can reinstall now.

dersch81 commented 1 year ago

No, doesn't start

root@VenusOS:~# tail -F -n 100 /data/log/dbus-serialbattery.ttyACM0/current | tai64nlocal
2023-06-13 09:47:33.218853500 INFO:SerialBattery:-- Testing BMS: 1 of 3 rounds
2023-06-13 09:47:33.218862500 INFO:SerialBattery:Testing Daly at address "\x40"
2023-06-13 09:47:33.327004500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:47:33.327718500 INFO:SerialBattery:Testing Daly at address "\x80"
2023-06-13 09:47:33.457481500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:47:33.458742500 INFO:SerialBattery:Testing Ecs
2023-06-13 09:47:33.525954500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:47:33.526662500 INFO:SerialBattery:Testing HeltecModbus
2023-06-13 09:47:34.061621500 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:34.478721500 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:34.916760500 WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:35.332263500 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:35.749523500 WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:36.160952500 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:36.575141500 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:37.010297500 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:37.422952500 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:37.833808500 WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:47:37.834504500 INFO:SerialBattery:Testing HLPdataBMS4S
2023-06-13 09:48:02.079537500 INFO:SerialBattery:
2023-06-13 09:48:02.115787500 INFO:SerialBattery:Starting dbus-serialbattery
2023-06-13 09:48:02.115795500 INFO:SerialBattery:dbus-serialbattery v1.0.20230612dev
2023-06-13 09:48:02.115799500 INFO:SerialBattery:-- Testing BMS: 1 of 3 rounds
2023-06-13 09:48:02.115802500 INFO:SerialBattery:Testing Daly at address "\x40"
2023-06-13 09:48:02.212532500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:02.212541500 INFO:SerialBattery:Testing Daly at address "\x80"
2023-06-13 09:48:02.339062500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:02.340041500 INFO:SerialBattery:Testing Ecs
2023-06-13 09:48:02.403686500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:02.403693500 INFO:SerialBattery:Testing HeltecModbus
2023-06-13 09:48:02.906838500 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:03.318891500 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:03.731123500 WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:04.150973500 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:04.577395500 WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:05.005766500 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:05.417443500 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:05.827416500 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:06.239153500 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:06.668891500 WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:06.673334500 INFO:SerialBattery:Testing HLPdataBMS4S
2023-06-13 09:48:11.203267500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:11.203740500 INFO:SerialBattery:Testing Jkbms
2023-06-13 09:48:11.483296500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:11.491744500 INFO:SerialBattery:Testing Lifepower
2023-06-13 09:48:11.819337500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:11.822662500 INFO:SerialBattery:Testing LltJbd
2023-06-13 09:48:12.166382500 INFO:SerialBattery:Connection established to LltJbd
2023-06-13 09:48:12.167127500 INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
2023-06-13 09:48:12.167702500 INFO:SerialBattery:========== Settings ==========
2023-06-13 09:48:12.168288500 INFO:SerialBattery:> Connection voltage: 55.41V | Current: 1.47A | SoC: 99.98%
2023-06-13 09:48:12.168823500 INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
2023-06-13 09:48:12.169355500 INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
2023-06-13 09:48:12.169898500 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 100.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
2023-06-13 09:48:12.170445500 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
2023-06-13 09:48:12.170972500 INFO:SerialBattery:> CVCM:     True
2023-06-13 09:48:12.171515500 INFO:SerialBattery:> MIN CELL VOLTAGE: 2.7V | MAX CELL VOLTAGE: 3.45V
2023-06-13 09:48:12.172090500 INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
2023-06-13 09:48:12.172630500 INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
2023-06-13 09:48:12.173189500 INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
2023-06-13 09:48:12.173529500 #0
2023-06-13 09:48:12.173531500 #1
2023-06-13 09:48:12.173533500 #2
2023-06-13 09:48:12.173534500 #3
2023-06-13 09:48:12.173535500 #4
2023-06-13 09:48:12.173537500 #5
2023-06-13 09:48:12.173538500 #6
2023-06-13 09:48:12.173539500 #7
2023-06-13 09:48:12.173540500 #8
2023-06-13 09:48:12.173542500 #9
2023-06-13 09:48:12.173543500 #10
2023-06-13 09:48:12.173544500 #11
2023-06-13 09:48:12.173546500 #12
2023-06-13 09:48:12.173547500 #13
2023-06-13 09:48:12.173548500 #14
2023-06-13 09:48:12.173550500 #15
2023-06-13 09:48:12.181466500 Traceback (most recent call last):
2023-06-13 09:48:12.181472500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 208, in <module>
2023-06-13 09:48:12.181477500     main()
2023-06-13 09:48:12.181479500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 180, in main
2023-06-13 09:48:12.181484500     battery.log_settings()
2023-06-13 09:48:12.181486500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 1067, in log_settings
2023-06-13 09:48:12.181491500     logger.info(f"Serial Number/Unique Identifier: {self.unique_identifier()}")
2023-06-13 09:48:12.181584500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 144, in unique_identifier
2023-06-13 09:48:12.181590500     "".join(filter(str.isalnum, self.hardware_version)) + "_"
2023-06-13 09:48:12.181594500 TypeError: 'float' object is not iterable
2023-06-13 09:48:31.344663500 INFO:SerialBattery:
2023-06-13 09:48:31.345262500 INFO:SerialBattery:Starting dbus-serialbattery
2023-06-13 09:48:31.346577500 INFO:SerialBattery:dbus-serialbattery v1.0.20230612dev
2023-06-13 09:48:31.347187500 INFO:SerialBattery:-- Testing BMS: 1 of 3 rounds
2023-06-13 09:48:31.347691500 INFO:SerialBattery:Testing Daly at address "\x40"
2023-06-13 09:48:31.498475500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:31.498780500 INFO:SerialBattery:Testing Daly at address "\x80"
2023-06-13 09:48:31.630573500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:31.631182500 INFO:SerialBattery:Testing Ecs
2023-06-13 09:48:31.696509500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:31.697150500 INFO:SerialBattery:Testing HeltecModbus
2023-06-13 09:48:32.200950500 WARNING:SerialBattery:Error reading settings from BMS, retry (1/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:32.626194500 WARNING:SerialBattery:Error reading settings from BMS, retry (2/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:33.032434500 WARNING:SerialBattery:Error reading settings from BMS, retry (3/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:33.451709500 WARNING:SerialBattery:Error reading settings from BMS, retry (4/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:33.888588500 WARNING:SerialBattery:Error reading settings from BMS, retry (5/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:34.299238500 WARNING:SerialBattery:Error reading settings from BMS, retry (6/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:34.708493500 WARNING:SerialBattery:Error reading settings from BMS, retry (7/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:35.118462500 WARNING:SerialBattery:Error reading settings from BMS, retry (8/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:35.536078500 WARNING:SerialBattery:Error reading settings from BMS, retry (9/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:35.947060500 WARNING:SerialBattery:Error reading settings from BMS, retry (10/10): Wrong functioncode: 1 instead of 3. The response is: '\x01\x01Áà'
2023-06-13 09:48:35.947567500 INFO:SerialBattery:Testing HLPdataBMS4S
2023-06-13 09:48:40.462350500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:40.462578500 INFO:SerialBattery:Testing Jkbms
2023-06-13 09:48:40.739324500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:40.742444500 INFO:SerialBattery:Testing Lifepower
2023-06-13 09:48:41.009265500 ERROR:SerialBattery:>>> ERROR: No reply - returning
2023-06-13 09:48:41.011426500 INFO:SerialBattery:Testing LltJbd
2023-06-13 09:48:41.358616500 INFO:SerialBattery:Connection established to LltJbd
2023-06-13 09:48:41.359107500 INFO:SerialBattery:Battery LLT/JBD connected to dbus from /dev/ttyACM0
2023-06-13 09:48:41.359509500 INFO:SerialBattery:========== Settings ==========
2023-06-13 09:48:41.360024500 INFO:SerialBattery:> Connection voltage: 55.43V | Current: 0.77A | SoC: 99.98%
2023-06-13 09:48:41.360469500 INFO:SerialBattery:> Cell count: 16 | Cells populated: 16
2023-06-13 09:48:41.360945500 INFO:SerialBattery:> LINEAR LIMITATION ENABLE: True
2023-06-13 09:48:41.361395500 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 100.0A | MAX BATTERY DISCHARGE CURRENT: 100.0A
2023-06-13 09:48:41.361877500 INFO:SerialBattery:> MAX BATTERY CHARGE CURRENT: 300.0A | MAX BATTERY DISCHARGE CURRENT: 300.0A (read from BMS)
2023-06-13 09:48:41.362352500 INFO:SerialBattery:> CVCM:     True
2023-06-13 09:48:41.362782500 INFO:SerialBattery:> MIN CELL VOLTAGE: 2.7V | MAX CELL VOLTAGE: 3.45V
2023-06-13 09:48:41.363240500 INFO:SerialBattery:> CCCM CV:  False | DCCM CV:  False
2023-06-13 09:48:41.363740500 INFO:SerialBattery:> CCCM T:   False | DCCM T:   False
2023-06-13 09:48:41.364189500 INFO:SerialBattery:> CCCM SOC: True  | DCCM SOC: True
2023-06-13 09:48:41.364382500 #0
2023-06-13 09:48:41.364384500 #1
2023-06-13 09:48:41.364385500 #2
2023-06-13 09:48:41.364386500 #3
2023-06-13 09:48:41.364388500 #4
2023-06-13 09:48:41.364389500 #5
2023-06-13 09:48:41.364390500 #6
2023-06-13 09:48:41.364392500 #7
2023-06-13 09:48:41.364393500 #8
2023-06-13 09:48:41.364394500 #9
2023-06-13 09:48:41.364395500 #10
2023-06-13 09:48:41.364397500 #11
2023-06-13 09:48:41.364398500 #12
2023-06-13 09:48:41.364399500 #13
2023-06-13 09:48:41.364401500 #14
2023-06-13 09:48:41.364402500 #15
2023-06-13 09:48:41.372639500 Traceback (most recent call last):
2023-06-13 09:48:41.372645500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 208, in <module>
2023-06-13 09:48:41.372650500     main()
2023-06-13 09:48:41.372651500   File "/opt/victronenergy/dbus-serialbattery/dbus-serialbattery.py", line 180, in main
2023-06-13 09:48:41.372656500     battery.log_settings()
2023-06-13 09:48:41.372689500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 1067, in log_settings
2023-06-13 09:48:41.372694500     logger.info(f"Serial Number/Unique Identifier: {self.unique_identifier()}")
2023-06-13 09:48:41.372896500   File "/opt/victronenergy/dbus-serialbattery/battery.py", line 144, in unique_identifier
2023-06-13 09:48:41.372901500     "".join(filter(str.isalnum, self.hardware_version)) + "_"
2023-06-13 09:48:41.372905500 TypeError: 'float' object is not iterable
mr-manuel commented 1 year ago

Thanks for reporting. The JBD BMS is reporting this value in another way. Could you please try with v1.0.20230613beta?

dersch81 commented 1 year ago

image

dersch81 commented 1 year ago

But also with the new beta the charging is stopping at ~ 55,12 v

image

mr-manuel commented 1 year ago

Please provide config, logs and screenshot without changing the config and all in the smallest timespan possible.

mr-manuel commented 1 year ago

Please also measure with a multimeter the voltage difference between the charger output and the battery terminals. Since with v1.0.0 the logic is different, you can configure a voltage drop of 0.08 or 0.10.