Louisvdw / dbus-serialbattery

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

Very unstable JBD_BLE bluetooth connection on version 1.1.20240212dev #973

Closed AlexdeKairos closed 8 months ago

AlexdeKairos commented 9 months ago

Describe the bug

After upgrading to driver 1.1.20240212dev on the initial reset after installing, everything was working fine but on succesfull resets the system has become very unstable with continuous connects and disconnects of the BMSs. I have cerbo gx with an external Asus BT-500 Bluetooth dongle (one of the aproved ones).

How to reproduce

Just install the dev version and perform 4 or 5 reboots .

Expected behavior

Was very stable on my previous version 1.0.20231117dev

Driver version

1.1.20240212dev

Venus OS device type

Cerbo GX

Venus OS version

3.14

BMS type

Smart BMS (LLT, JBD, Overkill Solar)

Cell count

4

Battery count

2

Connection type

Bluetooth

Config file

[DEFAULT]

LOGGING = DEBUG
MAX_BATTERY_CHARGE_CURRENT = 150.0
MAX_BATTERY_DISCHARGE_CURRENT = 150.0
MIN_CELL_VOLTAGE   = 3.000
MAX_CELL_VOLTAGE   = 3.600
FLOAT_CELL_VOLTAGE = 3.400
;BLUETOOTH_BMS = LltJbd_Ble A5:C2:37:05:95:9E, LltJbd_Ble A5:C2:37:05:95:B6
BLUETOOTH_BMS = LltJbd_Ble A5:C2:37:05:95:B6
BLUETOOTH_USE_USB = True

; --------- SOC reset voltage ---------
; Description: May be needed to reset the SoC to 100% once in a while for some BMS, because of SoC drift.
;              Specify the cell voltage where the SoC should be reset to 100% by the BMS.
;                - JKBMS: SoC is reset to 100% if one cell reaches OVP (over voltage protection) voltage
;              As you have to adopt this value to your system, I reccomend to start with
;              OVP voltage - 0.030 (see Example).
;                - Try to increase (add) by 0.005 in steps, if the system does not switch to float mode, even if
;                  the target voltage SOC_RESET_VOLTAGE * CELL_COUNT is reached.
;                - Try to decrease (lower) by 0.005 in steps, if the system hits the OVP too fast, before all
;                  cells could be balanced and the system goes into protection mode multiple times.
; Example: If OVP is 3.650, then start with 3.620 and increase/decrease by 0.005
; Note: The value has to be higher as the MAX_CELL_VOLTAGE
SOC_RESET_VOLTAGE  = 3.620
; Specify after how many days the soc reset voltage should be reached again
; The timer is reset when the soc reset voltage is reached
; Leave empty if you don't want to use this
; Example: Value is set to 15
; day 1: soc reset reached once
; day 16: soc reset reached twice
; day 31: soc reset not reached since it's very cloudy
; day 34: soc reset reached since the sun came out
; day 49: soc reset reached again, since last time it took 3 days to reach soc reset voltage
SOC_RESET_AFTER_DAYS =

; --------- 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 = False

; Specify in seconds how often the linear values should be recalculated
LINEAR_RECALCULATION_EVERY = 120
; 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 80%
;          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 80%.
; 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 & linear mode)
; Specify how long the max voltage should be kept
;     Step mode: If reached then switch to float voltage
;     Linear mode: If cells are balanced keep max voltage for further MAX_VOLTAGE_TIME_SEC seconds
MAX_VOLTAGE_TIME_SEC = 900
; Specify SoC where CVL limit is reset to max voltage
;     Step mode: If SoC gets below
;     Linear mode: If cells are unbalanced or if SoC gets below
SOC_LEVEL_TO_RESET_VOLTAGE_LIMIT = 80

; --------- 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 = False

; 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.61, 3.55, 3.50, 3.45
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 = False
; Charge current control management referring to temperature enable (True/False).
DCCM_T_ENABLE = False

; Set steps to reduce battery current
; Valores exactos obtenidos de CATL. 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,  60,  65
MAX_CHARGE_CURRENT_T_FRACTION     = 0, 0.116, 0.116, 0.372, 0.5, 1, 1, 0.8, 0,5, 0.279, 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 = False
; Discharge current control management enable (True/False).
DCCM_SOC_ENABLE = False

; 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 = 30, 20, 0
; 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 = 2
; Specify in seconds how often the TimeToSoc should be recalculated
; Minimum are 5 seconds to prevent CPU overload
TIME_TO_SOC_RECALCULATE_EVERY = 180
; 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

; 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 = 1

; Temperature sensor 1 name
TEMP_1_NAME = T Celdas

; 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

; --------- 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 = 25
SOC_LOW_ALARM   = 20

Relevant log output

==> /data/log/dbus-blebattery.1/current <==
2024-02-13 16:41:19.158193500 INFO:SerialBattery:Test of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:41:21.674476500 [CHG] Device A5:C2:37:05:95:B6 RSSI: -60
2024-02-13 16:41:24.173736500 ERROR:SerialBattery:>>> ERROR: Unable to connect with BLE device
2024-02-13 16:41:24.177596500 ERROR:SerialBattery:No BMS found at A5:C2:37:05:95:B6
2024-02-13 16:41:24.178315500 ERROR:SerialBattery:ERROR >>> No battery connection at LltJbd_Ble
2024-02-13 16:41:30.069239500 ERROR:SerialBattery:BleakClient(): Exception occurred: BleakDBusError('org.bluez.Error.Failed', 'Software caused connection abort') of type <class 'bleak.exc.BleakDBusError'> in /opt/victronenergy/dbus-serialbattery/bms/lltjbd_ble.py line #100
2024-02-13 16:41:30.494053500
2024-02-13 16:41:30.496107500 INFO:Bluetooth details
2024-02-13 16:41:30.809781500 Attempting to disconnect from A5:C2:37:05:95:B6
2024-02-13 16:41:30.809791500 [CHG] Device A5:C2:37:05:95:9E RSSI is nil
2024-02-13 16:41:30.809794500 [CHG] Device C5:71:5B:8D:F5:BC RSSI is nil
2024-02-13 16:41:30.809797500 [CHG] Device A5:C2:37:05:95:B6 RSSI is nil
2024-02-13 16:41:30.809800500 [CHG] Device 47:9B:C3:1D:82:B9 RSSI is nil
2024-02-13 16:41:30.809802500 [CHG] Device E9:CC:15:95:BA:68 RSSI is nil
2024-02-13 16:41:30.809805500 [CHG] Device 04:52:C7:B8:5F:6D TxPower is nil
2024-02-13 16:41:30.809927500 [CHG] Device 04:52:C7:B8:5F:6D RSSI is nil
2024-02-13 16:41:30.809931500 [CHG] Device FC:97:F8:5D:A2:EC RSSI is nil
2024-02-13 16:41:30.809934500 [CHG] Controller 08:BF:B8:56:B7:50 Discovering: no
2024-02-13 16:41:30.809937500 Successful disconnected
2024-02-13 16:41:35.974184500 Device A5:C2:37:05:95:B6 (public)
2024-02-13 16:41:35.974194500   Alias: Bateria Serv 2
2024-02-13 16:41:35.974196500   Paired: no
2024-02-13 16:41:35.974197500   Trusted: no
2024-02-13 16:41:35.974199500   Blocked: no
2024-02-13 16:41:35.974200500   Connected: no
2024-02-13 16:41:35.974201500   LegacyPairing: no
2024-02-13 16:41:35.974203500   UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
2024-02-13 16:41:35.974206500   RSSI: -62
2024-02-13 16:41:35.975081500
2024-02-13 16:41:37.399490500 INFO:SerialBattery:
2024-02-13 16:41:37.400200500 INFO:SerialBattery:Starting dbus-serialbattery
2024-02-13 16:41:37.402258500 INFO:SerialBattery:Venus OS v3.14
2024-02-13 16:41:37.403030500 INFO:SerialBattery:dbus-serialbattery v1.1.20240212dev
2024-02-13 16:41:37.949819500 INFO:SerialBattery:Init of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:41:37.950642500 INFO:SerialBattery:Test of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:41:42.971792500 ERROR:SerialBattery:>>> ERROR: Unable to connect with BLE device
2024-02-13 16:41:42.975998500 ERROR:SerialBattery:No BMS found at A5:C2:37:05:95:B6
2024-02-13 16:41:42.978327500 ERROR:SerialBattery:ERROR >>> No battery connection at LltJbd_Ble
2024-02-13 16:41:53.162187500 ERROR:SerialBattery:BleakClient(): asyncio.exceptions.TimeoutError: TimeoutError() of type <class 'asyncio.exceptions.TimeoutError'> in /opt/victronenergy/dbus-serialbattery/bms/lltjbd_ble.py line #100
2024-02-13 16:41:53.516470500
2024-02-13 16:41:53.516926500 INFO:Bluetooth details
2024-02-13 16:41:53.595163500 [CHG] Device A5:C2:37:05:95:B6 RSSI: -62
2024-02-13 16:41:53.595175500 [CHG] Device A5:C2:37:05:95:B6 RSSI: -62
2024-02-13 16:41:53.679118500 Attempting to disconnect from A5:C2:37:05:95:B6
2024-02-13 16:41:53.679128500 Successful disconnected
2024-02-13 16:41:58.815020500 Device A5:C2:37:05:95:B6 (public)
2024-02-13 16:41:58.815031500   Alias: Bateria Serv 2
2024-02-13 16:41:58.815033500   Paired: no
2024-02-13 16:41:58.815034500   Trusted: no
2024-02-13 16:41:58.815036500   Blocked: no
2024-02-13 16:41:58.815037500   Connected: no
2024-02-13 16:41:58.815038500   LegacyPairing: no
2024-02-13 16:41:58.815040500   UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
2024-02-13 16:41:58.815043500   RSSI: -64
2024-02-13 16:41:58.815459500
2024-02-13 16:42:00.248574500 INFO:SerialBattery:
2024-02-13 16:42:00.249700500 INFO:SerialBattery:Starting dbus-serialbattery
2024-02-13 16:42:00.251702500 INFO:SerialBattery:Venus OS v3.14
2024-02-13 16:42:00.252435500 INFO:SerialBattery:dbus-serialbattery v1.1.20240212dev
2024-02-13 16:42:00.798959500 INFO:SerialBattery:Init of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:42:00.799354500 INFO:SerialBattery:Test of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:42:05.814891500 ERROR:SerialBattery:>>> ERROR: Unable to connect with BLE device
2024-02-13 16:42:05.820013500 ERROR:SerialBattery:No BMS found at A5:C2:37:05:95:B6
2024-02-13 16:42:05.820720500 ERROR:SerialBattery:ERROR >>> No battery connection at LltJbd_Ble
2024-02-13 16:42:07.386446500 INFO:SerialBattery:BLE client disconnected
2024-02-13 16:42:07.394047500 ERROR:SerialBattery:BleakClient(): Exception occurred: BleakError('failed to discover services, device disconnected') of type <class 'bleak.exc.BleakError'> in /opt/victronenergy/dbus-serialbattery/bms/lltjbd_ble.py line #100
2024-02-13 16:42:07.726596500
2024-02-13 16:42:07.727371500 INFO:Bluetooth details
2024-02-13 16:42:07.792414500 [CHG] Device A5:C2:37:05:95:B6 RSSI: -62
2024-02-13 16:42:07.878966500 Attempting to disconnect from A5:C2:37:05:95:B6
2024-02-13 16:42:07.878978500 Successful disconnected
2024-02-13 16:42:13.048343500 Device A5:C2:37:05:95:B6 (public)
2024-02-13 16:42:13.048353500   Alias: Bateria Serv 2
2024-02-13 16:42:13.048356500   Paired: no
2024-02-13 16:42:13.048357500   Trusted: no
2024-02-13 16:42:13.048358500   Blocked: no
2024-02-13 16:42:13.048359500   Connected: no
2024-02-13 16:42:13.048361500   LegacyPairing: no
2024-02-13 16:42:13.048362500   UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
2024-02-13 16:42:13.048365500   RSSI: -62
2024-02-13 16:42:13.050752500
2024-02-13 16:42:14.452005500 INFO:SerialBattery:
2024-02-13 16:42:14.452768500 INFO:SerialBattery:Starting dbus-serialbattery
2024-02-13 16:42:14.454893500 INFO:SerialBattery:Venus OS v3.14
2024-02-13 16:42:14.455533500 INFO:SerialBattery:dbus-serialbattery v1.1.20240212dev
2024-02-13 16:42:15.014904500 INFO:SerialBattery:Init of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:42:15.015883500 INFO:SerialBattery:Test of LltJbd_Ble at A5:C2:37:05:95:B6
2024-02-13 16:42:20.028885500 ERROR:SerialBattery:>>> ERROR: Unable to connect with BLE device
2024-02-13 16:42:20.033066500 ERROR:SerialBattery:No BMS found at A5:C2:37:05:95:B6
2024-02-13 16:42:20.033824500 ERROR:SerialBattery:ERROR >>> No battery connection at LltJbd_Ble
2024-02-13 16:42:25.775663500 ERROR:SerialBattery:BleakClient(): asyncio.exceptions.TimeoutError: TimeoutError() of type <class 'asyncio.exceptions.TimeoutError'> in /opt/victronenergy/dbus-serialbattery/bms/lltjbd_ble.py line #100
2024-02-13 16:42:26.136626500
2024-02-13 16:42:26.136634500 INFO:Bluetooth details
2024-02-13 16:42:26.180636500 [CHG] Device A5:C2:37:05:95:B6 RSSI: -62
2024-02-13 16:42:26.271000500 Attempting to disconnect from A5:C2:37:05:95:B6
2024-02-13 16:42:26.271010500 Successful disconnected
2024-02-13 16:44:36.110049500 *** CCGX booted (0) ***
2024-02-13 16:50:07.044734500 *** CCGX booted (0) ***
2024-02-13 16:59:48.912221500 *** CCGX booted (0) ***
2024-02-13 17:10:56.036678500 *** CCGX booted (0) ***

==> /data/log/dbus-blebattery.0/current <==
2024-02-13 17:16:47.597959500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:47.862534500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdb\xfc\x55\x77
2024-02-13 17:16:47.878622500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:47.879411500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.547V
2024-02-13 17:16:48.634579500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:48.897317500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdb\xfc\x55\x77
2024-02-13 17:16:48.901418500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:48.902314500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.547V
2024-02-13 17:16:49.623224500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:49.887114500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdc\xfc\x54\x77
2024-02-13 17:16:49.893384500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:49.896469500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.548V
2024-02-13 17:16:50.616565500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:50.880577500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdb\xfc\x55\x77
2024-02-13 17:16:50.917026500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:50.918545500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.547V
2024-02-13 17:16:51.599932500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:51.878477500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdb\xfc\x55\x77
2024-02-13 17:16:51.884624500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:51.893446500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.547V
2024-02-13 17:16:52.637789500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:52.902458500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdc\xfc\x54\x77
2024-02-13 17:16:52.918513500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:52.920531500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.548V
2024-02-13 17:16:53.627822500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:53.893379500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdb\xfc\x55\x77
2024-02-13 17:16:53.902886500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:53.904214500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.547V
2024-02-13 17:16:54.619067500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x00\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf8\x30\x77
2024-02-13 17:16:54.882450500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdd\x0d\xda\x0d\xdd\x0d\xdc\xfc\x54\x77
2024-02-13 17:16:54.890352500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:54.892036500 DEBUG:SerialBattery:Cells:[1]3.549V [2]3.546V [3]3.549V [4]3.548V
2024-02-13 17:16:55.606406500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x57\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf7\xd9\x77
2024-02-13 17:16:55.874080500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xde\x0d\xdb\x0d\xdd\x0d\xdc\xfc\x52\x77
2024-02-13 17:16:55.914049500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:55.916098500 DEBUG:SerialBattery:Cells:[1]3.55V [2]3.547V [3]3.549V [4]3.548V
2024-02-13 17:16:56.644466500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\x9a\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf7\x96\x77
2024-02-13 17:16:56.907600500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xde\x0d\xdc\x0d\xde\x0d\xdd\xfc\x4f\x77
2024-02-13 17:16:56.932780500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:56.934414500 DEBUG:SerialBattery:Cells:[1]3.55V [2]3.548V [3]3.55V [4]3.549V
2024-02-13 17:16:57.631758500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\xf1\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf7\x3f\x77
2024-02-13 17:16:57.897737500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xdf\x0d\xdc\x0d\xde\x0d\xdd\xfc\x4e\x77
2024-02-13 17:16:57.910837500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:57.910846500 DEBUG:SerialBattery:Cells:[1]3.551V [2]3.548V [3]3.55V [4]3.549V
2024-02-13 17:16:58.621933500 DEBUG:SerialBattery:bytearray: \xdd\x03\x00\x22\x05\x8b\x00\xb8\xb3\xa7\xb3\xb0\x00\x06\x2f\x46\x00\x00\x00\x00\x00\x00\x28\x64\x03\x04\x01\x0b\x8a\x00\x00\x00\xb3\xb0\xb3\xa7\x00\x00\xf7\x78\x77
2024-02-13 17:16:58.887400500 DEBUG:SerialBattery:bytearray: \xdd\x04\x00\x08\x0d\xde\x0d\xdc\x0d\xde\x0d\xdd\xfc\x4f\x77
2024-02-13 17:16:58.918592500 DEBUG:SerialBattery:logged to dbus [99.98]
2024-02-13 17:16:58.919447500 DEBUG:SerialBattery:Cells:[1]3.55V [2]3.548V [3]3.55V [4]3.549V

Any other information that may be helpful

I have notices with my setup, that after Absortion with a 7.5a CCL, it cycles from 7.5 ABS to 70a Abs. But my quattro charger goes from Abs to Bulk. Never reaches Float althoug the driver may deliver Float and charger on Abs or BUlk delivers Float voltage but on Abs or Bulk

mr-manuel commented 8 months ago

The previous versions take longer to start/restart. I will add a short sleep time, so the BMS can recover to be ready for a new connection.

mr-manuel commented 8 months ago

@AlexdeKairos could you install the latest version from my dev build?

AlexdeKairos commented 8 months ago

Seems to running better. My second ble battery has some troubleshoot and is not avail for testing. Second unit used to give more trouble.

Next week I'll try again and report.

mr-manuel commented 8 months ago

@AlexdeKairos any news?

AlexdeKairos commented 8 months ago

Sorry Manuel. Most of the problems I could find in several versions of the driver were related to multiple BLE batteries. Unfortunately my second battery BMS has failed and I'm waiting for replacement but it may take lots of time.

With my single temporary setup, driver has been working for one week without a single failure.

mr-manuel commented 8 months ago

I close this issue in the meanwhile. Feel free to open a new one, if you have further problems.