Replies: 3 comments 6 replies
-
Can you tell me the version of the integration you're using? How many panel strings do you have connected, 1 or 2? Also, can you show me the screenshot of qmodmaster with offset 122? The problem is that for some inverter models, the M160 sunspec model doesn't start at 122, so we need to find where it is in your case. For UNO-DM-* and REACT2-* models, the offset is 1104. If we can find where the M160 model starts, I can implement a fix for your model. You need to use qmodmaster to find it. |
Beta Was this translation helpful? Give feedback.
-
I will release a beta with the following code for M160, that takes into account 3 different offsets: check those 3 offsets with qmodmaster, in first register you should find the value 160. try:
# Model 160 default address: 40122 (or base address + 122)
# For UNO-DM-PLUS/REACT2/TRIO inverters it has different offset
invmodel = self.data["comm_model"].upper()
if invmodel.startswith("UNO") or invmodel.startswith("REACT2"):
offset = 1104
elif invmodel.startswith("TRIO"):
offset = 208
else:
offset = 122
read_model_160_data = self.read_holding_registers(
slave=self._slave_id, address=(self._base_addr + offset), count=42
)
_LOGGER.debug("(read_rt_160) Model: %s", invmodel)
_LOGGER.debug("(read_rt_160) Slave ID: %s", self._slave_id)
_LOGGER.debug("(read_rt_160) Base Address: %s", self._base_addr)
_LOGGER.debug("(read_rt_160) Offset: %s", offset)
except ModbusException as modbus_error:
_LOGGER.debug(f"Read M160 modbus_error: {modbus_error}")
raise ModbusError() from modbus_error |
Beta Was this translation helpful? Give feedback.
-
v3.5.1-beta.4 has been released, please upgrade and let me know how it goes. Thanks. |
Beta Was this translation helpful? Give feedback.
-
Hi, I'm trying to setup this integration with my ABB UNO-3.0-TL-OUTD inverter with the VSN300 WiFi logger card. I have installed HACS and the custom component, but when I try to add the device in HA I get an "Unknown error".
I see this in the logs:
As you can see it's reading some data from the inverter, but if fails in the read_sunspec_modbus_model_160 method. I had a look at the code and saw that it's trying to read data with an offset of 122 and a count of 42. I tried to do that myself but then I also get an read error in the Modbus Master tool.
After some experimenting I noticed that I can only read 2 register from offset 122, more than 2 registers will give a read error in the tool.
Do you have any clue why this happens? Should this component work with my inverter?
Beta Was this translation helpful? Give feedback.
All reactions