mirror of
https://github.com/andvikt/mega_hacs.git
synced 2026-02-02 23:47:47 +05:00
add sensor filters
This commit is contained in:
@@ -228,6 +228,7 @@ class Mega1WSensor(FilterBadValues):
|
|||||||
self._device_class = device_class
|
self._device_class = device_class
|
||||||
self._unit_of_measurement = unit_of_measurement
|
self._unit_of_measurement = unit_of_measurement
|
||||||
self.mega.sensors.append(self)
|
self.mega.sensors.append(self)
|
||||||
|
self.prev_value = None
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def unit_of_measurement(self):
|
def unit_of_measurement(self):
|
||||||
@@ -281,7 +282,8 @@ class Mega1WSensor(FilterBadValues):
|
|||||||
ret = float(ret)
|
ret = float(ret)
|
||||||
ret = str(ret)
|
ret = str(ret)
|
||||||
except:
|
except:
|
||||||
ret = None
|
self.lg.warning(f'could not convert to float "{ret}"')
|
||||||
|
ret = self.prev_value
|
||||||
if self.customize.get(CONF_HEX_TO_FLOAT):
|
if self.customize.get(CONF_HEX_TO_FLOAT):
|
||||||
try:
|
try:
|
||||||
ret = struct.unpack('!f', bytes.fromhex(ret))[0]
|
ret = struct.unpack('!f', bytes.fromhex(ret))[0]
|
||||||
@@ -296,6 +298,7 @@ class Mega1WSensor(FilterBadValues):
|
|||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
ret = self.filter_value(ret)
|
ret = self.filter_value(ret)
|
||||||
|
self.prev_value = ret
|
||||||
return str(ret)
|
return str(ret)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|||||||
Reference in New Issue
Block a user