removed pack polling from base device
This commit is contained in:
1 parent
eb701de865
commit
542f244a28
8 files changed
+60
-42
No files matched your search
@@ -11,7 +11,7 @@ class AC500(ProtocolV1Device):
|
||||
def __init__(self, address: str, sn: str):
|
||||
super().__init__(address, "AC500", sn)
|
||||
|
||||
# Details (matches EP500 + AC300)
|
||||
# Details
|
||||
self.struct.add_enum_field("ac_output_mode", 70, OutputMode)
|
||||
self.struct.add_decimal_field("internal_ac_voltage", 71, 1)
|
||||
self.struct.add_decimal_field("internal_current_one", 72, 1)
|
||||
@@ -27,10 +27,15 @@ class AC500(ProtocolV1Device):
|
||||
self.struct.add_decimal_field("internal_dc_input_power", 87, 1)
|
||||
self.struct.add_decimal_field("internal_dc_input_current", 88, 2)
|
||||
|
||||
# Battery packs (matches EP500)
|
||||
# Battery packs
|
||||
self.struct.add_uint_field("pack_num_max", 91) # internal
|
||||
self.struct.add_decimal_field("total_battery_voltage", 92, 1)
|
||||
self.struct.add_uint_field("pack_num", 96) # internal
|
||||
self.struct.add_decimal_field("pack_voltage", 98, 2) # Full pack voltage
|
||||
self.struct.add_uint_field("pack_battery_percent", 99)
|
||||
self.struct.add_decimal_array_field("cell_voltages", 105, 16, 2) # internal
|
||||
|
||||
# Controls (matches EP500 + AC300)
|
||||
# Controls
|
||||
self.struct.add_enum_field("ups_mode", 3001, UpsMode)
|
||||
self.struct.add_bool_field("split_phase_on", 3004)
|
||||
self.struct.add_enum_field(
|
||||
@@ -68,6 +73,9 @@ class AC500(ProtocolV1Device):
|
||||
|
||||
@property
|
||||
def pack_polling_commands(self) -> List[ReadHoldingRegisters]:
|
||||
return super().pack_polling_commands + [
|
||||
return [
|
||||
ReadHoldingRegisters(91, 2),
|
||||
ReadHoldingRegisters(96, 1),
|
||||
ReadHoldingRegisters(98, 2),
|
||||
ReadHoldingRegisters(105, 16),
|
||||
]
|
||||
Reference in new issue
Block a user