From 603a0e8672c8354e4f63853b9b94bbacc39aba51 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 14:38:16 -0500 Subject: [PATCH 01/34] bug fix need to figure out proper solution later. --- classes/transports/modbus_base.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/classes/transports/modbus_base.py b/classes/transports/modbus_base.py index 130ff9d..2c950d1 100644 --- a/classes/transports/modbus_base.py +++ b/classes/transports/modbus_base.py @@ -458,7 +458,8 @@ def read_modbus_registers(self, ranges : list[tuple] = None, start : int = 0, en if e.error_code == 4: #if no response; probably time out. retry with increased delay isError = True else: - raise + isError = True #other erorrs. ie Failed to connect[ModbusSerialClient(rtu baud[9600])] + if register.isError() or isError: self._log.error(register.__str__) @@ -482,7 +483,6 @@ def read_modbus_registers(self, ranges : list[tuple] = None, start : int = 0, en self.modbus_delay = self.modbus_delay_setting - retry -= 1 if retry < 0: retry = 0 From a52cdc0acf663b407641c9273eb2cf72b9541834 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:10:01 -0500 Subject: [PATCH 02/34] add identifiers to state topics for multi-transport this could break non-ha setups. :( i screwed up. --- classes/transports/canbus.py | 2 +- classes/transports/modbus_base.py | 2 +- classes/transports/mqtt.py | 13 +++++++++---- classes/transports/transport_base.py | 2 +- protocol_gateway.py | 4 ++-- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/classes/transports/canbus.py b/classes/transports/canbus.py index b01c38b..767b93d 100644 --- a/classes/transports/canbus.py +++ b/classes/transports/canbus.py @@ -220,7 +220,7 @@ def enable_write(self): self.write_enabled = True self._log.warning("enable write - validation on the todo") - def write_data(self, data : dict[str, str]) -> None: + def write_data(self, data : dict[str, str], from_transport : transport_base) -> None: if not self.write_enabled: return diff --git a/classes/transports/modbus_base.py b/classes/transports/modbus_base.py index 2c950d1..a194c37 100644 --- a/classes/transports/modbus_base.py +++ b/classes/transports/modbus_base.py @@ -117,7 +117,7 @@ def enable_write(self): self.write_enabled = True self._log.warning("enable write - validation passed") - def write_data(self, data : dict[str, str]) -> None: + def write_data(self, data : dict[str, str], from_transport : transport_base) -> None: if not self.write_enabled: return diff --git a/classes/transports/mqtt.py b/classes/transports/mqtt.py index f184d03..fded504 100644 --- a/classes/transports/mqtt.py +++ b/classes/transports/mqtt.py @@ -153,7 +153,7 @@ def on_connect(self, client, userdata, flags, rc): __write_topics : dict[str, registry_map_entry] = {} - def write_data(self, data : dict[str, str]): + def write_data(self, data : dict[str, str], from_transport : transport_base): if not self.write_enabled: return @@ -167,16 +167,19 @@ def write_data(self, data : dict[str, str]): if info.rc == MQTT_ERR_NO_CONN: self.connected = False + + identifier = from_transport.device_model + "_" + from_transport.device_serial_number + if(self.json): # Serializing json json_object = json.dumps(data, indent=4) - self.client.publish(self.base_topic, json_object, 0, properties=self.mqtt_properties) + self.client.publish(self.base_topic+identifier, json_object, 0, properties=self.mqtt_properties) else: for entry, val in data.items(): if isinstance(val, float) and self.max_precision >= 0: #apply max_precision on mqtt transport val = round(val, self.max_precision) - self.client.publish(str(self.base_topic+'/'+entry).lower(), str(val)) + self.client.publish(str(self.base_topic+identifier+'/'+entry).lower(), str(val)) def client_on_message(self, client, userdata, msg): """ The callback for when a PUBLISH message is received from the server. """ @@ -249,11 +252,13 @@ def mqtt_discovery(self, from_transport : transport_base): disc_payload['name'] = clean_name disc_payload['unique_id'] = "hotnoob_" + from_transport.device_serial_number + "_"+clean_name + identifier = from_transport.device_model + "_" + from_transport.device_serial_number + writePrefix = "" if from_transport.write_enabled and item.write_mode == WriteMode.WRITE: writePrefix = "" #home assistant doesnt like write prefix - disc_payload['state_topic'] = self.base_topic +writePrefix+ "/"+clean_name + disc_payload['state_topic'] = self.base_topic + identifier + writePrefix+ "/"+clean_name if item.unit: disc_payload['unit_of_measurement'] = item.unit diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index d6363ae..29ef61c 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -81,7 +81,7 @@ def _get_top_class_name(cls, cls_obj): def connect(self): pass - def write_data(self, data : dict[str, registry_map_entry]): + def write_data(self, data : dict[str, registry_map_entry], from_transport : transport_base): ''' general purpose write function for between transports''' pass diff --git a/protocol_gateway.py b/protocol_gateway.py index cfa1765..6ef43f8 100644 --- a/protocol_gateway.py +++ b/protocol_gateway.py @@ -171,7 +171,7 @@ def on_message(self, transport : transport_base, entry : registry_map_entry, dat for to_transport in self.__transports: if to_transport.transport_name != transport.transport_name: if to_transport.transport_name == transport.bridge or transport.transport_name == to_transport.bridge: - to_transport.write_data({entry.variable_name : data}) + to_transport.write_data({entry.variable_name : data}, transport) break def run(self): @@ -204,7 +204,7 @@ def run(self): if transport.bridge: for to_transport in self.__transports: if to_transport.transport_name == transport.bridge: - to_transport.write_data(info) + to_transport.write_data(info, transport) break except Exception as err: From 485db3381993c56e5521fd2dd3d79a75f8a25031 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:11:26 -0500 Subject: [PATCH 03/34] Update transport_base.py --- classes/transports/transport_base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 29ef61c..9ee73a4 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -81,7 +81,7 @@ def _get_top_class_name(cls, cls_obj): def connect(self): pass - def write_data(self, data : dict[str, registry_map_entry], from_transport : transport_base): + def write_data(self, data : dict[str, registry_map_entry], from_transport : 'transport_base'): ''' general purpose write function for between transports''' pass From e47d4fcd03f5860f35b701f4e69bb9d6a0367d00 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:15:25 -0500 Subject: [PATCH 04/34] add transport name in debug --- classes/transports/transport_base.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 9ee73a4..920c4e3 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -33,15 +33,15 @@ class transport_base: def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_settings' = None) -> None: + self.transport_name = settings.name #section name + #apply log level to logger self._log_level = getattr(logging, settings.get('log_level', fallback='INFO'), logging.INFO) self._log : logging.Logger = logging.getLogger(__name__) self._log.setLevel(self._log_level) - - self.transport_name = settings.name #section name - self.type = self.__class__.__name__ + self.type = self.__class__.__name__ +"["+self.transport_name+"]" self.protocolSettings = protocolSettings if not self.protocolSettings: #if not, attempt to load. lazy i know From 0a72e9029126bff9b01d33796c28b2c379b77c1d Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:20:20 -0500 Subject: [PATCH 05/34] Update transport_base.py --- classes/transports/transport_base.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 920c4e3..9499167 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -37,11 +37,11 @@ def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_setti #apply log level to logger self._log_level = getattr(logging, settings.get('log_level', fallback='INFO'), logging.INFO) - self._log : logging.Logger = logging.getLogger(__name__) + self._log : logging.Logger = logging.getLogger(__name__ + f"[{self.transport_name}]") self._log.setLevel(self._log_level) - self.type = self.__class__.__name__ +"["+self.transport_name+"]" + self.type = self.__class__.__name__ self.protocolSettings = protocolSettings if not self.protocolSettings: #if not, attempt to load. lazy i know From 3411c73f1ebc5f3126192ffbf20048643f40bd3e Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:23:59 -0500 Subject: [PATCH 06/34] Update transport_base.py --- classes/transports/transport_base.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 9499167..9d50996 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -37,7 +37,8 @@ def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_setti #apply log level to logger self._log_level = getattr(logging, settings.get('log_level', fallback='INFO'), logging.INFO) - self._log : logging.Logger = logging.getLogger(__name__ + f"[{self.transport_name}]") + short_name : str = __name__[__name__.rfind('.'): ] if '.' in __name__ else None + self._log : logging.Logger = logging.getLogger(short_name + f"[{self.transport_name}]") self._log.setLevel(self._log_level) From 6ee01583e4f7b4540a895a72c90de4f1f3bec573 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:35:44 -0500 Subject: [PATCH 07/34] clean --- classes/transports/modbus_rtu.py | 2 +- classes/transports/mqtt.py | 11 +++-------- classes/transports/transport_base.py | 2 ++ 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/classes/transports/modbus_rtu.py b/classes/transports/modbus_rtu.py index 8e94e72..d3282ef 100644 --- a/classes/transports/modbus_rtu.py +++ b/classes/transports/modbus_rtu.py @@ -42,7 +42,7 @@ def __init__(self, settings : SectionProxy, protocolSettings : protocol_settings address : int = settings.getint("address", 0) self.addresses = [address] - + # pymodbus compatability; unit was renamed to address if 'slave' in inspect.signature(ModbusSerialClient.read_holding_registers).parameters: self.pymodbus_slave_arg = 'slave' diff --git a/classes/transports/mqtt.py b/classes/transports/mqtt.py index fded504..71152e5 100644 --- a/classes/transports/mqtt.py +++ b/classes/transports/mqtt.py @@ -167,19 +167,16 @@ def write_data(self, data : dict[str, str], from_transport : transport_base): if info.rc == MQTT_ERR_NO_CONN: self.connected = False - - identifier = from_transport.device_model + "_" + from_transport.device_serial_number - if(self.json): # Serializing json json_object = json.dumps(data, indent=4) - self.client.publish(self.base_topic+identifier, json_object, 0, properties=self.mqtt_properties) + self.client.publish(self.base_topic+from_transport.device_identifier, json_object, 0, properties=self.mqtt_properties) else: for entry, val in data.items(): if isinstance(val, float) and self.max_precision >= 0: #apply max_precision on mqtt transport val = round(val, self.max_precision) - self.client.publish(str(self.base_topic+identifier+'/'+entry).lower(), str(val)) + self.client.publish(str(self.base_topic+from_transport.device_identifier+'/'+entry).lower(), str(val)) def client_on_message(self, client, userdata, msg): """ The callback for when a PUBLISH message is received from the server. """ @@ -252,13 +249,11 @@ def mqtt_discovery(self, from_transport : transport_base): disc_payload['name'] = clean_name disc_payload['unique_id'] = "hotnoob_" + from_transport.device_serial_number + "_"+clean_name - identifier = from_transport.device_model + "_" + from_transport.device_serial_number - writePrefix = "" if from_transport.write_enabled and item.write_mode == WriteMode.WRITE: writePrefix = "" #home assistant doesnt like write prefix - disc_payload['state_topic'] = self.base_topic + identifier + writePrefix+ "/"+clean_name + disc_payload['state_topic'] = self.base_topic + from_transport.device_identifier + writePrefix+ "/"+clean_name if item.unit: disc_payload['unit_of_measurement'] = item.unit diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 9d50996..52ade4b 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -17,6 +17,7 @@ class transport_base: device_serial_number : str = '' device_manufacturer : str = 'hotnoob' device_model : str = 'hotnoob' + device_identifier : str = 'hotnoob' bridge : str = '' write_enabled : bool = False max_precision : int = 2 @@ -67,6 +68,7 @@ def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_setti else: self.write_enabled = settings.getboolean("write", self.write_enabled) + self.device_identifier = self.device_model + "_" + self.device_serial_number def init_bridge(self, from_transport : 'transport_base'): From c05db655d112e13c0f27ae8523c8c05eff980c63 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:48:21 -0500 Subject: [PATCH 08/34] improve debug --- classes/transports/mqtt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/transports/mqtt.py b/classes/transports/mqtt.py index 71152e5..a555015 100644 --- a/classes/transports/mqtt.py +++ b/classes/transports/mqtt.py @@ -160,7 +160,7 @@ def write_data(self, data : dict[str, str], from_transport : transport_base): if self.connected: self.connected = self.client.is_connected() - self._log.info("write data to mqtt transport") + self._log.info(f"write data from [{from_transport.transport_name}] to mqtt transport") self._log.info(data) #have to send this every loop, because mqtt doesnt disconnect when HA restarts. HA bug. info = self.client.publish(self.base_topic + "/availability","online", qos=0,retain=True) From 5da3ca471bf5767aac216ca84f34eeec05aa3354 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 17:52:47 -0500 Subject: [PATCH 09/34] Update mqtt.py --- classes/transports/mqtt.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/classes/transports/mqtt.py b/classes/transports/mqtt.py index a555015..3fc412c 100644 --- a/classes/transports/mqtt.py +++ b/classes/transports/mqtt.py @@ -170,13 +170,13 @@ def write_data(self, data : dict[str, str], from_transport : transport_base): if(self.json): # Serializing json json_object = json.dumps(data, indent=4) - self.client.publish(self.base_topic+from_transport.device_identifier, json_object, 0, properties=self.mqtt_properties) + self.client.publish(self.base_topic+'/'+from_transport.device_identifier, json_object, 0, properties=self.mqtt_properties) else: for entry, val in data.items(): if isinstance(val, float) and self.max_precision >= 0: #apply max_precision on mqtt transport val = round(val, self.max_precision) - self.client.publish(str(self.base_topic+from_transport.device_identifier+'/'+entry).lower(), str(val)) + self.client.publish(str(self.base_topic+'/'+from_transport.device_identifier+'/'+entry).lower(), str(val)) def client_on_message(self, client, userdata, msg): """ The callback for when a PUBLISH message is received from the server. """ @@ -253,7 +253,7 @@ def mqtt_discovery(self, from_transport : transport_base): if from_transport.write_enabled and item.write_mode == WriteMode.WRITE: writePrefix = "" #home assistant doesnt like write prefix - disc_payload['state_topic'] = self.base_topic + from_transport.device_identifier + writePrefix+ "/"+clean_name + disc_payload['state_topic'] = self.base_topic + '/' +from_transport.device_identifier + writePrefix+ "/"+clean_name if item.unit: disc_payload['unit_of_measurement'] = item.unit From c5711a6334ffffb4fac06f404fec5cce3220e7ec Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 18:00:03 -0500 Subject: [PATCH 10/34] Update transport_base.py --- classes/transports/transport_base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 52ade4b..1c4621e 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -68,7 +68,7 @@ def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_setti else: self.write_enabled = settings.getboolean("write", self.write_enabled) - self.device_identifier = self.device_model + "_" + self.device_serial_number + self.device_identifier = (self.device_model + "_" + self.device_serial_number).lower() def init_bridge(self, from_transport : 'transport_base'): From d2b061002515587a1576703dbd3fbcfc4ca971b8 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Thu, 3 Oct 2024 23:24:35 -0500 Subject: [PATCH 11/34] change id to s/n --- classes/transports/modbus_base.py | 1 + classes/transports/transport_base.py | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/classes/transports/modbus_base.py b/classes/transports/modbus_base.py index a194c37..f3dbeb3 100644 --- a/classes/transports/modbus_base.py +++ b/classes/transports/modbus_base.py @@ -68,6 +68,7 @@ def init_after_connect(self): #if sn is empty, attempt to autoread it if not self.device_serial_number: self.device_serial_number = self.read_serial_number() + self.update_identifier() def connect(self): if self.connected and self.first_connect: diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 1c4621e..00a58c5 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -67,10 +67,13 @@ def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_setti self.write_enabled = settings.getboolean(["write_enabled", "enable_write"], self.write_enabled) else: self.write_enabled = settings.getboolean("write", self.write_enabled) - - self.device_identifier = (self.device_model + "_" + self.device_serial_number).lower() + + self.update_identifier() + def update_identifier(self): + self.device_identifier = (self.device_serial_number).trim().lower() + def init_bridge(self, from_transport : 'transport_base'): pass From b2dcd92061cbece75c75497ccba5771a5cb9c427 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Tue, 22 Oct 2024 21:17:09 -0500 Subject: [PATCH 12/34] fix typo --- classes/transports/transport_base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/transports/transport_base.py b/classes/transports/transport_base.py index 00a58c5..89913f0 100644 --- a/classes/transports/transport_base.py +++ b/classes/transports/transport_base.py @@ -72,7 +72,7 @@ def __init__(self, settings : 'SectionProxy', protocolSettings : 'protocol_setti def update_identifier(self): - self.device_identifier = (self.device_serial_number).trim().lower() + self.device_identifier = self.device_serial_number.strip().lower() def init_bridge(self, from_transport : 'transport_base'): pass From 278a1bbfbfb8fb89f0db9ae08b9ba749027a4d00 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Tue, 22 Oct 2024 21:20:33 -0500 Subject: [PATCH 13/34] bug fix --- classes/transports/modbus_base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/transports/modbus_base.py b/classes/transports/modbus_base.py index f3dbeb3..e415ef7 100644 --- a/classes/transports/modbus_base.py +++ b/classes/transports/modbus_base.py @@ -462,7 +462,7 @@ def read_modbus_registers(self, ranges : list[tuple] = None, start : int = 0, en isError = True #other erorrs. ie Failed to connect[ModbusSerialClient(rtu baud[9600])] - if register.isError() or isError: + if isError: #register.isError() or self._log.error(register.__str__) self.modbus_delay += self.modbus_delay_increament #increase delay, error is likely due to modbus being busy From 7d47ff702af01ddc3cedf0895d8e25b6c0108d51 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 22 Oct 2024 21:35:01 -0500 Subject: [PATCH 14/34] fix error handling --- classes/transports/modbus_base.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/classes/transports/modbus_base.py b/classes/transports/modbus_base.py index e415ef7..3e405ff 100644 --- a/classes/transports/modbus_base.py +++ b/classes/transports/modbus_base.py @@ -462,8 +462,11 @@ def read_modbus_registers(self, ranges : list[tuple] = None, start : int = 0, en isError = True #other erorrs. ie Failed to connect[ModbusSerialClient(rtu baud[9600])] - if isError: #register.isError() or - self._log.error(register.__str__) + if isinstance(register, bytes) or register.isError() or isError: #sometimes weird errors are handled incorrectly and response is a ascii error string + if isinstance(register, bytes): + self._log.error(register.decode('utf-8')) + else: + self._log.error(register.__str__) self.modbus_delay += self.modbus_delay_increament #increase delay, error is likely due to modbus being busy if self.modbus_delay > 60: #max delay. 60 seconds between requests should be way over kill if it happens From 7383bf24188cf852e42deeabf7af3b0266d1f1b2 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Mon, 28 Oct 2024 19:03:34 -0500 Subject: [PATCH 15/34] bug fix --- classes/transports/modbus_rtu.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/classes/transports/modbus_rtu.py b/classes/transports/modbus_rtu.py index d3282ef..f61e5c7 100644 --- a/classes/transports/modbus_rtu.py +++ b/classes/transports/modbus_rtu.py @@ -33,7 +33,14 @@ def __init__(self, settings : SectionProxy, protocolSettings : protocol_settings raise ValueError("Port is not set") self.port = find_usb_serial_port(self.port) - print("Serial Port : " + self.port + " = ", get_usb_serial_port_info(self.port)) #print for config convience + + serial_info = get_usb_serial_port_info(self.port) + if serial_info is None: + serial_info_str = "No serial info available" + else: + serial_info_str = str(serial_info) + + print("Serial Port : " + self.port + " = ", serial_info_str) #print for config convience if "baud" in self.protocolSettings.settings: self.baudrate = strtoint(self.protocolSettings.settings["baud"]) From 092a3f3e04cd56bdd146fb5678305fb7cf142dc1 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Mon, 28 Oct 2024 19:07:40 -0500 Subject: [PATCH 16/34] error handling --- classes/transports/modbus_rtu.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/classes/transports/modbus_rtu.py b/classes/transports/modbus_rtu.py index f61e5c7..056551e 100644 --- a/classes/transports/modbus_rtu.py +++ b/classes/transports/modbus_rtu.py @@ -33,14 +33,10 @@ def __init__(self, settings : SectionProxy, protocolSettings : protocol_settings raise ValueError("Port is not set") self.port = find_usb_serial_port(self.port) + if not self.port: + raise ValueError("Port is not valid / not found") - serial_info = get_usb_serial_port_info(self.port) - if serial_info is None: - serial_info_str = "No serial info available" - else: - serial_info_str = str(serial_info) - - print("Serial Port : " + self.port + " = ", serial_info_str) #print for config convience + print("Serial Port : " + self.port + " = ", get_usb_serial_port_info(self.port)) #print for config convience if "baud" in self.protocolSettings.settings: self.baudrate = strtoint(self.protocolSettings.settings["baud"]) From bf73e71b39bdd6bd073e62b519689c06f9a50b5c Mon Sep 17 00:00:00 2001 From: HotNoob Date: Mon, 28 Oct 2024 21:56:06 -0500 Subject: [PATCH 17/34] add hass addon repo --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 57b40db..42973fa 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,10 @@ When connected, the device will show up as a serial port. Alternatively, connect a usb adapter to your rs485 / can port with appropriate wiring. +### install as homeassistant add-on +checkout: +https://github.com/felipecrs/python-protocol-gateway-hass-addon/tree/master + ### install requirements ``` apt install pip python3 -y From 73f2cf2cf6ea022ba6ca094f37555329c849f038 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Mon, 28 Oct 2024 21:58:18 -0500 Subject: [PATCH 18/34] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 42973fa..c25a622 100644 --- a/README.md +++ b/README.md @@ -51,11 +51,11 @@ protocol_version = {{version}} v0.14 = growatt inverters 2020+ sigineer_v0.11 = sigineer inverters growatt_2020_v1.24 = alt protocol for large growatt inverters - currently untested -srne_v3.9 = SRNE inverters - Untested +srne_v3.9 = SRNE inverters - confirmed working-ish victron_gx_3.3 = Victron GX Devices - Untested solark_v1.1 = SolarArk 8/12K Inverters - Untested hdhk_16ch_ac_module = some chinese current monitoring device :P -srne_2021_v1.96 = SRNE inverters 2021+ (tested at ASF48100S200-H) +srne_2021_v1.96 = SRNE inverters 2021+ (tested at ASF48100S200-H, ok-ish for HF2430U60-100 ) eg4_v58 = eg4 inverters ( EG4-6000XP ) - confirmed working eg4_3000ehv_v1 = eg4 inverters ( EG4_3000EHV ) From b776a3e92ece39375f55fe70034964eb87e7f586 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Mon, 28 Oct 2024 22:06:15 -0500 Subject: [PATCH 19/34] Update Dockerfile fix missing folders. untested. --- Dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 595092f..1dcb260 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,5 +11,7 @@ COPY protocol_settings.py /app/ COPY protocol_gateway.py /app/ COPY inverter.py /app/ COPY config.cfg /app/ +COPY defs/ /app/defs/ +COPY classes /app/classes/ WORKDIR /app -CMD ["python3", "protocol_gateway.py"] \ No newline at end of file +CMD ["python3", "protocol_gateway.py"] From 01b40ebfb43d770a546471b92c79432cf3bfe85f Mon Sep 17 00:00:00 2001 From: HotNoob Date: Tue, 29 Oct 2024 20:46:47 -0500 Subject: [PATCH 20/34] Create SRNE.Solar.Charge.Inverter.MODBUS.Protocol1.96.pdf --- ...lar.Charge.Inverter.MODBUS.Protocol1.96.pdf | Bin 0 -> 398280 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 documentation/3rdparty/protocols/SRNE.Solar.Charge.Inverter.MODBUS.Protocol1.96.pdf diff --git a/documentation/3rdparty/protocols/SRNE.Solar.Charge.Inverter.MODBUS.Protocol1.96.pdf b/documentation/3rdparty/protocols/SRNE.Solar.Charge.Inverter.MODBUS.Protocol1.96.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f5425f6b44f58b1e5813f1055402973b61634eae GIT binary patch literal 398280 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

G7 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�|V|` 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

Lx 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 literal 0 HcmV?d00001 From 08f501aaf4a1bf2c41245db86295dea2a732b332 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 10:04:01 -0500 Subject: [PATCH 21/34] srne v1.7 --- .../srne/srne_v1.7.holding_registry_map.csv | 264 ++++++++++++++++++ protocols/srne/srne_v1.7.json | 5 + 2 files changed, 269 insertions(+) create mode 100644 protocols/srne/srne_v1.7.holding_registry_map.csv create mode 100644 protocols/srne/srne_v1.7.json diff --git a/protocols/srne/srne_v1.7.holding_registry_map.csv b/protocols/srne/srne_v1.7.holding_registry_map.csv new file mode 100644 index 0000000..a889c8e --- /dev/null +++ b/protocols/srne/srne_v1.7.holding_registry_map.csv @@ -0,0 +1,264 @@ +variable name,data type,register,documented name,description,writable,values,unit,note +,BYTE,0x000B,Product type,,R,"{""0"": ""domestic controller"", ""1"": ""controller for street light"", ""3"": ""grid-connected inverter"", ""4"": ""all-in-one solar charger inverter"", ""5"": ""power frequency off-grid""}",, +,,x14,Software version 1,,R,,0.01, +,,x15,Software version 2,,R,,0.01, +,,x16,Hardware version 1,,R,,0.01, +,,x17,Hardware version 2,,R,,0.01, +,,0x001A,RS485 address,,R,1~247,, +,,x1B,Model Code,,R,,, +,,0x001C,RS485 version,,R,,0.01, +,ASCII,x21~x34,software compilation time ,,R,,, +,ASCII,0x0035~0x0048,Product SN,,R,,, +,,0x0100,Battery capacity SOC,,R,0~100,%, +,,0x0101,Battery voltage,,R,,0.1V, +,SHORT,0x0102,Battery current,,R,,0.1A, +,BYTE,x103,Controller temperature,,R,,C, +,BYTE,x103.b8,Battery temperature,,R,,C, +,,x104,Load DC Voltage,,R,,0.1V, +,,x105,Load DC Current,,R,,0.01A, +,,x106,Load DC Power,,R,,W, +,,0x0107,PV1 voltage,,R,,0.1V, +,,0x0108,PV1 current,,R,,0.1A, +,,0x0109,PV1 power,,R,,W, +,,0x010F,PV2 voltage,,R,,0.1V, +,,0x0110,PV2 current,,R,,0.1A, +,,0x0111,PV2 power,,R,,W, +,,0x010B,Device Charge state,,R,"{""0"": ""Charge off"", ""1"": ""Quick charge"", ""2"": ""Const voltage charge"", ""4"": ""Float charge"", ""6"": ""Li battery activate"", ""8"": ""Full""}",, +,,0x010E,Device Total charging power,,R,,W, +,16BIT_FLAGS,x200,Fault Bits 1,,R,,, +,16BIT_FLAGS,x201,Fault Bits 2,,R,,, +,16BIT_FLAGS,x202,Fault Bits 3,,R,,, +,16BIT_FLAGS,x203,Fault Bits 4,,R,,, +,,x204,Fault Code 1,,R,,, +,,x205,Fault Code 2,,R,,, +,,x206,Fault Code 3,,R,,, +,,x207,Fault Code 4,,R,,, +,BYTE,x20C,Current Time Year,,RW,,, +,BYTE,x20C.b8,Current Time Month,,RW,,, +,BYTE,x21D,Current Time Day,,RW,,, +,BYTE,x21D.b8,Current Time Hour,,RW,,, +,BYTE,x21E,Current Time Minute,,RW,,, +,BYTE,x21E.b8,Current Time Second,,RW,,, +,,0x0210,Device state,,R,"{""0"":""Power-up delay"",""1"":""Waiting state"",""2"":""Initialization"",""3"":""Soft start"",""4"":""Mains powered operation"",""5"":""Inverter powered operation"",""6"":""Inverter to mains"",""7"":""Mains to inverter"",""8"":""Battery activate"",""9"":""Shutdown by user"",""10"":""Fault""}",, +,,x211,Password protection status mark ,,R,"{""0"":""No password entered by the user"",""1"":""User password has been entered"",""4"":""Manufacturer password has been entered""}",, +,,0x0212,Device Bus Voltage Sum,,R,,0.1V, +,,0x0213,Grid phase-A voltage,,R,,0.1V, +,,0x0214,Grid phase-A current,,R,,0.1A, +,,0x0215,Grid frequency,,R,,0.01Hz, +,,0x0216,Inverter phase-A output voltage,,R,,0.1V, +,,0x0217,Inverter phase-A inductive current,,R,,0.1A, +,,0x0218,Inverter frequency,,R,,0.01Hz, +,,0x0219,Load Phase-A current,,R,,0.1A, +,,x21A,Load PF,,R,,0.01, +,,0x021B,Load Phase-A active power,,R,,W, +,,0x021C,Load Phase-A apparent power,,R,,VA, +,,x21D,Inverter DC Component,,R,,1mV, +,,x21E,Mains charge current ,,R,,0.1A, +,,0x021F,Load Phase-A ratio,,R,0~100,%, +,,x220,DC-DC heat sink temperature ,,R,,0.1C, +,,x221,DC-AC heat sink temperature ,,R,,0.1C, +,,x222,Translator heat sink temperature ,,R,,0.1C, +,,x223,Heat sink D temperature ,,R,,0.1C, +,,x224,PV Charge Current,,R,,0.1A, +,,x225,Ibuck2 Current,,R,,0.1A, +,,x226,Inverter fault state ,,R,,, +,,x227,Charge status ,,R,,, +,,x228,PBusVolt ,,R,,0.1V, +,,x229,NBusVolt ,,R,,0.1V, +,,0x022A,Grid phase-B voltage,,R,,0.1V, +,,0x022B,Grid phase-C voltage,,R,,0.1V, +,,0x022C,Inverter phase-B output voltage,,R,,0.1V, +,,0x022E,Inverter phase-B inductive current,,R,,0.1A, +,,0x022D,Inverter phase-C output voltage,,R,,0.1V, +,,0x022F,Inverter phase-C inductive current,,R,,0.1A, +,,0x0230,Load Phase-B current,,R,,0.1A, +,,0x0231,Load Phase-C current,,R,,0.1A, +,,0x0232,Load Phase-B active power,,R,,W, +,,0x0233,Load Phase-C active power,,R,,W, +,,0x0234,Load Phase-B apparent power,,R,,VA, +,,0x0235,Load Phase-C apparent power,,R,,VA, +,,0x0236,Load Phase-B ratio,,R,0~100,%, +,,0x0237,Load Phase-C ratio,,R,0~100,%, +,,,,,,,, +,,xE001,PV charge current limit ,,RW,0~100,0.1A, +,,xE002,Nominal battery capacity ,,RW,0~400,1AH, +,,xE003,System Voltage,,R,12~255,V, +,,xE004,Battery Type,,RW,"{""0"":""User define"",""1"":""SLD"",""2"":""FLD""}",, +,,xE005,Battery Over Voltage,,RW,9~15.5,0.1V, +,,xE006,Limited Charge Voltage,,RW,9~15.5,0.1V, +,,xE007,Equalizing charge voltage ,,RW,9~15.5,0.1V, +,,xE008,Boost Charge Voltage Or Lithium Over Voltage,,RW,9~15.5,0.1V, +,,xE009,Float Charge Voltage Or Lithium Over Charge Return Voltage,,RW,9~15.5,0.1V, +,,xE00A,Boost charge return voltage ,,RW,9~15.5,0.1V, +,,xE00B,Over discharge return voltage ,,RW,9~15.5,0.1V, +,,xE00C,Under-voltage warning voltage ,,RW,9~15.5,0.1V, +,,xE00D,Over discharge voltage ,,RW,9~15.5,0.1V, +,,xE00E,Limited discharge voltage ,,RW,9~15.5,0.1V, +,BYTE,xE00F,Charge Cutoff SOC,,RW,0~100,%, +,BYTE,xE00F.b8,Discharge Cuttoff SOC,,RW,0~100,%, +,,xE010,Over discharge delay time ,,RW,0~120,S, +,,xE011,Equalizing charge time ,,RW,0~600,Min, +,,xE012,Boost charge time ,,RW,0~600,Min, +,,xE013,Equalizing charge interval ,,RW,0~255,Day, +,,xE014,Temperature compensation coefficient ,,RW,0~10,mV/C/2V , +,SHORT,xE015,Charge upper limit temperature ,,RW,Err:502,C, +,SHORT,xE016,Charge lower limit temperature ,,RW,Err:502,C, +,SHORT,xE017,Discharge upper limit temperature ,,RW,Err:502,C, +,SHORT,xE018,DisChgMinTemperature,,RW,Err:502,C, +,SHORT,xE019,HeatBatStartTemperature,,RW,Err:502,C, +,SHORT,xE01A,HeatBatStopTemperature ,,RW,Err:502,C, +,,xE01B,Mains switching voltage ,,RW,9~15.5,0.1V, +,,xE01C,Stop charging current ,,RW,0~40,0.1A, +,,xE01D,DC load working mode ,,RW,,, +,,xE01E,Light control delay time,,RW,0~60,Min, +,,xE01F,Light control voltage ,,RW,1~45,V, +,,xE020,1 Number of batteries connected in series ,,RW,1~200,, +,,xE021,Special power control ,,RW,,, +,,xE022,Inverter switching voltage ,,RW,9~15.5,0.1V, +,,xE023,Equalizing charge timeout time ,,RW,5~900,Min, +,,xE024,Lithium battery activation current ,,RW,0~10,A, +,,,,,,,, +,,xE026,1-section start charging time,hour and minute:23*256+59==5947 ,RW,0~ 5947 ,Min, +,,xE027,1-section stop charging time,,RW,0~ 5947 ,Min, +,,xE028,2-section start charging time,,RW,0~ 5947 ,Min, +,,xE029,2-section stop charging time,,RW,0~ 5947 ,Min, +,,xE02A,3-section start charging time,,RW,0~ 5947 ,Min, +,,xE02B,3-section stop charging time,,RW,0~ 5947 ,Min, +,,xE02C,Sectional charging function enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE02D,1-section start discharging time,,RW,0~ 5947 ,Min, +,,xE02E,1-section stop discharging time,,RW,0~ 5947 ,Min, +,,xE02F,2-section start discharging time,,RW,0~ 5947 ,Min, +,,xE030,2-section stop discharging time,,RW,0~ 5947 ,Min, +,,xE031,3-section start discharging time,,RW,0~ 5947 ,Min, +,,xE032,3-section stop discharging time,,RW,0~ 5947 ,Min, +,,xE033,Sectional discharging function enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE034,current time setup year month,E034 - year and month:99*256+12==25356 ,RW,0~ 25356 ,Yr/Mo, +,,xE035,current time setup day hour,E035 -day and hour:31*256+23==7959 ,RW,0~7959,Day/Hr, +,,xE036,current time setup min second,E036 -minute and second:59*256+59==15163 ,RW,0~ 15163,Min/Sec, +,,xE037,PV grid-connected power generation enable,,,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE038,GFCI Enable,,,"{""0"":""Disable"",""1"":""Enable""}",, +,,,,,,,, +,,xE200,Inverter 485 address setup,,RW,1~254,, +,,xE201,Inverter parallel mode setup,,RW,0~7,, +,,xE202,User password set value,,W,0~65535,, +,,xE203,Password input,,W,0~65535,, +,,,,,,,, +,,xE204,Output priority,,RW,"{""0"":""solar"",""1"":""line"",""2"":""sbu""}",, +,,xE205,Mains charge current limit,,RW,0~100,0.1A, +,,xE206,Equalizing charge enable,,RW,,, +,,xE207,Power save level,,RW,0~1000,W, +,,xE208,Output voltage,,RW,100~264,0.1V, +,,xE209,Output frequency,,RW,45~65,0.01Hz, +,,xE20A,Maximum charge current,,RW,0~150,0.1A, +,,xE20B,AC input range,,RW,"{""0"":""wide range (APL)"",""1"":""narrow range (UPS)""}",, +,,xE20C,Eco mode,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE20D,Overload auto restart,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE20E,Over temperature auto restart,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE20F,Charge priority,,RW,"{""0"":""PV preferred, only start mains charging when PV is not available"",""1"":""Mains preferred, only start PV charging when mains is not available"",""2"":""Hybrid mode, mains and PV charging at the same time, PV is preferred"",""3"":""PV only, mains does not charge""}",, +,,xE210,Alarm control,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE211,Alarm enable when input source is interrupted,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE212,Overload bypass enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE213,Record fault code,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE214,Split-phase transformer,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE215,BMS communication enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE216,Start charge time setup,,RW,0~23,, +,,xE217,Start discharge time setup,,RW,0~23,, +,,,,,,,, +,UINT,xE219,UniqueIDcode,,R,,, +,,xE21B,BMS protocol,,RW,0~30,, +,,,,,,,, +,,xF000,History PV power generation Today Minus 1,,R,,AH, +,,xF001,History PV power generation Today Minus 2,,R,,AH, +,,xF002,history PV power generation Today Minus 3,,R,,AH, +,,xF003,history PV power generation Today Minus 4,,R,,AH, +,,xF004,history PV power generation Today Minus 5,,R,,AH, +,,xF005,history PV power generation Today Minus 6,,R,,AH, +,,xF006,history PV power generation Today Minus 7,,R,,AH, +,,,,,,,, +,,xF007,history battery charge level Today Minus 1,,R,,AH, +,,xF008,history battery charge level Today Minus 2,,R,,AH, +,,xF009,history battery charge level Today Minus 3,,R,,AH, +,,xF00A,history battery charge level Today Minus 4,,R,,AH, +,,xF00B,history battery charge level Today Minus 5,,R,,AH, +,,xF00C,history battery charge level Today Minus 6,,R,,AH, +,,xF00D,history battery charge level Today Minus 7,,R,,AH, +,,,,,,,, +,,xF00E,History battery discharge level Today Minus 1,,R,,AH, +,,xF00F,History battery discharge level Today Minus 2,,R,,AH, +,,xF010,History battery discharge level Today Minus 3,,R,,AH, +,,xF011,History battery discharge level Today Minus 4,,R,,AH, +,,xF012,History battery discharge level Today Minus 5,,R,,AH, +,,xF013,History battery discharge level Today Minus 6,,R,,AH, +,,xF014,History battery discharge level Today Minus 7,,R,,AH, +,,,,,,,, +,,xF015,history mains charge level Today Minus 1,,R,,AH, +,,xF016,history mains charge level Today Minus 2,,R,,AH, +,,xF017,history mains charge level Today Minus 3,,R,,AH, +,,xF018,history mains charge level Today Minus 4,,R,,AH, +,,xF019,history mains charge level Today Minus 5,,R,,AH, +,,xF01A,history mains charge level Today Minus 6,,R,,AH, +,,xF01B,history mains charge level Today Minus 7,,R,,AH, +,,,,,,,, +,,xF01C,history data of power consumption by load today minus 1,,R,,0.1kwh, +,,xF01D,history power consumption by load today minus 2,,R,,0.1kwh, +,,xF01E,history power consumption by load today minus 3,,R,,0.1kwh, +,,xF01F,history power consumption by load today minus 4,,R,,0.1kwh, +,,xF020,history power consumption by load today minus 5,,R,,0.1kwh, +,,xF021,history power consumption by load today minus 6,,R,,0.1kwh, +,,xF022,history power consumption by load today minus 7,,R,,0.1kwh, +,,,,,,,, +,,xF023,History power consumption by load from mains today minus 1,,R,,0.1kwh, +,,xF024,History power consumption by load from mains today minus 2,,R,,0.1kwh, +,,xF025,History power consumption by load from mains today minus 3,,R,,0.1kwh, +,,xF026,History power consumption by load from mains today minus 4,,R,,0.1kwh, +,,xF027,History power consumption by load from mains today minus 5,,R,,0.1kwh, +,,xF028,History power consumption by load from mains today minus 6,,R,,0.1kwh, +,,xF029,History power consumption by load from mains today minus 7,,R,,0.1kwh, +,,,,,,,, +,,,,,,,, +,,xF02D,Battery charge AH of the day,,R,,AH, +,,xF02E,Battery discharge AH of the day,,R,,AH, +,,xF02F,PV power generation of the day,,R,,0.1kwh, +,,xF030,Load power consumption of the day,,R,,0.1kwh, +,,xF031,Total running days,,R,,day, +,,xF032,"Total number of battery +overdischarge",,R,,, +,,,,,,,, +,,xF033,Total number of battery full charge,,R,,, +,UINT,xF034~xF035,Accumulated battery charge AH,,R,,AH, +,UINT,xF036~xF037,Accumulated battery discharge AH,,R,,AH, +,UINT,xF038~xF039,Accumulated PV power generation,,R,,0.1kWh, +,,xF03A,Accumulated power consumption of load,,R,,0.1kWh, +,,xF03C,Mains charge level of today,,R,,AH, +,,xF03D,Power consumption by load from mains of today,,R,,0.1kWh, +,,xF03E,Inverter working hours of today,,R,,min, +,,xF03F,Bypass working hours of today,,R,,min, +,UINT,xF040~xF041,Power on time,UINT48 – TODO,R,,, +,UINT,xF043~xF044,"Last equalizing charge completion +time",UINT48 – TODO,R,,, +,UINT,xF046~xF047,Accumulated charge level by mains,,R,,0.1kWh, +,UINT,xF048~xF048,Accumulated power consumption by load from mains,,R,,0.1kWh, +,,xF04A,Accumulated working hours of inverter,,R,,h, +,,xF04B,Accumulated working hours of bypass,,R,,h, +,,,,,,,, +,,,,,,,, +,ASCII,xF800~xF80F,FaultHistoryRecord00,,,,, +,ASCII,xF810~xF81F,FaultHistoryRecord01,,,,, +,ASCII,xF820~xF82F,FaultHistoryRecord02,,,,, +,ASCII,xF830~xF83F,FaultHistoryRecord03,,,,, +,ASCII,xF840~xF84F,FaultHistoryRecord04,,,,, +,ASCII,xF850~xF85F,FaultHistoryRecord05,,,,, +,ASCII,xF860~xF86F,FaultHistoryRecord06,,,,, +,ASCII,xF870~xF87F,FaultHistoryRecord07,,,,, +,ASCII,xF880~xF88F,FaultHistoryRecord08,,,,, +,ASCII,xF890~xF89F,FaultHistoryRecord09,,,,, +,ASCII,xF8A0~xF8AF,FaultHistoryRecord10,,,,, +,ASCII,xF8B0~xF8BF,FaultHistoryRecord11,,,,, +,ASCII,xF8C0~xF8CF,FaultHistoryRecord12,,,,, +,ASCII,xF8D0~xF8DF,FaultHistoryRecord13,,,,, +,ASCII,xF8E0~xF8EF,FaultHistoryRecord14,,,,, +,ASCII,xF8F0~xF8FF,FaultHistoryRecord15,,,,, +,,,,,,,, +,,0x0238,MGrid phase-B current,,R,,0.1A, +,,0x0239,MGrid phase-C current,,R,,0.1A, +,BYTE,0xF02C,MStats GenerateEnergyToGridTday,,R,,0.1kWh, diff --git a/protocols/srne/srne_v1.7.json b/protocols/srne/srne_v1.7.json new file mode 100644 index 0000000..ee874b1 --- /dev/null +++ b/protocols/srne/srne_v1.7.json @@ -0,0 +1,5 @@ +{ + "transport" : "modbus_rtu", + "send_holding_register": true, + "send_input_register" : false +} \ No newline at end of file From f1d4cf7cc2b02de7bf7314730e5af059779fcf2c Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 10:20:01 -0500 Subject: [PATCH 22/34] Update srne_v1.7.holding_registry_map.csv clean --- .../srne/srne_v1.7.holding_registry_map.csv | 88 +++++++++---------- 1 file changed, 43 insertions(+), 45 deletions(-) diff --git a/protocols/srne/srne_v1.7.holding_registry_map.csv b/protocols/srne/srne_v1.7.holding_registry_map.csv index a889c8e..f087180 100644 --- a/protocols/srne/srne_v1.7.holding_registry_map.csv +++ b/protocols/srne/srne_v1.7.holding_registry_map.csv @@ -42,21 +42,21 @@ variable name,data type,register,documented name,description,writable,values,uni ,,0x0210,Device state,,R,"{""0"":""Power-up delay"",""1"":""Waiting state"",""2"":""Initialization"",""3"":""Soft start"",""4"":""Mains powered operation"",""5"":""Inverter powered operation"",""6"":""Inverter to mains"",""7"":""Mains to inverter"",""8"":""Battery activate"",""9"":""Shutdown by user"",""10"":""Fault""}",, ,,x211,Password protection status mark ,,R,"{""0"":""No password entered by the user"",""1"":""User password has been entered"",""4"":""Manufacturer password has been entered""}",, ,,0x0212,Device Bus Voltage Sum,,R,,0.1V, -,,0x0213,Grid phase-A voltage,,R,,0.1V, -,,0x0214,Grid phase-A current,,R,,0.1A, +,,0x0213,Grid phase_A voltage,,R,,0.1V, +,,0x0214,Grid phase_A current,,R,,0.1A, ,,0x0215,Grid frequency,,R,,0.01Hz, -,,0x0216,Inverter phase-A output voltage,,R,,0.1V, -,,0x0217,Inverter phase-A inductive current,,R,,0.1A, +,,0x0216,Inverter phase_A output voltage,,R,,0.1V, +,,0x0217,Inverter phase_A inductive current,,R,,0.1A, ,,0x0218,Inverter frequency,,R,,0.01Hz, -,,0x0219,Load Phase-A current,,R,,0.1A, +,,0x0219,Load Phase_A current,,R,,0.1A, ,,x21A,Load PF,,R,,0.01, -,,0x021B,Load Phase-A active power,,R,,W, -,,0x021C,Load Phase-A apparent power,,R,,VA, +,,0x021B,Load Phase_A active power,,R,,W, +,,0x021C,Load Phase_A apparent power,,R,,VA, ,,x21D,Inverter DC Component,,R,,1mV, ,,x21E,Mains charge current ,,R,,0.1A, -,,0x021F,Load Phase-A ratio,,R,0~100,%, -,,x220,DC-DC heat sink temperature ,,R,,0.1C, -,,x221,DC-AC heat sink temperature ,,R,,0.1C, +,,0x021F,Load Phase_A ratio,,R,0~100,%, +,,x220,DC_DC heat sink temperature ,,R,,0.1C, +,,x221,DC_AC heat sink temperature ,,R,,0.1C, ,,x222,Translator heat sink temperature ,,R,,0.1C, ,,x223,Heat sink D temperature ,,R,,0.1C, ,,x224,PV Charge Current,,R,,0.1A, @@ -65,20 +65,20 @@ variable name,data type,register,documented name,description,writable,values,uni ,,x227,Charge status ,,R,,, ,,x228,PBusVolt ,,R,,0.1V, ,,x229,NBusVolt ,,R,,0.1V, -,,0x022A,Grid phase-B voltage,,R,,0.1V, -,,0x022B,Grid phase-C voltage,,R,,0.1V, -,,0x022C,Inverter phase-B output voltage,,R,,0.1V, -,,0x022E,Inverter phase-B inductive current,,R,,0.1A, -,,0x022D,Inverter phase-C output voltage,,R,,0.1V, -,,0x022F,Inverter phase-C inductive current,,R,,0.1A, -,,0x0230,Load Phase-B current,,R,,0.1A, -,,0x0231,Load Phase-C current,,R,,0.1A, -,,0x0232,Load Phase-B active power,,R,,W, -,,0x0233,Load Phase-C active power,,R,,W, -,,0x0234,Load Phase-B apparent power,,R,,VA, -,,0x0235,Load Phase-C apparent power,,R,,VA, -,,0x0236,Load Phase-B ratio,,R,0~100,%, -,,0x0237,Load Phase-C ratio,,R,0~100,%, +,,0x022A,Grid phase_B voltage,,R,,0.1V, +,,0x022B,Grid phase_C voltage,,R,,0.1V, +,,0x022C,Inverter phase_B output voltage,,R,,0.1V, +,,0x022E,Inverter phase_B inductive current,,R,,0.1A, +,,0x022D,Inverter phase_C output voltage,,R,,0.1V, +,,0x022F,Inverter phase_C inductive current,,R,,0.1A, +,,0x0230,Load Phase_B current,,R,,0.1A, +,,0x0231,Load Phase_C current,,R,,0.1A, +,,0x0232,Load Phase_B active power,,R,,W, +,,0x0233,Load Phase_C active power,,R,,W, +,,0x0234,Load Phase_B apparent power,,R,,VA, +,,0x0235,Load Phase_C apparent power,,R,,VA, +,,0x0236,Load Phase_B ratio,,R,0~100,%, +,,0x0237,Load Phase_C ratio,,R,0~100,%, ,,,,,,,, ,,xE001,PV charge current limit ,,RW,0~100,0.1A, ,,xE002,Nominal battery capacity ,,RW,0~400,1AH, @@ -91,7 +91,7 @@ variable name,data type,register,documented name,description,writable,values,uni ,,xE009,Float Charge Voltage Or Lithium Over Charge Return Voltage,,RW,9~15.5,0.1V, ,,xE00A,Boost charge return voltage ,,RW,9~15.5,0.1V, ,,xE00B,Over discharge return voltage ,,RW,9~15.5,0.1V, -,,xE00C,Under-voltage warning voltage ,,RW,9~15.5,0.1V, +,,xE00C,Under_voltage warning voltage ,,RW,9~15.5,0.1V, ,,xE00D,Over discharge voltage ,,RW,9~15.5,0.1V, ,,xE00E,Limited discharge voltage ,,RW,9~15.5,0.1V, ,BYTE,xE00F,Charge Cutoff SOC,,RW,0~100,%, @@ -118,24 +118,24 @@ variable name,data type,register,documented name,description,writable,values,uni ,,xE023,Equalizing charge timeout time ,,RW,5~900,Min, ,,xE024,Lithium battery activation current ,,RW,0~10,A, ,,,,,,,, -,,xE026,1-section start charging time,hour and minute:23*256+59==5947 ,RW,0~ 5947 ,Min, -,,xE027,1-section stop charging time,,RW,0~ 5947 ,Min, -,,xE028,2-section start charging time,,RW,0~ 5947 ,Min, -,,xE029,2-section stop charging time,,RW,0~ 5947 ,Min, -,,xE02A,3-section start charging time,,RW,0~ 5947 ,Min, -,,xE02B,3-section stop charging time,,RW,0~ 5947 ,Min, +,,xE026,1_section start charging time,hour and minute:23*256+59==5947 ,RW,0~ 5947 ,Min, +,,xE027,1_section stop charging time,,RW,0~ 5947 ,Min, +,,xE028,2_section start charging time,,RW,0~ 5947 ,Min, +,,xE029,2_section stop charging time,,RW,0~ 5947 ,Min, +,,xE02A,3_section start charging time,,RW,0~ 5947 ,Min, +,,xE02B,3_section stop charging time,,RW,0~ 5947 ,Min, ,,xE02C,Sectional charging function enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, -,,xE02D,1-section start discharging time,,RW,0~ 5947 ,Min, -,,xE02E,1-section stop discharging time,,RW,0~ 5947 ,Min, -,,xE02F,2-section start discharging time,,RW,0~ 5947 ,Min, -,,xE030,2-section stop discharging time,,RW,0~ 5947 ,Min, -,,xE031,3-section start discharging time,,RW,0~ 5947 ,Min, -,,xE032,3-section stop discharging time,,RW,0~ 5947 ,Min, +,,xE02D,1_section start discharging time,,RW,0~ 5947 ,Min, +,,xE02E,1_section stop discharging time,,RW,0~ 5947 ,Min, +,,xE02F,2_section start discharging time,,RW,0~ 5947 ,Min, +,,xE030,2_section stop discharging time,,RW,0~ 5947 ,Min, +,,xE031,3_section start discharging time,,RW,0~ 5947 ,Min, +,,xE032,3_section stop discharging time,,RW,0~ 5947 ,Min, ,,xE033,Sectional discharging function enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, ,,xE034,current time setup year month,E034 - year and month:99*256+12==25356 ,RW,0~ 25356 ,Yr/Mo, ,,xE035,current time setup day hour,E035 -day and hour:31*256+23==7959 ,RW,0~7959,Day/Hr, ,,xE036,current time setup min second,E036 -minute and second:59*256+59==15163 ,RW,0~ 15163,Min/Sec, -,,xE037,PV grid-connected power generation enable,,,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE037,PV grid_connected power generation enable,,,"{""0"":""Disable"",""1"":""Enable""}",, ,,xE038,GFCI Enable,,,"{""0"":""Disable"",""1"":""Enable""}",, ,,,,,,,, ,,xE200,Inverter 485 address setup,,RW,1~254,, @@ -159,7 +159,7 @@ variable name,data type,register,documented name,description,writable,values,uni ,,xE211,Alarm enable when input source is interrupted,,RW,"{""0"":""Disable"",""1"":""Enable""}",, ,,xE212,Overload bypass enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, ,,xE213,Record fault code,,RW,"{""0"":""Disable"",""1"":""Enable""}",, -,,xE214,Split-phase transformer,,RW,"{""0"":""Disable"",""1"":""Enable""}",, +,,xE214,Split_phase transformer,,RW,"{""0"":""Disable"",""1"":""Enable""}",, ,,xE215,BMS communication enable,,RW,"{""0"":""Disable"",""1"":""Enable""}",, ,,xE216,Start charge time setup,,RW,0~23,, ,,xE217,Start discharge time setup,,RW,0~23,, @@ -221,8 +221,7 @@ variable name,data type,register,documented name,description,writable,values,uni ,,xF02F,PV power generation of the day,,R,,0.1kwh, ,,xF030,Load power consumption of the day,,R,,0.1kwh, ,,xF031,Total running days,,R,,day, -,,xF032,"Total number of battery -overdischarge",,R,,, +,,xF032,Total number of battery overdischarge,,R,,, ,,,,,,,, ,,xF033,Total number of battery full charge,,R,,, ,UINT,xF034~xF035,Accumulated battery charge AH,,R,,AH, @@ -234,8 +233,7 @@ overdischarge",,R,,, ,,xF03E,Inverter working hours of today,,R,,min, ,,xF03F,Bypass working hours of today,,R,,min, ,UINT,xF040~xF041,Power on time,UINT48 – TODO,R,,, -,UINT,xF043~xF044,"Last equalizing charge completion -time",UINT48 – TODO,R,,, +,UINT,xF043~xF044,Last equalizing charge completion time,UINT48 – TODO,R,,, ,UINT,xF046~xF047,Accumulated charge level by mains,,R,,0.1kWh, ,UINT,xF048~xF048,Accumulated power consumption by load from mains,,R,,0.1kWh, ,,xF04A,Accumulated working hours of inverter,,R,,h, @@ -259,6 +257,6 @@ time",UINT48 ,ASCII,xF8E0~xF8EF,FaultHistoryRecord14,,,,, ,ASCII,xF8F0~xF8FF,FaultHistoryRecord15,,,,, ,,,,,,,, -,,0x0238,MGrid phase-B current,,R,,0.1A, -,,0x0239,MGrid phase-C current,,R,,0.1A, +,,0x0238,MGrid phase_B current,,R,,0.1A, +,,0x0239,MGrid phase_C current,,R,,0.1A, ,BYTE,0xF02C,MStats GenerateEnergyToGridTday,,R,,0.1kWh, From b862d5b330aaaf8893a6a1bcf416271f97bb46aa Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 10:57:59 -0500 Subject: [PATCH 23/34] todo, write only. --- classes/protocol_settings.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index c668059..495e404 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -136,6 +136,8 @@ class WriteMode(Enum): WRITE = 0x02 ''' READ AND WRITE ''' + #todo, write only + @classmethod def fromString(cls, name : str): name = name.strip().upper() From f713c98de5f97fa3c485c817e4e6257086084ce2 Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Wed, 30 Oct 2024 13:00:35 -0300 Subject: [PATCH 24/34] Fix names with hyphens in SRNE v1.96 --- .../srne_2021_v1.96.holding_registry_map.csv | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/protocols/srne/srne_2021_v1.96.holding_registry_map.csv b/protocols/srne/srne_2021_v1.96.holding_registry_map.csv index ce9db32..461428a 100644 --- a/protocols/srne/srne_2021_v1.96.holding_registry_map.csv +++ b/protocols/srne/srne_2021_v1.96.holding_registry_map.csv @@ -19,32 +19,32 @@ variable name,data type,register,documented name,description,writable,values,uni ,,0x010E,Device Total charging power,,R,,W, ,BYTE,0x0210,Device state,,R,"{""0"": ""Initialization"", ""1"": ""Standby"", ""2"": ""AC power operation"", ""3"": ""Inverter operation""}",, ,,0x0212,Device Bus Voltage Sum,,R,,0.1V, -,,0x0213,Grid phase-A voltage,,R,,0.1V, -,,0x0214,Grid phase-A current,,R,,0.1A, -,,0x022A,Grid phase-B voltage,,R,,0.1V, -,,0x0238,Grid phase-B current,,R,,0.1A, -,,0x022B,Grid phase-C voltage,,R,,0.1V, -,,0x0239,Grid phase-C current,,R,,0.1A, +,,0x0213,Grid phase_A voltage,,R,,0.1V, +,,0x0214,Grid phase_A current,,R,,0.1A, +,,0x022A,Grid phase_B voltage,,R,,0.1V, +,,0x0238,Grid phase_B current,,R,,0.1A, +,,0x022B,Grid phase_C voltage,,R,,0.1V, +,,0x0239,Grid phase_C current,,R,,0.1A, ,,0x0215,Grid frequency,,R,,0.01Hz, -,,0x0216,Inverter phase-A output voltage,,R,,0.1V, -,,0x0217,Inverter phase-A inductive current,,R,,0.1A, -,,0x022C,Inverter phase-B output voltage,,R,,0.1V, -,,0x022E,Inverter phase-B inductive current,,R,,0.1A, -,,0x022D,Inverter phase-C output voltage,,R,,0.1V, -,,0x022F,Inverter phase-C inductive current,,R,,0.1A, +,,0x0216,Inverter phase_A output voltage,,R,,0.1V, +,,0x0217,Inverter phase_A inductive current,,R,,0.1A, +,,0x022C,Inverter phase_B output voltage,,R,,0.1V, +,,0x022E,Inverter phase_B inductive current,,R,,0.1A, +,,0x022D,Inverter phase_C output voltage,,R,,0.1V, +,,0x022F,Inverter phase_C inductive current,,R,,0.1A, ,,0x0218,Inverter frequency,,R,,0.01Hz, -,,0x0219,Load Phase-A current,,R,,0.1A, -,,0x021B,Load Phase-A active power,,R,,W, -,,0x021C,Load Phase-A apparent power,,R,,VA, -,,0x021F,Load Phase-A ratio,,R,0~100,%, -,,0x0230,Load Phase-B current,,R,,0.1A, -,,0x0232,Load Phase-B active power,,R,,W, -,,0x0234,Load Phase-B apparent power,,R,,VA, -,,0x0236,Load Phase-B ratio,,R,0~100,%, -,,0x0231,Load Phase-C current,,R,,0.1A, -,,0x0233,Load Phase-C active power,,R,,W, -,,0x0235,Load Phase-C apparent power,,R,,VA, -,,0x0237,Load Phase-C ratio,,R,0~100,%, +,,0x0219,Load Phase_A current,,R,,0.1A, +,,0x021B,Load Phase_A active power,,R,,W, +,,0x021C,Load Phase_A apparent power,,R,,VA, +,,0x021F,Load Phase_A ratio,,R,0~100,%, +,,0x0230,Load Phase_B current,,R,,0.1A, +,,0x0232,Load Phase_B active power,,R,,W, +,,0x0234,Load Phase_B apparent power,,R,,VA, +,,0x0236,Load Phase_B ratio,,R,0~100,%, +,,0x0231,Load Phase_C current,,R,,0.1A, +,,0x0233,Load Phase_C active power,,R,,W, +,,0x0235,Load Phase_C apparent power,,R,,VA, +,,0x0237,Load Phase_C ratio,,R,0~100,%, ,BYTE,0xF02C,Stats GenerateEnergyToGridTday,,R,,0.1kWh, ,BYTE,0xF02D,Stats BatChgTday,,R,,1AH, ,BYTE,0xF02E,Stats BatDischgTday,,R,,1AH, From 7c6a51b8073f802c7c786658d7466f2197febd75 Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Wed, 30 Oct 2024 13:06:09 -0300 Subject: [PATCH 25/34] Fix invalid regex syntax --- classes/transports/modbus_base.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/classes/transports/modbus_base.py b/classes/transports/modbus_base.py index 3e405ff..0a1d4c9 100644 --- a/classes/transports/modbus_base.py +++ b/classes/transports/modbus_base.py @@ -105,7 +105,7 @@ def read_serial_number(self) -> str: print(sn2) print(sn3) - if not re.search("[^a-zA-Z0-9\_]", sn2) : + if not re.search("[^a-zA-Z0-9_]", sn2) : serial_number = sn2 return serial_number @@ -262,7 +262,7 @@ def analyze_protocol(self, settings_dir : str = 'protocols'): def evaluate_score(entry : registry_map_entry, val): score = 0 if entry.data_type == Data_Type.ASCII: - if val and not re.match('[^a-zA-Z0-9\_\-]', val): #validate ascii + if val and not re.match('[^a-zA-Z0-9_-]', val): #validate ascii mod = 1 if entry.concatenate: mod = len(entry.concatenate_registers) From fcb08f628c0f06ba617febdf4e49d8f524b43135 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 18:19:39 -0500 Subject: [PATCH 26/34] add writeonly writemode --- classes/protocol_settings.py | 8 +++++++- classes/transports/mqtt.py | 11 ++++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index 495e404..18e86b2 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -137,6 +137,8 @@ class WriteMode(Enum): ''' READ AND WRITE ''' #todo, write only + WRITEONLY = 0x03 + ''' WRITE ONLY''' @classmethod def fromString(cls, name : str): @@ -155,7 +157,8 @@ def fromString(cls, name : str): "R/W" : "WRITE", "RW" : "WRITE", "W" : "WRITE", - "YES" : "WRITE" + "YES" : "WRITE", + "WO" : "WRITEONLY" } if name in alias: @@ -635,6 +638,9 @@ def calculate_registry_ranges(self, map : list[registry_map_entry], max_register if register.register >= start and register.register < end: if register.write_mode == WriteMode.READDISABLED: ##register is disabled; skip continue + if register.write_mode == WriteMode.WRITEONLY: ##Write Only; skip + continue + registers.append(register.register) if registers: #not empty diff --git a/classes/transports/mqtt.py b/classes/transports/mqtt.py index 3fc412c..6306345 100644 --- a/classes/transports/mqtt.py +++ b/classes/transports/mqtt.py @@ -194,7 +194,7 @@ def init_bridge(self, from_transport : transport_base): self.__write_topics = {} #subscribe to write topics for entry in from_transport.protocolSettings.get_registry_map(Registry_Type.HOLDING): - if entry.write_mode == WriteMode.WRITE: + if entry.write_mode == WriteMode.WRITE or entry.write_mode == WriteMode.WRITEONLY: #__write_topics topic : str = self.base_topic + "/write/" + entry.variable_name.lower().replace(' ', '_') self.__write_topics[topic] = entry @@ -230,6 +230,7 @@ def mqtt_discovery(self, from_transport : transport_base): if item.write_mode == WriteMode.READDISABLED: #disabled continue + clean_name = item.variable_name.lower().replace(' ', '_') if False: @@ -250,8 +251,8 @@ def mqtt_discovery(self, from_transport : transport_base): disc_payload['unique_id'] = "hotnoob_" + from_transport.device_serial_number + "_"+clean_name writePrefix = "" - if from_transport.write_enabled and item.write_mode == WriteMode.WRITE: - writePrefix = "" #home assistant doesnt like write prefix + if from_transport.write_enabled and ( item.write_mode == WriteMode.WRITE or item.write_mode == WriteMode.WRITEONLY ): + writePrefix = "" #home assistant doesnt like write prefix disc_payload['state_topic'] = self.base_topic + '/' +from_transport.device_identifier + writePrefix+ "/"+clean_name @@ -264,6 +265,10 @@ def mqtt_discovery(self, from_transport : transport_base): self.client.publish(discovery_topic, json.dumps(disc_payload),qos=1, retain=True) + #send WO message to indicate topic is write only + if item.write_mode == WriteMode.WRITEONLY: + self.client.publish(disc_payload['state_topic'], "WRITEONLY") + time.sleep(0.07) #slow down for better reliability self.client.publish(disc_payload['availability_topic'],"online",qos=0, retain=True) From 46094b4ca99881411a23439481ce71f341ca1a91 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 18:58:13 -0500 Subject: [PATCH 27/34] add override feature - untested --- .gitignore | 1 + classes/protocol_settings.py | 432 ++++++++++++++++++++--------------- 2 files changed, 246 insertions(+), 187 deletions(-) diff --git a/.gitignore b/.gitignore index 77746aa..3e3a476 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,7 @@ variable_mask.txt variable_screen.txt .~lock.* protocols/*custom* +protocols/*override* classes/transports/*custom* input_registry.json diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index 18e86b2..ea3de1d 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -337,6 +337,19 @@ def load__json(self, file : str = '', settings_dir : str = ''): if not key.endswith("_codes"): self.settings[key] = value + def load_registry_overrides(self, override_path, keys : list[str]): + """Load overrides into a multidimensional dictionary keyed by each specified key.""" + overrides = {key: {} for key in keys} + + with open(override_path, newline='', encoding='latin-1') as csvfile: + reader = csv.DictReader(csvfile) + for row in reader: + for key in keys: + key_value = row[key] + if key_value: + overrides[key][key_value] = row + return overrides + def load__registry(self, path, registry_type : Registry_Type = Registry_Type.INPUT) -> list[registry_map_entry]: registry_map : list[registry_map_entry] = [] @@ -352,219 +365,264 @@ def load__registry(self, path, registry_type : Registry_Type = Registry_Type.INP if not os.path.exists(path): #return empty is file doesnt exist. return registry_map + + overrides : dict[str, dict] = None + override_keys = ['documented name', 'registry'] + overrided_keys = set() + ''' list / set of keys that were used for overriding. to track unique entries''' + + #assuming path ends with .csv + overrides_path = path[:-4] + '.overrides.csv' + + if os.path.exists(overrides_path): + self._log.info("loading override file: " + overrides_path) + + overrides = self.load_registry_overrides(override_keys) + def determine_delimiter(first_row) -> str: if first_row.count(';') > first_row.count(','): return ';' else: - return ',' - - - with open(path, newline='', encoding='latin-1') as csvfile: + return ',' + + def process_row(): + # Initialize variables to hold numeric and character parts + numeric_part = 1 + character_part = '' - #clean column names before passing to csv dict reader + #if or is in the unit; ignore unit + if "or" in row['unit'].lower() or ":" in row['unit'].lower(): + numeric_part = 1 + character_part = row['unit'] + else: + # Use regular expressions to extract numeric and character parts + matches = re.findall(r'(\-?[0-9.]+)|(.*?)$', row['unit']) + + # Iterate over the matches and assign them to appropriate variables + for match in matches: + if match[0]: # If it matches a numeric part + numeric_part = float(match[0]) + elif match[1]: # If it matches a character part + character_part = match[1].strip() + #print(str(row['documented name']) + " Unit: " + str(character_part) ) + + #clean up doc name, for extra parsing + row['documented name'] = row['documented name'].strip().lower().replace(' ', '_') + + #apply overrides using documented name or register + override_row = None + # Check each key in order until a match is found + for key in override_keys: + key_value = row.get(key) + if key_value and key_value in overrides[key]: + override_row = overrides[key][key_value] + overrided_keys.add(key_value) + break + + # Apply non-empty override values if an override row is found + if override_row: + for field, override_value in override_row.items(): + if override_value: # Only replace if override value is non-empty + row[field] = override_value + + variable_name = row['variable name'] if row['variable name'] else row['documented name'] + variable_name = variable_name = variable_name.strip().lower().replace(' ', '_').replace('__', '_') #clean name + + if re.search(r"[^a-zA-Z0-9\_]", variable_name) : + self._log.warning("Invalid Name : " + str(variable_name) + " reg: " + str(row['register']) + " doc name: " + str(row['documented name']) + " path: " + str(path)) - delimeter = ';' - first_row = next(csvfile).lower().replace('_', ' ') - if first_row.count(';') < first_row.count(','): - delimeter = ',' + #convert to float + try: + numeric_part = float(numeric_part) + except: + numeric_part = float(1) - first_row = re.sub(r"\s+" + re.escape(delimeter) +"|" + re.escape(delimeter) +r"\s+", delimeter, first_row) #trim values + if numeric_part == 0: + numeric_part = float(1) - csvfile = itertools.chain([first_row], csvfile) #add clean header to begining of iterator + data_type = Data_Type.USHORT - # Create a CSV reader object - reader = csv.DictReader(csvfile, delimiter=delimeter) + + if 'values' not in row: + row['values'] = "" + self._log.warning("No Value Column : path: " + str(path)) + + data_type_len : int = -1 + #optional row, only needed for non-default data types + if 'data type' in row and row['data type']: + matches = data_type_regex.search(row['data type']) + if matches: + data_type_len = int(matches.group('length')) + data_type = Data_Type.fromString(matches.group('datatype')) + else: + data_type = Data_Type.fromString(row['data type']) - # Iterate over each row in the CSV file - for row in reader: - # Initialize variables to hold numeric and character parts - numeric_part = 1 - character_part = '' + #get value range for protocol analyzer + values : list = [] + value_min : int = 0 + value_max : int = 65535 #default - max value for ushort + value_regex : str = "" + value_is_json : bool = False - #if or is in the unit; ignore unit - if "or" in row['unit'].lower() or ":" in row['unit'].lower(): - numeric_part = 1 - character_part = row['unit'] - else: - # Use regular expressions to extract numeric and character parts - matches = re.findall(r'(\-?[0-9.]+)|(.*?)$', row['unit']) + #test if value is json. + if "{" in row['values']: #to try and stop non-json values from parsing. the json parser is buggy for validation + try: + codes_json = json.loads(row['values']) + value_is_json = True - # Iterate over the matches and assign them to appropriate variables - for match in matches: - if match[0]: # If it matches a numeric part - numeric_part = float(match[0]) - elif match[1]: # If it matches a character part - character_part = match[1].strip() - #print(str(row['documented name']) + " Unit: " + str(character_part) ) + name = row['documented name']+'_codes' + if name not in self.codes: + self.codes[name] = codes_json - #clean up doc name, for extra parsing - row['documented name'] = row['documented name'].strip().lower().replace(' ', '_') + except ValueError: + value_is_json = False - variable_name = row['variable name'] if row['variable name'] else row['documented name'] - variable_name = variable_name = variable_name.strip().lower().replace(' ', '_').replace('__', '_') #clean name - - if re.search(r"[^a-zA-Z0-9\_]", variable_name) : - self._log.warning("Invalid Name : " + str(variable_name) + " reg: " + str(row['register']) + " doc name: " + str(row['documented name']) + " path: " + str(path)) + if not value_is_json: + if ',' in row['values']: + matches = list_regex.finditer(row['values']) - #convert to float - try: - numeric_part = float(numeric_part) - except: - numeric_part = float(1) - - if numeric_part == 0: - numeric_part = float(1) - - data_type = Data_Type.USHORT - - - if 'values' not in row: - row['values'] = "" - self._log.warning("No Value Column : path: " + str(path)) - - data_type_len : int = -1 - #optional row, only needed for non-default data types - if 'data type' in row and row['data type']: - matches = data_type_regex.search(row['data type']) - if matches: - data_type_len = int(matches.group('length')) - data_type = Data_Type.fromString(matches.group('datatype')) - else: - data_type = Data_Type.fromString(row['data type']) - - - #get value range for protocol analyzer - values : list = [] - value_min : int = 0 - value_max : int = 65535 #default - max value for ushort - value_regex : str = "" - value_is_json : bool = False - - #test if value is json. - if "{" in row['values']: #to try and stop non-json values from parsing. the json parser is buggy for validation - try: - codes_json = json.loads(row['values']) - value_is_json = True - - name = row['documented name']+'_codes' - if name not in self.codes: - self.codes[name] = codes_json - - except ValueError: - value_is_json = False - - if not value_is_json: - if ',' in row['values']: - matches = list_regex.finditer(row['values']) - - for match in matches: - groups = match.groupdict() - if groups['range_start'] and groups['range_end']: - start = strtoint(groups['range_start']) - end = strtoint(groups['range_end']) - values.extend(range(start, end + 1)) - else: - values.append(groups['element']) - else: - matched : bool = False - val_match = range_regex.search(row['values']) + for match in matches: + groups = match.groupdict() + if groups['range_start'] and groups['range_end']: + start = strtoint(groups['range_start']) + end = strtoint(groups['range_end']) + values.extend(range(start, end + 1)) + else: + values.append(groups['element']) + else: + matched : bool = False + val_match = range_regex.search(row['values']) + if val_match: + value_min = strtoint(val_match.group('start')) + value_max = strtoint(val_match.group('end')) + matched = True + + if data_type == Data_Type.ASCII: + #value_regex + val_match = ascii_value_regex.search(row['values']) if val_match: - value_min = strtoint(val_match.group('start')) - value_max = strtoint(val_match.group('end')) + value_regex = val_match.group('regex') matched = True - if data_type == Data_Type.ASCII: - #value_regex - val_match = ascii_value_regex.search(row['values']) - if val_match: - value_regex = val_match.group('regex') - matched = True - - if not matched: #single value - values.append(row['values']) - - concatenate : bool = False - concatenate_registers : list[int] = [] - - register : int = -1 - register_bit : int = 0 - register_byte : int = -1 - row['register'] = row['register'].lower() #ensure is all lower case - match = register_regex.search(row['register']) - if match: - register = strtoint(match.group('register')) - - register_bit = match.group('bit') - if register_bit: - register_bit = strtoint(register_bit) - else: - register_bit = 0 + if not matched: #single value + values.append(row['values']) - register_byte = match.group('byte') - if register_byte: - register_byte = strtoint(register_byte) - else: - register_byte = 0 + concatenate : bool = False + concatenate_registers : list[int] = [] - #print("register: " + str(register) + " bit : " + str(register_bit)) + register : int = -1 + register_bit : int = 0 + register_byte : int = -1 + row['register'] = row['register'].lower() #ensure is all lower case + match = register_regex.search(row['register']) + if match: + register = strtoint(match.group('register')) + + register_bit = match.group('bit') + if register_bit: + register_bit = strtoint(register_bit) else: - range_match = range_regex.search(row['register']) - if not range_match: - register = strtoint(row['register']) - else: - reverse = range_match.group('reverse') - start = strtoint(range_match.group('start')) - end = strtoint(range_match.group('end')) - register = start - if end > start: - concatenate = True - if reverse: - for i in range(end, start-1, -1): - concatenate_registers.append(i) - else: - for i in range(start, end+1): - concatenate_registers.append(i) - - if concatenate_registers: - r = range(len(concatenate_registers)) + register_bit = 0 + + register_byte = match.group('byte') + if register_byte: + register_byte = strtoint(register_byte) else: - r = range(1) + register_byte = 0 - read_command = None - if "read command" in row and row['read command']: - if row['read command'][0] == 'x': - read_command = bytes.fromhex(row['read command'][1:]) - else: - read_command = row['read command'].encode('utf-8') + #print("register: " + str(register) + " bit : " + str(register_bit)) + else: + range_match = range_regex.search(row['register']) + if not range_match: + register = strtoint(row['register']) + else: + reverse = range_match.group('reverse') + start = strtoint(range_match.group('start')) + end = strtoint(range_match.group('end')) + register = start + if end > start: + concatenate = True + if reverse: + for i in range(end, start-1, -1): + concatenate_registers.append(i) + else: + for i in range(start, end+1): + concatenate_registers.append(i) + + if concatenate_registers: + r = range(len(concatenate_registers)) + else: + r = range(1) + + read_command = None + if "read command" in row and row['read command']: + if row['read command'][0] == 'x': + read_command = bytes.fromhex(row['read command'][1:]) + else: + read_command = row['read command'].encode('utf-8') + + writeMode : WriteMode = WriteMode.READ + if "writable" in row: + writeMode = WriteMode.fromString(row['writable']) + + for i in r: + item = registry_map_entry( + registry_type = registry_type, + register= register, + register_bit=register_bit, + register_byte= register_byte, + variable_name= variable_name, + documented_name = row['documented name'], + unit= str(character_part), + unit_mod= numeric_part, + data_type= data_type, + data_type_size = data_type_len, + concatenate = concatenate, + concatenate_registers = concatenate_registers, + values=values, + value_min=value_min, + value_max=value_max, + value_regex=value_regex, + read_command = read_command, + write_mode=writeMode + ) + registry_map.append(item) + register = register + 1 - writeMode : WriteMode = WriteMode.READ - if "writable" in row: - writeMode = WriteMode.fromString(row['writable']) - for i in r: - item = registry_map_entry( - registry_type = registry_type, - register= register, - register_bit=register_bit, - register_byte= register_byte, - variable_name= variable_name, - documented_name = row['documented name'], - unit= str(character_part), - unit_mod= numeric_part, - data_type= data_type, - data_type_size = data_type_len, - concatenate = concatenate, - concatenate_registers = concatenate_registers, - values=values, - value_min=value_min, - value_max=value_max, - value_regex=value_regex, - read_command = read_command, - write_mode=writeMode - ) - registry_map.append(item) - register = register + 1 + with open(path, newline='', encoding='latin-1') as csvfile: + + #clean column names before passing to csv dict reader + + delimeter = ';' + first_row = next(csvfile).lower().replace('_', ' ') + if first_row.count(';') < first_row.count(','): + delimeter = ',' + + first_row = re.sub(r"\s+" + re.escape(delimeter) +"|" + re.escape(delimeter) +r"\s+", delimeter, first_row) #trim values + + csvfile = itertools.chain([first_row], csvfile) #add clean header to begining of iterator + + # Create a CSV reader object + reader = csv.DictReader(csvfile, delimiter=delimeter) + + # Iterate over each row in the CSV file + for row in reader: + process_row(row) + + # Add any unmatched overrides as new entries... probably need to add some better error handling to ensure entry isnt empty ect... + for key in override_keys: + applied = False + for key_value, override_row in overrides[key].items(): + if key_value not in overrided_keys: + self._log.info("Loading unique entry from overrides") + process_row(override_row) + applied = True + break + + if applied: + continue for index in reversed(range(len(registry_map))): item = registry_map[index] From 56b8c6b132b10cd38bcacd918c519323905ab29e Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 19:24:47 -0500 Subject: [PATCH 28/34] fix overrides --- classes/protocol_settings.py | 78 ++++++++++--------- .../v0.14.input_registry_map.override.csv | 5 ++ 2 files changed, 48 insertions(+), 35 deletions(-) create mode 100644 protocols/growatt/v0.14.input_registry_map.override.csv diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index ea3de1d..38055ff 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -345,7 +345,7 @@ def load_registry_overrides(self, override_path, keys : list[str]): reader = csv.DictReader(csvfile) for row in reader: for key in keys: - key_value = row[key] + key_value = row[key].strip().lower().replace(' ', '_') if key_value: overrides[key][key_value] = row return overrides @@ -367,17 +367,17 @@ def load__registry(self, path, registry_type : Registry_Type = Registry_Type.INP overrides : dict[str, dict] = None - override_keys = ['documented name', 'registry'] + override_keys = ['documented name', 'register'] overrided_keys = set() ''' list / set of keys that were used for overriding. to track unique entries''' #assuming path ends with .csv - overrides_path = path[:-4] + '.overrides.csv' + override_path = path[:-4] + '.override.csv' - if os.path.exists(overrides_path): - self._log.info("loading override file: " + overrides_path) + if os.path.exists(override_path): + self._log.info("loading override file: " + override_path) - overrides = self.load_registry_overrides(override_keys) + overrides = self.load_registry_overrides(override_path, override_keys) def determine_delimiter(first_row) -> str: if first_row.count(';') > first_row.count(','): @@ -385,7 +385,7 @@ def determine_delimiter(first_row) -> str: else: return ',' - def process_row(): + def process_row(row): # Initialize variables to hold numeric and character parts numeric_part = 1 character_part = '' @@ -409,24 +409,25 @@ def process_row(): #clean up doc name, for extra parsing row['documented name'] = row['documented name'].strip().lower().replace(' ', '_') - #apply overrides using documented name or register - override_row = None - # Check each key in order until a match is found - for key in override_keys: - key_value = row.get(key) - if key_value and key_value in overrides[key]: - override_row = overrides[key][key_value] - overrided_keys.add(key_value) - break - - # Apply non-empty override values if an override row is found - if override_row: - for field, override_value in override_row.items(): - if override_value: # Only replace if override value is non-empty - row[field] = override_value + if overrides != None: + #apply overrides using documented name or register + override_row = None + # Check each key in order until a match is found + for key in override_keys: + key_value = row.get(key) + if key_value and key_value in overrides[key]: + override_row = overrides[key][key_value] + overrided_keys.add(key_value) + break + + # Apply non-empty override values if an override row is found + if override_row: + for field, override_value in override_row.items(): + if override_value: # Only replace if override value is non-empty + row[field] = override_value variable_name = row['variable name'] if row['variable name'] else row['documented name'] - variable_name = variable_name = variable_name.strip().lower().replace(' ', '_').replace('__', '_') #clean name + variable_name = variable_name.strip().lower().replace(' ', '_').replace('__', '_') #clean name if re.search(r"[^a-zA-Z0-9\_]", variable_name) : self._log.warning("Invalid Name : " + str(variable_name) + " reg: " + str(row['register']) + " doc name: " + str(row['documented name']) + " path: " + str(path)) @@ -611,18 +612,25 @@ def process_row(): for row in reader: process_row(row) - # Add any unmatched overrides as new entries... probably need to add some better error handling to ensure entry isnt empty ect... - for key in override_keys: - applied = False - for key_value, override_row in overrides[key].items(): - if key_value not in overrided_keys: - self._log.info("Loading unique entry from overrides") - process_row(override_row) - applied = True - break - - if applied: - continue + if overrides != None: + # Add any unmatched overrides as new entries... probably need to add some better error handling to ensure entry isnt empty ect... + for key in override_keys: + applied = False + for key_value, override_row in overrides[key].items(): + # Check if both keys are unique before applying + if all(override_row.get(k) not in overrided_keys for k in override_keys): + self._log.info("Loading unique entry from overrides for both unique keys") + process_row(override_row) + + # Mark both keys as applied + for k in override_keys: + overrided_keys.add(override_row.get(k)) + + applied = True + break # Exit inner loop after applying unique entry + + if applied: + continue for index in reversed(range(len(registry_map))): item = registry_map[index] diff --git a/protocols/growatt/v0.14.input_registry_map.override.csv b/protocols/growatt/v0.14.input_registry_map.override.csv new file mode 100644 index 0000000..d19d04b --- /dev/null +++ b/protocols/growatt/v0.14.input_registry_map.override.csv @@ -0,0 +1,5 @@ +variable name,data type,register,documented name,description,values,unit,,,,,,,,,,, +,,0,System Status,System run state,{{system_status_codes}},1,,3: Fault,4: Flash,5: PV charge,6: AC charge,7: Combine charge,8: Combine charge and Bypass,9: PV charge and Bypass,10: AC charge and Bypass, 11: Bypass,12: PV charge andDischarge +OVERRIDE PV VOLTAGE,,,Vpv1,PV1 voltage,,0.1V,,,,,,,,,,, +extra entry,,777,unique extra entry,PV1 voltage,,0.1V,,,,,,,,,,, +extra entry broken,,,unique broken entry,,,-1,,,,,,,,,,, From 8ac4a56ee4b3c80ed5e3f456461e67aaf382a9b1 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 19:33:05 -0500 Subject: [PATCH 29/34] add protocol override feat --- documentation/usage/protocols.md | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/documentation/usage/protocols.md b/documentation/usage/protocols.md index 9068598..ea76190 100644 --- a/documentation/usage/protocols.md +++ b/documentation/usage/protocols.md @@ -1,3 +1,20 @@ +## Overriding protocols +Protocols CSVs can be overriden, so that specific entries can be modified. +Protocols CSV overrides can be created naming them with name.override.csv + +For example, creating a file called: v0.14.input_registry_map.override.csv +will allow the v0.14 protocol to be modified while preseving the main csv. + +"documented name" is used as the primary key. the "register" is a secondary key. + +only non-empty values will overwrite; not all columns need to be specified. + +| documented name | data type | +| ------------- | ------------- | +| product id | ASCII | + +if both the "documented name" and "register" are unqiue, the row will be treated as a new entry. + ## Custom / Editing Protocols Custom protocols can be created by naming them with name.custom. this will ensure that they do not get overwritten when updating. @@ -45,4 +62,4 @@ protocol_version = sigineer_v0.11 ``` protocol_version = pace_bms_v1.3 ``` -[Devices\SOK to MQTT](https://github.com/HotNoob/PythonProtocolGateway/wiki/Devices%5CSOK-to-MQTT) \ No newline at end of file +[Devices\SOK to MQTT](https://github.com/HotNoob/PythonProtocolGateway/wiki/Devices%5CSOK-to-MQTT) From 9b3d09a89a0aad1f00dac6e16026876fc9bede71 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 19:53:05 -0500 Subject: [PATCH 30/34] override bug fix --- .gitignore | 2 ++ classes/protocol_settings.py | 26 ++++++++++++++------------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 3e3a476..586ea38 100644 --- a/.gitignore +++ b/.gitignore @@ -21,7 +21,9 @@ variable_mask.txt variable_screen.txt .~lock.* protocols/*custom* +protocols/*/*custom* protocols/*override* +protocols/*/*override* classes/transports/*custom* input_registry.json diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index 38055ff..8101b8f 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -345,9 +345,10 @@ def load_registry_overrides(self, override_path, keys : list[str]): reader = csv.DictReader(csvfile) for row in reader: for key in keys: - key_value = row[key].strip().lower().replace(' ', '_') - if key_value: - overrides[key][key_value] = row + if key in row: + key_value = row[key].strip().lower().replace(' ', '_') + if key_value: + overrides[key][key_value] = row return overrides @@ -618,16 +619,17 @@ def process_row(row): applied = False for key_value, override_row in overrides[key].items(): # Check if both keys are unique before applying - if all(override_row.get(k) not in overrided_keys for k in override_keys): - self._log.info("Loading unique entry from overrides for both unique keys") - process_row(override_row) - - # Mark both keys as applied - for k in override_keys: - overrided_keys.add(override_row.get(k)) + if all(override_row.get(k) for k in override_keys): + if all(override_row.get(k) not in overrided_keys for k in override_keys): + self._log.info("Loading unique entry from overrides for both unique keys") + process_row(override_row) - applied = True - break # Exit inner loop after applying unique entry + # Mark both keys as applied + for k in override_keys: + overrided_keys.add(override_row.get(k)) + + applied = True + break # Exit inner loop after applying unique entry if applied: continue From d79fdb7195b1624c4cdb19298b799fb26eaa5412 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 21:36:46 -0500 Subject: [PATCH 31/34] override bug fix --- classes/protocol_settings.py | 39 +++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index 8101b8f..8b7fc41 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -346,7 +346,8 @@ def load_registry_overrides(self, override_path, keys : list[str]): for row in reader: for key in keys: if key in row: - key_value = row[key].strip().lower().replace(' ', '_') + row[key] = row[key].strip().lower().replace(' ', '_') + key_value = row[key] if key_value: overrides[key][key_value] = row return overrides @@ -391,23 +392,7 @@ def process_row(row): numeric_part = 1 character_part = '' - #if or is in the unit; ignore unit - if "or" in row['unit'].lower() or ":" in row['unit'].lower(): - numeric_part = 1 - character_part = row['unit'] - else: - # Use regular expressions to extract numeric and character parts - matches = re.findall(r'(\-?[0-9.]+)|(.*?)$', row['unit']) - - # Iterate over the matches and assign them to appropriate variables - for match in matches: - if match[0]: # If it matches a numeric part - numeric_part = float(match[0]) - elif match[1]: # If it matches a character part - character_part = match[1].strip() - #print(str(row['documented name']) + " Unit: " + str(character_part) ) - - #clean up doc name, for extra parsing + #clean up doc name, for extra parsing row['documented name'] = row['documented name'].strip().lower().replace(' ', '_') if overrides != None: @@ -427,6 +412,23 @@ def process_row(row): if override_value: # Only replace if override value is non-empty row[field] = override_value + #if or is in the unit; ignore unit + if "or" in row['unit'].lower() or ":" in row['unit'].lower(): + numeric_part = 1 + character_part = row['unit'] + else: + # Use regular expressions to extract numeric and character parts + matches = re.findall(r'(\-?[0-9.]+)|(.*?)$', row['unit']) + + # Iterate over the matches and assign them to appropriate variables + for match in matches: + if match[0]: # If it matches a numeric part + numeric_part = float(match[0]) + elif match[1]: # If it matches a character part + character_part = match[1].strip() + #print(str(row['documented name']) + " Unit: " + str(character_part) ) + + variable_name = row['variable name'] if row['variable name'] else row['documented name'] variable_name = variable_name.strip().lower().replace(' ', '_').replace('__', '_') #clean name @@ -590,6 +592,7 @@ def process_row(row): write_mode=writeMode ) registry_map.append(item) + register = register + 1 From b3d00d4b0adbe499157face489b85b3a416c9da3 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 30 Oct 2024 21:48:05 -0500 Subject: [PATCH 32/34] clean up load_reg / process row added regions, and better var names --- classes/protocol_settings.py | 59 +++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 21 deletions(-) diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index 8b7fc41..424e98e 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -389,12 +389,14 @@ def determine_delimiter(first_row) -> str: def process_row(row): # Initialize variables to hold numeric and character parts - numeric_part = 1 - character_part = '' + unit_multiplier : float = 1 + unit_symbol : str = '' #clean up doc name, for extra parsing row['documented name'] = row['documented name'].strip().lower().replace(' ', '_') + + #region overrides if overrides != None: #apply overrides using documented name or register override_row = None @@ -412,10 +414,14 @@ def process_row(row): if override_value: # Only replace if override value is non-empty row[field] = override_value + #endregion overrides + + #region unit + #if or is in the unit; ignore unit if "or" in row['unit'].lower() or ":" in row['unit'].lower(): - numeric_part = 1 - character_part = row['unit'] + unit_multiplier = 1 + unit_symbol = row['unit'] else: # Use regular expressions to extract numeric and character parts matches = re.findall(r'(\-?[0-9.]+)|(.*?)$', row['unit']) @@ -423,10 +429,20 @@ def process_row(row): # Iterate over the matches and assign them to appropriate variables for match in matches: if match[0]: # If it matches a numeric part - numeric_part = float(match[0]) + unit_multiplier = float(match[0]) elif match[1]: # If it matches a character part - character_part = match[1].strip() - #print(str(row['documented name']) + " Unit: " + str(character_part) ) + unit_symbol = match[1].strip() + + #convert to float + try: + unit_multiplier = float(unit_multiplier) + except: + unit_multiplier = float(1) + + if unit_multiplier == 0: + unit_multiplier = float(1) + + #endregion unit variable_name = row['variable name'] if row['variable name'] else row['documented name'] @@ -435,21 +451,11 @@ def process_row(row): if re.search(r"[^a-zA-Z0-9\_]", variable_name) : self._log.warning("Invalid Name : " + str(variable_name) + " reg: " + str(row['register']) + " doc name: " + str(row['documented name']) + " path: " + str(path)) - #convert to float - try: - numeric_part = float(numeric_part) - except: - numeric_part = float(1) - if numeric_part == 0: - numeric_part = float(1) - data_type = Data_Type.USHORT - - if 'values' not in row: - row['values'] = "" - self._log.warning("No Value Column : path: " + str(path)) + #region data type + data_type = Data_Type.USHORT data_type_len : int = -1 #optional row, only needed for non-default data types @@ -461,7 +467,14 @@ def process_row(row): else: data_type = Data_Type.fromString(row['data type']) + + if 'values' not in row: + row['values'] = "" + self._log.warning("No Value Column : path: " + str(path)) + #endregion data type + + #region values #get value range for protocol analyzer values : list = [] value_min : int = 0 @@ -511,7 +524,9 @@ def process_row(row): if not matched: #single value values.append(row['values']) + #endregion values + #region register concatenate : bool = False concatenate_registers : list[int] = [] @@ -559,6 +574,8 @@ def process_row(row): else: r = range(1) + #endregion register + read_command = None if "read command" in row and row['read command']: if row['read command'][0] == 'x': @@ -578,8 +595,8 @@ def process_row(row): register_byte= register_byte, variable_name= variable_name, documented_name = row['documented name'], - unit= str(character_part), - unit_mod= numeric_part, + unit= str(unit_symbol), + unit_mod= unit_multiplier, data_type= data_type, data_type_size = data_type_len, concatenate = concatenate, From 6777e29333c1515ca45149573b916d6f44d447ec Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 13 Nov 2024 09:12:12 -0600 Subject: [PATCH 33/34] bug fix; was sending empty name --- classes/transports/mqtt.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/classes/transports/mqtt.py b/classes/transports/mqtt.py index 6306345..2e9dbdd 100644 --- a/classes/transports/mqtt.py +++ b/classes/transports/mqtt.py @@ -231,7 +231,9 @@ def mqtt_discovery(self, from_transport : transport_base): continue - clean_name = item.variable_name.lower().replace(' ', '_') + clean_name = item.variable_name.lower().replace(' ', '_').strip() + if not clean_name: #if name is empty, skip + continue if False: if self.__input_register_prefix and item.registry_type == Registry_Type.INPUT: From 25cf59651305a3028973a5001a190230721e1a05 Mon Sep 17 00:00:00 2001 From: HotNoob Date: Wed, 13 Nov 2024 09:16:56 -0600 Subject: [PATCH 34/34] bug fix, skip empty entries --- classes/protocol_settings.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/classes/protocol_settings.py b/classes/protocol_settings.py index 424e98e..f95eda3 100644 --- a/classes/protocol_settings.py +++ b/classes/protocol_settings.py @@ -452,7 +452,8 @@ def process_row(row): self._log.warning("Invalid Name : " + str(variable_name) + " reg: " + str(row['register']) + " doc name: " + str(row['documented name']) + " path: " + str(path)) - + if not variable_name and not row['documented name']: #skip empty entry / no name. todo add more invalidator checks. + return #region data type data_type = Data_Type.USHORT