fix dc switch, added some switches for eb3a

This commit is contained in:
Patrick762 committed 2024-03-12 20:55:09 +01:00
1 parent 7596f8cee1
commit babdd1755e
4 files changed
+11 -8

No files matched your search

@@ -64,7 +64,7 @@ class ProtocolV1Device(BluettiDevice):
@property @property
def writable_ranges(self) -> List[range]: def writable_ranges(self) -> List[range]:
return [range(3006, 3008)] return [range(3006, 3009)]
@property @property
def pack_polling_commands(self) -> List[ReadHoldingRegisters]: def pack_polling_commands(self) -> List[ReadHoldingRegisters]:
@@ -28,14 +28,15 @@ class EB3A(ProtocolV1Device):
return super().polling_commands + [ return super().polling_commands + [
ReadHoldingRegisters(77, 1), ReadHoldingRegisters(77, 1),
ReadHoldingRegisters(86, 1), ReadHoldingRegisters(86, 1),
ReadHoldingRegisters(3034, 1),
ReadHoldingRegisters(3060, 1), ReadHoldingRegisters(3060, 1),
ReadHoldingRegisters(3063, 4), ReadHoldingRegisters(3063, 5),
] ]
@property @property
def writable_ranges(self) -> List[range]: def writable_ranges(self) -> List[range]:
return super().writable_ranges + [ return super().writable_ranges + [
range(3034), range(3034, 3035),
range(3060), range(3060, 3061),
range(3063, 3066), range(3063, 3067),
] ]
@@ -18,7 +18,6 @@ class FieldType(Enum):
NUMERIC = auto() NUMERIC = auto()
BOOL = auto() BOOL = auto()
ENUM = auto() ENUM = auto()
BUTTON = auto()
class FieldAttributes: class FieldAttributes:
@@ -220,7 +219,7 @@ FIELD_ATTRIBUTES: dict[str, FieldAttributes] = {
"total_grid_feed": EnergyFieldAttributes("Total Grid Feed"), "total_grid_feed": EnergyFieldAttributes("Total Grid Feed"),
# Device specific controls # Device specific controls
"power_off": FieldAttributes( "power_off": FieldAttributes(
type=FieldType.BUTTON, type=FieldType.BOOL,
setter=True, setter=True,
name="Power Off", name="Power Off",
), ),
@@ -294,7 +293,7 @@ FIELD_ATTRIBUTES: dict[str, FieldAttributes] = {
), ),
"power_lifting_on": FieldAttributes( "power_lifting_on": FieldAttributes(
type=FieldType.BOOL, type=FieldType.BOOL,
setter=False, # Disabled for safety reasons setter=True,
name="Power Lifting", name="Power Lifting",
), ),
} }
+3
View File
@@ -28,6 +28,9 @@ SUPPORTED_MODELS = [
CONTROL_FIELDS = [ CONTROL_FIELDS = [
"ac_output_on_switch", "ac_output_on_switch",
"dc_output_on_switch", "dc_output_on_switch",
"power_off",
"eco_on",
"power_lifting_on",
] ]
DIAGNOSTIC_FIELDS = [ DIAGNOSTIC_FIELDS = [