Skip to content

Commit

Permalink
Merge pull request #52 from boneIO-eu/socomec
Browse files Browse the repository at this point in the history
Socomec
  • Loading branch information
pszafer authored Apr 23, 2024
2 parents c1ba4f8 + b835031 commit be1aa14
Show file tree
Hide file tree
Showing 5 changed files with 414 additions and 302 deletions.
26 changes: 23 additions & 3 deletions boneio/sensor/modbus/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,26 @@ def multiply0_01(result, base, addr):
return round(low * 0.01, 4)


def multiply0_001(result, base, addr):
low = result.getRegister(addr - base)
return round(low * 0.001, 4)


def multiply10(result, base, addr):
low = result.getRegister(addr - base)
return round(low * 10, 4)


def multiply100(result, base, addr):
low = result.getRegister(addr - base)
return round(low * 100, 4)


def multiply1000(result, base, addr):
low = result.getRegister(addr - base)
return round(low * 1000, 4)


def regular_result(result, base, addr):
return result.getRegister(addr - base)

Expand All @@ -68,8 +83,11 @@ def regular_result(result, base, addr):
"float32": float32,
"multiply0_1": multiply0_1,
"multiply0_01": multiply0_01,
"multiply0_001": multiply0_001,
"floatsofar": floatsofar,
"multiply10": multiply10,
"multiply100": multiply100,
"multiply1000": multiply1000,
"regular": regular_result,
}
REGISTERS_BASE = "registers_base"
Expand Down Expand Up @@ -138,7 +156,9 @@ def _send_ha_autodiscovery(
sensor_id=sensor_id,
**kwargs,
)
self._config_helper.add_autodiscovery_msg(topic=topic, payload=payload, ha_type=SENSOR)
self._config_helper.add_autodiscovery_msg(
topic=topic, payload=payload, ha_type=SENSOR
)
self._send_message(topic=topic, payload=payload)

def _send_discovery_for_all_registers(self, register: int = 0) -> datetime:
Expand Down Expand Up @@ -183,8 +203,8 @@ async def check_availability(self) -> None:
method=register_method,
)
if register is not None:
self._discovery_sent = self._send_discovery_for_all_registers(
register
self._discovery_sent = (
self._send_discovery_for_all_registers(register)
)
await asyncio.sleep(2)
break
Expand Down
Loading

0 comments on commit be1aa14

Please sign in to comment.