From 763af8b4cfcff38441fdff78b89843c44f6d3a56 Mon Sep 17 00:00:00 2001 From: Stefan Allius Date: Fri, 3 May 2024 18:24:06 +0200 Subject: [PATCH] add send_modbus_cmd() --- app/src/gen3plus/solarman_v5.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/gen3plus/solarman_v5.py b/app/src/gen3plus/solarman_v5.py index d23efa3..83f4d49 100644 --- a/app/src/gen3plus/solarman_v5.py +++ b/app/src/gen3plus/solarman_v5.py @@ -6,12 +6,14 @@ from datetime import datetime if __name__ == "app.src.gen3plus.solarman_v5": from app.src.messages import hex_dump_memory, Message + from app.src.modbus import Modbus from app.src.config import Config from app.src.gen3plus.infos_g3p import InfosG3P from app.src.infos import Register else: # pragma: no cover from messages import hex_dump_memory, Message from config import Config + from modbus import Modbus from gen3plus.infos_g3p import InfosG3P from infos import Register # import traceback @@ -56,6 +58,8 @@ class SolarmanV5(Message): self.snr = 0 self.db = InfosG3P() self.time_ofs = 0 + self.mb = Modbus() + self.forward_modbus_rep = False self.switch = { 0x4210: self.msg_data_ind, # real time data @@ -293,6 +297,14 @@ class SolarmanV5(Message): self._heartbeat()) self.__finish_send_msg() + async def send_modbus_cmd(self, func, addr, val) -> None: + self.forward_modbus_rep = False + self.__build_header(0x4510) + self._send_buffer += struct.pack(' None: self.__build_header(0x4510) self._send_buffer += struct.pack(f'