Prepare decoder template for HM-1500

This commit is contained in:
Jan-Jonas Sämann 2022-05-05 19:42:58 +02:00
parent 9d75ca0c34
commit 9026dfa4bc
2 changed files with 55 additions and 1 deletions

View file

@ -76,7 +76,8 @@ class ResponseDecoderFactory:
('HM350', r'^112172......'),
('HM600', r'^114172......'),
('HM700', r'^114174......'),
('HM1200', r'^116170......')
('HM1200', r'^116170......'),
('HM1500', r'^116171......')
]
ser_str = str(self.inverter_ser)

View file

@ -141,3 +141,56 @@ class HM600_Decode0C(HM600_Decode0B):
def __init__(self, response):
self.response = response
# HM-1500
class HM1500_Decode0B(StatusResponse):
def __init__(self, response):
self.response = response
@property
def dc_voltage_0(self):
return self.unpack('>H', 2)[0]/10
@property
def dc_current_0(self):
return self.unpack('>H', 4)[0]/100
@property
def dc_power_0(self):
return self.unpack('>H', 6)[0]/10
@property
def dc_energy_total_0(self):
return self.unpack('>L', 14)[0]
@property
def dc_energy_daily_0(self):
return self.unpack('>H', 22)[0]
@property
def dc_voltage_1(self):
return self.unpack('>H', 8)[0]/10
@property
def dc_current_1(self):
return self.unpack('>H', 10)[0]/100
@property
def dc_power_1(self):
return self.unpack('>H', 12)[0]/10
@property
def dc_energy_total_1(self):
return self.unpack('>L', 18)[0]
@property
def dc_energy_daily_1(self):
return self.unpack('>H', 24)[0]
@property
def ac_voltage_0(self):
return self.unpack('>H', 26)[0]/10
@property
def ac_current_0(self):
return self.unpack('>H', 34)[0]/10
@property
def ac_power_0(self):
return self.unpack('>H', 30)[0]/10
@property
def frequency(self):
return self.unpack('>H', 28)[0]/100
@property
def temperature(self):
return self.unpack('>H', 38)[0]/10