Licznik ORNO z RS-485 przestał działać od wersji HA core 2024.3.3

Od ostatniej wersji 2024.3.3 przestał mi działać licznik ORNO
Miałem go tak skonfigurowane :

modbus:
 - name: hub1
   type: serial
   baudrate: 9600
   port: /dev/ttyUSB0
   bytesize: 8
   method: rtu
   parity: E
   stopbits: 1
   timeout: 2
   sensors:
    - name: Licznik1_L1_Voltage
      unit_of_measurement: V
      device_class: voltage
      data_type: float32
      precision: 2
      slave: 0
      address: 0xE 
#      count: 2
    - name: Licznik1_L2_Voltage
      unit_of_measurement: V
      device_class: voltage
      data_type: float32
      precision: 2
      slave: 0
      address: 0x10 
#      count: 2
    - name: Licznik1_L3_Voltage
      unit_of_measurement: V
      device_class: voltage
      data_type: float32
      precision: 2
      slave: 0
      address: 0x12
#      count: 2
    - name: Licznik1_active_energy
      state_class: total
      unit_of_measurement: kWh
      device_class: energy
      slave: 0
      precision: 3
      address: 0x100
#      count: 2
      data_type: float32
    - name: Licznik1_Active_Power
      unit_of_measurement: Wh
      device_class: power
      slave: 0
      address: 0x1C
#      count: 2
      data_type: float32
      scale: 1000
    - name: Licznik1_L1_Active_Power
      unit_of_measurement: Wh
      device_class: power
      slave: 0
      address: 0x1E
#      count: 2
      data_type: float32
      scale: 1000
    - name: Licznik1_L2_Active_Power
      unit_of_measurement: Wh
      device_class: power
      slave: 0
      address: 0x20
#      count: 2
      data_type: float32
      scale: 1000
    - name: Licznik1_L3_Active_Power
      unit_of_measurement: Wh
      device_class: power
      slave: 0
      address: 0x22
#      count: 2
      data_type: float32
      scale: 1000

Nie działa na żadnej już innej aktualizacji HA
W czym jest problem ?
W logach nic nie widać

Witamy. Pierwszy raz poprawiłem - przy wstawianiu kodu trzymaj się poradnika

Pewnie porty zamienione.
Poczytaj np: RPi4 porty USB problem

Nie są zamienione
HA postawiony na Proxmoxie
Sprawdzałem porty są ok
Przywracam kopię do 2024.3.3 i wszystko działa
Musiała być jakaś zmiana już od wersji 2024.4.1 której nie mogę zlokalizować
Może coś w kodzie jest nie tak teraz ?

count: 2 masz usunięte ?
Zobacz w logach, może będzie jakaś podpowiedź.

Coraz więcej projektów związanych z HA stosuje wersjonowanie semantyczne w/g roku/miesiąca/poprawki, więc od razu przy wersji wypada jasno napisać, że chodzi o HA core (tak, wiem, kilka zdań później wspominasz o aktualizacjach HA, więc się wyjaśniło, zwracam uwagę, bo dział w którym to umieściłeś nie powoduje, że to jest w pełni oczywiste, że to YAML akurat z HA - może przeniosę wątek do innego działu, skoro problem dotyczy HA core i jego konfiguracji, edit: doprecyzowałem też tytuł).

Rozwaliło mnie tez sformułowanie “ostatniej wersji” w odniesieniu do marcowej (jeśli chodzi o HA core), skoro jesteśmy w przededniu wydania wersji lipcowej (kto z nas może dobrze pamiętać co stanowiło jakiś problem 4 miesiące temu, jeśli na niego osobiście nie trafiło, szczególnie że zwykle większość potencjalnych odpowiadających zapewne nie ma takiej konfiguracji jak Ty i może nie używa nawet tej integracji… więc tu wypływa dość istotna sprawa: zdecydowanie za późno szukasz rozwiązania problemu, należało to zrobić już w marcu - wtedy byłaby szansa, że ktoś jest na świeżo po napotkaniu czegoś podobnego).

Aha chciałem podkreślić że to sformułowanie jest mocno mętne, czy mamy rozumieć że w HA core 2024.3.2 wszystko działa a rozwala to akurat 2024.3.3?
czy że 2024.3.3 jest ostatnią wersją OK, a wydanie kwietniowe rozwala integrację (użyłeś od razu najwyższej kwietniowej wersji? dałeś czas na ewentualne przeliczenie całej bazy po aktualizacji, próbowałeś potem restartować VM? robiłeś jakieś zmiany wersji HAOS-ova?)
W ogóle system operacyjny VM widzi poprawnie mostek USB-RS485? (wspomniałeś już, ale wolę się upewnić, masz tylko jeden port postaci /dev/ttyUSBx czy kilka? możesz korzystać ze ścieżek by-id?)

Sprawdzałeś wszelkie breaking changes (backward incomatible changes) z ostatnich miesięcy?
(tzn. warto zajrzeć nawet ponad pół roku przed marcem, bo wiele zmian jest zapowiadanych z półrocznym wyprzedzeniem)

Oraz issues dotyczących tej integracji

A podniosłeś poziom logowania dla komponentu modbus?

logger:
  default: warning
  logs:
    homeassistant.components.modbus: debug
  1. Pokaż podsumowanie konfiguracji.
    Jak podzielić się informacjami o swojej instalacji Home Assistant na forum lub githubie

System Information

version core-2024.6.4
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.12.2
os_name Linux
os_version 6.6.33-haos
arch x86_64
timezone Europe/Warsaw
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.34.0
Stage running
Available Repositories 1459
Downloaded Repositories 15
HACS Data ok
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 12.4
update_channel stable
supervisor_version supervisor-2024.06.2
agent_version 1.6.0
docker_version 26.1.4
disk_total 30.8 GB
disk_used 10.2 GB
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization kvm
board ova
supervisor_api ok
version_api ok
installed_addons Terminal & SSH (9.14.0), Mosquitto broker (6.4.1), MariaDB (2.7.1), ESPHome (2024.6.6), AppDaemon (0.16.6), Zigbee2MQTT (1.39.0-1), Samba share (12.3.1), File editor (5.8.0), ZeroTier One (0.18.0)
Dashboards
dashboards 3
resources 2
views 10
mode storage
Recorder
oldest_recorder_run 24 czerwca 2024 13:06
current_recorder_run 3 lipca 2024 10:54
estimated_db_size 217.69 MiB
database_engine sqlite
database_version 3.44.2
Sonoff
version 3.7.3 (e240aaf)
cloud_online 0 / 1
local_online 1 / 1
Spotify
api_endpoint_reachable ok
Xiaomi Miot Auto
component_version 0.7.18
can_reach_server ok
can_reach_spec ok
logged_accounts 1
total_devices 8

To jest wersja najnowsza na której nie działa tylko licznik poza tym wszystko ok
Ostatnia wersja na jakiej działa po przywróceniu z kopi to wersja 2024.3.3

Rejestrator: homeassistant.components.modbus.modbus
Źródło: components/modbus/modbus.py:331
integracja: Modbus (dokumentacja, Problemy)
Pierwsze zdarzenie: 10:54:41 (1 zdarzenia)
Ostatnio zalogowany: 10:54:41

Pymodbus: hub1: Error: device: 0 address: 16 → Modbus Error: [Input/Output] ERROR: No response received after 3 retries

Jednak jest w logach coś takiego

Wygląda na brak komunikacji z licznikiem, sprawdź go innymi metodami najlepiej używając tego samego dongla na innym systemie,

Dobra - nie myślę. Skoro na starszej wersji działa to przyczyna leży w innym miejscu, przekop te issues

device:0 jest podejrzane, to jest adres rozgłoszeniowy . W liczniku masz ustawione ID=0? Przestaw na ID1 w integracji i liczniku.

W issues są opisane podobne problemy - wersja pymodbus, która weszła na przełomie marca/kwietnia jest zwalona, pozostaje czekać na poprawki w licowym lub późniejszych wydaniach (projekt źródłowy został naprawiony trzeba jednak poczekać na wdrożenie go w HA core).
A zatem downgrade HA core i cierpliwość jest potrzebna…

Akurat problem dotyczy tylko RTU, a nie dotyczy TCP.

Właśnie czekałem ,że może cos poprawią ale jak widać to trzeba czekać dalej

A zgłosiłeś problem gdzie należy? (teraz to trochę późno, bo nadchodzi aktualizacja taka jaka jest, więc jeśli tylko jedna osoba zgłosiła problem przez te 4 miesiące, to nie wiem czy wejdzie poprawka za parę dni, no ale jeśli lipcowa wersja nie pomoże to się powinieneś odezwać w issue pasującym do tematu)

No niestety nie bo nawet nie wiem gdzie

No jak to gdzie? w issues do core w odniesiemiu do integracji modbus, link jest wyżej, a że przeczytałem już kilka issues na temat to najbardziej pasuje mi to

ALE nie powinieneś się sugerować moim linkiem sprawdź osobiście wszystko na temat, bo ja nie mam motywacji i to może być nieodpowiednie trafienie.

Dawanie “łapek” czy “serduszek” przy pierwszym poście danego issue niewiele wnosi, tak naprawdę musi to być uczciwy feedback…

prywata

A wspominam o tym, bo tak robią ludzie, którzy “idą po najmniejszej linii oporu” - widzę to po wielu własnych issues, które parę razy popularyzowałem na forum, niestety github to nie fejsbuk i nie wystarczy kliknąć w ikonkę i trzeba się trochę narobić, a nie czekać, aż inni pomachają łopatą…

Bo tak naprawdę te serduszka czy łapki nie docierają do deweloperów jeśli widzą issue z zerem odpowiedzi…
(miło mi, że ktoś podziela moje poglądy, w kwestiach poruszonych w zgłoszeniach, same emotki nikomu nie przeszkadzają - problemem jest brak generowania istotnych treści przez osoby ograniczające się jedynie do emotki)

I tu jeszcze jedna uwaga, wpisy w rodzaju “me too” czy “upvote” są również “psu na budę potrzebne” - rozsądnym minimum jest przy issue ogólnym jedno zdanie które wyraża cokolwiek sensownego, a gdy chodzi o kwestie techniczne to w zasadzie wszystko co się znalazło w naszym przykładowym wątku (konfiguracja, logi, podsumowanie instalacji , opis problemu itd. i nie ważne, że ktoś już wcześniej napisał coś podobnego - czasem najistotniejsza informacja to jakiś drobny szczególik).

koniec prywaty

Ja jednak upieram się aby nie stosować adresu rozgłoszeniowego 0 :wink:
Na zapytanie o adresie 0 urządzenie odpowie własnym adresem innym niż 0.
Jeśli jest błąd w integracji to uzna, że odpowiada nie pytany.
Prosta próba, która nic nie kosztuje.

Nie no spoko, to 6 postów powyżej nie było kontrą do twojego posta, oczywiście należy to sprawdzić!

Nawet tak nie pomyślałem :slight_smile: Wspólny mianownik z inssues to adres 0.
Co nie zmienia, że na to powinna być odporna.

Tak mnie naprowadziłeś, że być może zmiany w pymodbus były celowe
(skoro usuwają zachowanie niepożądane, którym jest działanie mimo niepoprawnej konfiguracji - podobny przykład był parę dni temu w odniesieniu do ESPHome, gdzie w/g postotwórcy działanie niepoprawnego YAMLa zostało niezauważone przez nikogo przez 2 lata)