Added definitions of the registers.
This commit is contained in:
parent
d2c6185c47
commit
9a48d6c681
@ -1,9 +1,47 @@
|
|||||||
|
from typing import Dict, Final
|
||||||
|
from minimalmodbus import NoResponseError
|
||||||
from .generic import ModbusRTUDevice
|
from .generic import ModbusRTUDevice
|
||||||
|
|
||||||
|
|
||||||
class SensorWiredRHT(ModbusRTUDevice):
|
class SensorWiredIAQ(ModbusRTUDevice):
|
||||||
'''
|
'''
|
||||||
Wired sensor measuring temperature, relative humidity,
|
Wired sensor measuring temperature, relative humidity
|
||||||
carbon dioxide and VOC, optionally particulate matter
|
and light intensity.
|
||||||
'''
|
'''
|
||||||
IDENTIFIER: int = 0xbb01
|
IDENTIFIER: int = 0xb00b
|
||||||
|
input_registers: Dict[str, int] = {
|
||||||
|
'SER_NUM_1': 30001,
|
||||||
|
'SER_NUM_2': 30002,
|
||||||
|
'T': 30003, # from SHT4x
|
||||||
|
'T_F': 30004,
|
||||||
|
'RH': 30005, # from SHT4x
|
||||||
|
'LIGHT_INTENSITY_1': 30006,
|
||||||
|
'LIGHT_INTENSITY_2': 30007,
|
||||||
|
'ERROR_T_RH': 30008,
|
||||||
|
'ERROR_LIGHT': 30009
|
||||||
|
} | ModbusRTUDevice.input_registers
|
||||||
|
# TODO use super, but __class__ not defined
|
||||||
|
holding_registers: Dict[str, int] = {
|
||||||
|
'MODBUS_address': 40001,
|
||||||
|
'baudrate': 40002,
|
||||||
|
'LTR329_GAIN': 40003,
|
||||||
|
'LTR329_MEAS_RATE': 40004,
|
||||||
|
'LTR329_INTEGRATION_TIME': 40005,
|
||||||
|
'LTR329_MODE': 40006
|
||||||
|
} | ModbusRTUDevice.holding_registers
|
||||||
|
RESET_MAGIC_NUMBER: Final[int] = 0xABCD
|
||||||
|
|
||||||
|
@property
|
||||||
|
def CO2(self):
|
||||||
|
return int(self.read_register(self.input_registers['CO2']))
|
||||||
|
|
||||||
|
@property
|
||||||
|
def T(self):
|
||||||
|
# TODO maybe use signed version?
|
||||||
|
return self.read_register(self.input_registers['T'],
|
||||||
|
signed=True
|
||||||
|
) / 10
|
||||||
|
|
||||||
|
@property
|
||||||
|
def RH(self):
|
||||||
|
return self.read_register(self.input_registers['RH'])
|
||||||
|
Loading…
Reference in New Issue
Block a user