Patrick762 / hassio-bluetti-bt

Bluetti Integration for Home Assistant
MIT License
30 stars 9 forks source link

AC300: Version up to 0.0.23 Incorrect values and batteries are not recognized. #101

Closed sibelle-labs closed 1 month ago

sibelle-labs commented 1 month ago

What happened?

Hi Patrick ! my 2 cent's debug on ac300 with version 0.0.23

1) no data for total_battery_voltage. on logs showing ...

2024-05-21 21:42:47.141 WARNING (MainThread) [custom_components.bluetti_bt.sensor] No data for available for (total_battery_voltage)

2) battery packs not detected.. on logs showing ...

2024-05-22 21:26:51.842 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed pack_num(None) does not match expected '4'

grafik

How can i help you ? Thanks a lot Cheers

Version

0.0.23

What device are you seeing the problem on?

AC300

What bluetooth connection are you using?

ESPHome bluetooth proxy

Have you changed the integration settings?

false

Integration settings (if you changed them)

No response

Relevant log output

No response

sibelle-labs commented 1 month ago

Currrent log with 0.0.24

2024-05-31 12:15:43.423 DEBUG (MainThread) [custom_components.bluetti_bt] Init Bluetti BT Integration
2024-05-31 12:15:45.699 INFO (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Reading data
2024-05-31 12:15:45.924 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=10, quantity=10)
2024-05-31 12:15:46.265 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 25 bytes
2024-05-31 12:15:46.265 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'AC300\x00\x00\x00\x00\x00\x00\x00\x03\xfa\x12V\x0cg\x02\x06'
2024-05-31 12:15:46.267 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'device_type': 'AC300'}
2024-05-31 12:15:46.267 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=36, quantity=4)
2024-05-31 12:15:46.565 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 13 bytes
2024-05-31 12:15:46.565 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00a\x04\x15\x04\x10\x00\x00'
2024-05-31 12:15:46.565 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'dc_input_power': 97, 'ac_input_power': 1045, 'ac_output_power': 1040, 'dc_output_power': 0}
2024-05-31 12:15:46.565 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=41, quantity=1)
2024-05-31 12:15:46.825 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:46.826 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x1ez'
2024-05-31 12:15:46.826 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'power_generation': Decimal('780.2')}
2024-05-31 12:15:46.826 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=43, quantity=1)
2024-05-31 12:15:47.129 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:47.130 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x0e'
2024-05-31 12:15:47.130 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'total_battery_percent': 14}
2024-05-31 12:15:47.130 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=48, quantity=2)
2024-05-31 12:15:47.437 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:47.437 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x01\x00\x01'
2024-05-31 12:15:47.437 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'ac_output_on': True, 'dc_output_on': True}
2024-05-31 12:15:47.437 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3007, quantity=2)
2024-05-31 12:15:47.747 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:47.747 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x01\x00\x01'
2024-05-31 12:15:47.748 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'ac_output_on_switch': True, 'dc_output_on_switch': True}
2024-05-31 12:15:47.748 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=70, quantity=11)
2024-05-31 12:15:48.053 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 27 bytes
2024-05-31 12:15:48.053 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x03\t9\x00\x07\xff\xda\x13\x85\x00,\x04\x10\tB\x00$\x04\x15\x13\x85'
2024-05-31 12:15:48.053 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'ac_output_mode': <OutputMode.BYPASS_OUTPUT_D: 3>, 'internal_ac_voltage': Decimal('236.1'), 'internal_current_one': Decimal('0.7'), 'internal_power_one': 65498, 'internal_ac_frequency': Decimal('49.97'), 'internal_current_two': Decimal('4.4'), 'internal_power_two': 1040, 'ac_input_voltage': Decimal('237'), 'internal_current_three': Decimal('3.6'), 'internal_power_three': 1045, 'ac_input_frequency': Decimal('49.97')}
2024-05-31 12:15:48.053 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=86, quantity=3)
2024-05-31 12:15:48.462 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 11 bytes
2024-05-31 12:15:48.462 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x03q\x001\x00\x05'
2024-05-31 12:15:48.462 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'internal_dc_input_voltage': 88.10000000000001, 'internal_dc_input_power': Decimal('4.9'), 'internal_dc_input_current': Decimal('0.05')}
2024-05-31 12:15:48.462 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3001, quantity=1)
2024-05-31 12:15:48.769 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:48.769 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x02'
2024-05-31 12:15:48.769 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'ups_mode': <UpsMode.PV_PRIORITY: 2>}
2024-05-31 12:15:48.769 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3004, quantity=2)
2024-05-31 12:15:49.078 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:49.078 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x00\x00\x01'
2024-05-31 12:15:49.079 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'split_phase_on': False, 'split_phase_machine_mode': <SplitPhaseMachineType.MASTER: 1>}
2024-05-31 12:15:49.079 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3011, quantity=1)
2024-05-31 12:15:49.382 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:49.383 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x01'
2024-05-31 12:15:49.383 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'grid_charge_on': True}
2024-05-31 12:15:49.383 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3013, quantity=1)
2024-05-31 12:15:49.689 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:49.689 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x01'
2024-05-31 12:15:49.690 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'time_control_on': True}
2024-05-31 12:15:49.690 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3015, quantity=2)
2024-05-31 12:15:49.997 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:49.997 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\n\x00Z'
2024-05-31 12:15:49.998 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'battery_range_start': 10, 'battery_range_end': 90}
2024-05-31 12:15:49.998 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=3061, quantity=1)
2024-05-31 12:15:50.304 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:50.304 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Raw data: b'\x00\x03'
2024-05-31 12:15:50.304 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'auto_sleep_mode': <AutoSleepMode.ONE_MINUTE: 3>}
2024-05-31 12:15:50.304 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Polling battery packs
2024-05-31 12:15:50.304 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting WriteSingleRegister(address=3006, value=0x01)
2024-05-31 12:15:50.611 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 8 bytes
2024-05-31 12:15:55.612 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=91, quantity=2)
2024-05-31 12:15:55.936 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:55.937 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'pack_num_max': 4, 'total_battery_voltage': Decimal('52.8')}
2024-05-31 12:15:55.937 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed pack_num(None) does not match expected '1'
2024-05-31 12:15:55.937 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=96, quantity=1)
2024-05-31 12:15:56.243 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 7 bytes
2024-05-31 12:15:56.243 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'pack_num': 1}
2024-05-31 12:15:56.243 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=98, quantity=2)
2024-05-31 12:15:56.549 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:56.549 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'pack_voltage': Decimal('52.7'), 'pack_battery_percent': 15}
2024-05-31 12:15:56.549 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=105, quantity=16)
2024-05-31 12:15:56.860 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 37 bytes
2024-05-31 12:15:56.861 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'cell_voltages': [Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28'), Decimal('3.27'), Decimal('3.28'), Decimal('3.27'), Decimal('3.28'), Decimal('3.28'), Decimal('3.28')]}
2024-05-31 12:15:56.861 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=201, quantity=2)
2024-05-31 12:15:57.165 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 9 bytes
2024-05-31 12:15:57.165 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Parsed data: {'pack_bms_version': Decimal('1014.13')}
2024-05-31 12:15:57.165 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting WriteSingleRegister(address=3006, value=0x02)
2024-05-31 12:15:57.574 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Got 8 bytes
2024-05-31 12:16:02.575 DEBUG (MainThread) [custom_components.bluetti_bt.bluetti_bt_lib.bluetooth.device_reader] Requesting ReadHoldingRegisters(starting_address=91, quantity=2)

grafik

Patrick762 commented 1 month ago

I'm currently working on it. Got the total_pack_voltage already. But somehow the sensors for the packs are not added yet (but they're already read)

Patrick762 commented 1 month ago

Release 0.1 is now out and should fix this issue

sibelle-labs commented 1 month ago

Patrick, excelent job ! Thanks a lot !