DSMR flooding the log

Hey all,

I used to read my smart meter DSMR with a usb-serial cable without any issue. However after some of the recent upgrades I have some issues in my log file. The readings still work and seem to be up to date, however it seems to be in delay due to the errors presumably.

The default settings have been used by me for quite some time.
Running raspberry 3B, hassio 73.1
sensor:

  • platform: dsmr
Wed Jul 11 2018 11:11:24 GMT+0200 (CEST)

Error doing job: Exception in callback <bound method SerialTransport._read_ready of SerialTransport(<uvloop.Loop running=True closed=False debug=False>, <dsmr_parser.clients.protocol.DSMRProtocol object at 0x7374e4d0>, Serial<id=0x7349dfd0, open=True>(port='/dev/ttyUSB0', baudrate=9600, bytesize=7, parity='E', stopbits=1, timeout=0, xonxoff=0, rtscts=0, dsrdtr=False))>
Traceback (most recent call last):
  File "uvloop/cbhandles.pyx", line 62, in uvloop.loop.Handle._run
  File "/usr/lib/python3.6/site-packages/serial_asyncio/__init__.py", line 106, in _read_ready
    self._protocol.data_received(data)
  File "/usr/lib/python3.6/site-packages/dsmr_parser/clients/protocol.py", line 88, in data_received
    self.handle_telegram(telegram)
  File "/usr/lib/python3.6/site-packages/dsmr_parser/clients/protocol.py", line 103, in handle_telegram
    parsed_telegram = self.telegram_parser.parse(telegram)
  File "/usr/lib/python3.6/site-packages/dsmr_parser/parsers.py", line 57, in parse
    telegram[signature] = parser.parse(match.group(0))
  File "/usr/lib/python3.6/site-packages/dsmr_parser/parsers.py", line 136, in parse
    return MBusObject(self._parse(line))
  File "/usr/lib/python3.6/site-packages/dsmr_parser/parsers.py", line 115, in _parse
    for i, value in enumerate(values)]
  File "/usr/lib/python3.6/site-packages/dsmr_parser/parsers.py", line 115, in <listcomp>
    for i, value in enumerate(values)]
  File "/usr/lib/python3.6/site-packages/dsmr_parser/parsers.py", line 212, in parse
    value = self.coerce_type(value) if value is not None else value
ValueError: invalid literal for int() with base 10: '2C 

I have been searching the forum for a bit but could not find a similar issue. Thanks heaps for any suggestions, Tim

I know nothing about these meters. It is chucking an error because it is getting a hexadecimal value where it expects a decimal one. Is your meter using DSMR v2.2 (default value)? If not you might want to try setting the dsmr_version: key as per the component page.

Hi Tom,

Thanks for replying… looks like it is solved. I have been playing with the settings of the version already some times. For now I have set it explicitly on 2.2, which is according to component details the default, and the flooding is gone. This is a bit weird…, maybe an issue with the component.

final conclusion;

(1) under the (i) at developer tools, the log appears spammed, however the home-assistant.log file is not flooded.

(2) my smart meter is a Landys & Gyr E350, however with dsmr 2.2, which is officially not supported. So probably this must the reason for the flooding.