Notifications
Clear all

[Rozwiązany] Sonoff - ewelink bez "N" + HA - nie działa integracja po MQTT  

  RSS
stefan1818
(@stefan1818)
Początkujący Donator 2K20

Witam serdecznie, tak jak pisałem w innym temacie chciałem przeinstalować od zera HA i tak też uczyniłem gdyż nie mogę sprawić, żeby mqqt współpracował z afe co zaczyna być już flustrujące. Męczę się już ponad 10 dni z konfiguracją wydawać by się było prostej rzeczy, a mianowicie integracja jednego przełącznika z Home Assistant po MQTT. Przeczytałem już masę tutoriali, poradników, tematów na forach i wydawać by się mogło, że powinno działać bez problemów 😠

Mam najnowszą wersję HA bodaj 3.10, z wtyczek zainstalowałem tylko configurator, ale nic jeszcze nie zmieniałem w plikach yaml oraz Mosquitto.

Maszyna ma stały adres ip przypisany z DHCP.

I teraz do rzeczy, konfiguracja mosquitto wygląda tak:

mosquitto

natomiast konfiguracja AFE tak:

afe 1

afe 2

afe 3

Po instalacji brokera wkleiłem tylko configa z pierwszego linka, następnie odpaliłem wtyczkę i w integracjach pojawił się mosquitto na samej górze - konfiguracja po kliknięciu wygenerowała się sama, ja tylko zaznaczyłem dodatkowo autowykrywanie.

Po restarcie malinki dostaję taki oto komunikat:

ha login failed

Natomiast jak wejdę w integracje > mqqt :

mqqt broker

Podgląd logów mosquitto jest następujący:

log

ps. aha próbowałem tak samo z anonymous: false, wtedy jeszcze wrzucam w config mqqt login i pass, które jeszcze wklejam do AFE - ale efekt jest ten sam.

ps2 czekam na wasze propozycje 🙂

Cytuj
Dodane : 13/02/2020 9:53 pm
Tagi tematu
steel_rat
(@steel_rat)
Brygadzista

A gdzie masz skonfigurowanego użytkownika na, którego się logujesz do MQTT.

OdpowiedzCytuj
Dodane : 14/02/2020 12:19 am
stefan1818
(@stefan1818)
Początkujący Donator 2K20

Jak jest anonymous true to nigdzie i chyba powinno tak działać? Jak sprawdzałem z użytkownikiem to wpisy były tylko w konfiguracji pluginu mosquitto w sekcji logins oraz w urządzeniu afe. Nie było nic konfigurowane po stronie ha.

OdpowiedzCytuj
Dodane : 14/02/2020 6:31 am
stefan1818
(@stefan1818)
Początkujący Donator 2K20

Nie wiem gdzie błędu szukać - niby wszystko jest a nie działa ...

Czy AFE mam dobrze ustawione ? Muszę jakoś zawęzić pole poszukiwania.

OdpowiedzCytuj
Dodane : 14/02/2020 1:30 pm
adrian
(@adrian)
Prezes Zasłużony dla Forum, Patron Strony

popróbujmy odszukać problem (nie używam HA więc trochę w ciemno)

  • czy mosquitto działa - łączy się z nim urządzenie z AFE - spróbujmy posterować nić z poziomu linii komend

mosquitto_pub -h adres_ip_gdzie_masz_mqtt_broker -p 1883 -t -u nazwa_uzytkownika -P haslo "dom/hol/swiatlo/cmd/cmd" -m "toggle"

Jeśli nie masz klienta mosquitto zainstalowanego

sudo apt-get install mosquitto-clients
OdpowiedzCytuj
Dodane : 14/02/2020 4:29 pm
lukas121
(@lukas121)
Ekspert Zasłużony dla Forum, Donator 2019

W mosquito zostaw domyślną konfigurację, natomiast dodaj to jeśli nie masz do configuration.yaml

mqtt:
discovery: true
discovery_prefix: homeassistant
broker: ip
port: 1883
username: xxxxx
password: xxxxx

wpisz swój adres ip nazwę i hasło.

OdpowiedzCytuj
Dodane : 14/02/2020 10:17 pm
stefan1818
(@stefan1818)
Początkujący Donator 2K20
@lukas121

Dodałem to co mi napisałeś do konfiguracji w pliku yaml - w zasadzie wklejam cały plik gdyż nic tam praktycznie nie ma:


# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:

# Uncomment this if you are using SSL/TLS, running in Docker container, etc.
# http:
# base_url: example.duckdns.org:8123

# Text to speech
tts:
- platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml

# Example configuration.yaml entry
mqtt:
discovery: true
discovery_prefix: homeassistant
broker: 192.168.1.100 // tutaj podaję IP malinki na którym jest zainstalowany mosquitto
port: 1883
username: adam // nie tworzyłem specjalnie usera pod mqtt - ten user i hasło jest moim kontem administracyjnym
password: moje_hasło

a brokera moquitto przywróciłem do ustawień fabrycznych, czyli takich:

logins: []
anonymous: false
customize:
active: false
folder: mosquitto
certfile: fullchain.pem
keyfile: privkey.pem
require_certificate: false

Zrestartowałem serwer, w logach pojawiły się takie wpisy:

[08:09:47] INFO: Setup mosquitto configuration
[08:09:47] WARNING: SSL not enabled - No valid certs found!
[08:09:47] INFO: No local user available
[08:09:48] INFO: Initialize Hass.io Add-on services
[08:09:48] INFO: Initialize Home Assistant discovery
[08:09:48] INFO: Start Mosquitto daemon
1581750589: mosquitto version 1.6.3 starting
1581750589: Config loaded from /etc/mosquitto.conf.
1581750589: Loading plugin: /usr/share/mosquitto/auth-plug.so
1581750589: |-- *** auth-plug: startup
1581750589:  ├── Username/password checking enabled.
1581750589:  ├── TLS-PSK checking enabled.
1581750589:  └── Extended authentication not enabled.
1581750589: Opening ipv4 listen socket on port 1883.
1581750589: Opening ipv6 listen socket on port 1883.
1581750589: Opening websockets listen socket on port 1884.
1581750589: Warning: Mosquitto should not be run as root/administrator.
1581750589: New connection from 192.168.1.7 on port 1883.
[INFO] found adam on Home Assistant
1581750592: New client connected from 192.168.1.7 as wl-korytarz (p2, c1, k15, u'adam').
1581750593: New connection from 192.168.1.100 on port 1883.
1581750594: Socket error on client <unknown>, disconnecting.
1581750594: New connection from 192.168.1.100 on port 1883.
1581750594: New client connected from 192.168.1.100 as auto-509EB64A-7FE7-EAD9-5676-1CE087551CDD (p2, c1, k60, u'adam').
1581750596: New connection from 172.30.32.1 on port 1883.
1581750597: Socket error on client <unknown>, disconnecting.
1581750597: New connection from 172.30.32.1 on port 1883.
[INFO] found homeassistant on local database
1581750598: New client connected from 172.30.32.1 as auto-F56EE82B-50CA-A250-B2BD-4FFD8009D3EB (p2, c1, k60, u'homeassistant').
1581750599: New connection from 192.168.1.7 on port 1883.
1581750599: Client wl-korytarz already connected, closing old connection.
1581750599: New client connected from 192.168.1.7 as wl-korytarz (p2, c1, k15, u'adam').
1581750757: Client auto-509EB64A-7FE7-EAD9-5676-1CE087551CDD disconnected.
1581750759: Socket error on client auto-F56EE82B-50CA-A250-B2BD-4FFD8009D3EB, disconnecting.
1581750800: New connection from 192.168.1.100 on port 1883.
1581750800: New client connected from 192.168.1.100 as auto-CC5FA786-C2B5-1679-7CFC-0F6D19451F85 (p2, c1, k60, u'adam').
1581751628: New connection from 172.30.32.1 on port 1883.
[INFO] found adam on Home Assistant
1581751631: New client connected from 172.30.32.1 as mosq-gEUglKG3UmLuwUTIh6 (p2, c1, k60, u'adam').
1581751631: Client mosq-gEUglKG3UmLuwUTIh6 disconnected.
1581751767: New connection from 172.30.32.1 on port 1883.
1581751767: New client connected from 172.30.32.1 as mosq-R2A8gjTTcDUzcNWCrp (p2, c1, k60, u'adam').
1581751767: Client mosq-R2A8gjTTcDUzcNWCrp disconnected.
1581752389: Saving in-memory database to /data/mosquitto.db.
1581752743: New connection from 172.30.32.1 on port 1883.
[ERROR] Auth error with adam
1581752748: Socket error on client <unknown>, disconnecting.
1581752763: New connection from 172.30.32.1 on port 1883.
[INFO] found adam on Home Assistant
1581752766: New client connected from 172.30.32.1 as mosq-txGmWlUJoP0U8aQ4ma (p2, c1, k60, u'adam').
1581752766: Client mosq-txGmWlUJoP0U8aQ4ma disconnected.
1581752769: New connection from 172.30.32.1 on port 1883.
1581752769: New client connected from 172.30.32.1 as mosq-ljngcirp4BdciQcwYu (p2, c1, k60, u'adam').
1581752769: Client mosq-ljngcirp4BdciQcwYu disconnected.
1581752771: New connection from 172.30.32.1 on port 1883.
1581752771: New client connected from 172.30.32.1 as mosq-4pMUgdmEdEBlNdnyfa (p2, c1, k60, u'adam').
1581752771: Client mosq-4pMUgdmEdEBlNdnyfa disconnected.
1581752772: New connection from 172.30.32.1 on port 1883.
1581752772: New client connected from 172.30.32.1 as mosq-RdqygmlfGEPmjvoTYg (p2, c1, k60, u'adam').
1581752772: Client mosq-RdqygmlfGEPmjvoTYg disconnected.

W integracjach nic nowego się nie pojawiło, a w skonfigurowanych kiedy kliknę na MQTT pojawia się : Ta integracja nie ma żadnych urządzeń.

@adrian

Jeśli chodzi o sprawdzenie to wygląda to tak, że musiałem trochę zmienić tą komendę i wklepałęm to:

mosquitto_pub -h 192.168.1.100 -p 1883 -u adam -P moje_hasło -t "dom/hol/swiatlo/cmd/cmd" -m "toggle"

Zadziałało i światło się zapala i gasi w zależności od poprzedniego stanu 🙂

Czyli broker działa prawidłowo, tylko po stronie HA czegoś brakuje ??

OdpowiedzCytuj
Dodane : 15/02/2020 8:47 am
adrian
(@adrian)
Prezes Zasłużony dla Forum, Patron Strony

@stefan1818

gdzieś w HA takie coś powinieneś chyba wpisać / zaktualizować

https://www.smartnydom.pl/forum/main-category-home-assistant/sonoffafe-ha-brak-wykonania-akcji/#post-11519

  - platform: mqtt
name: "Lampa"
command_topic: "dom/hol/swiatlo/cmd/cmd"
state_topic: "dom/hol/swiatlo/cmd/state"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true

OdpowiedzCytuj
Dodane : 15/02/2020 9:30 am
lukas121
(@lukas121)
Ekspert Zasłużony dla Forum, Donator 2019

@stefan1818 w integracjach nic ci się nie pojawi bo afe nie ma wykrywania po mqtt ( jeśli się mylę niech mnie @adrian poprawi). Musisz ręcznie dodawać wszystkie urządzenia z afe. Musisz wkleić to do configuration.yaml  i w afe konfiguracji mqtt wpisac login i haslo.

light:
- platform: mqtt
name: "Światło"
command_topic: "dom/hol/swiatlo/cmd/cmd"
state_topic: "dom/hol/swiatlo/cmd/state"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true


OdpowiedzCytuj
Dodane : 15/02/2020 11:17 am
stefan1818
(@stefan1818)
Początkujący Donator 2K20

@adrian

@lukas121

Dzięki wielkie za pomoc w końcu ruszyło - sam nie wiem co wcześniej robiłem źle - jeszcze to przeanalizuję, ale przy waszej pomocy wreszcie się udało bo już mnie nerwy brały - próbowałem to rozgryźć prawie dwa tygodnie i nie wiedziałem gdzie popełniam błędy - problem w tym, że trzymając się dokumentacji wcale nie jest to takie oczywiste moim zdaniem. Dokumentacja może i jest, ale napisana jest bardzo ogólnie.

Dla potomnych napiszę od początku co było zrobione, aby połączenie Home Assistant + Sonoff touch AFE + MQTT Mosquitto działało prawidłowo - napisze tylko podstawową działającą konfigurację gdyż dopiero zaczynam i póki co nie czuję się na siłach nic więcej doradzać 🙂

Instalacja na RPi (nie ma znaczenia które)

1. Na czystym systemie hassio dodałem następujące addony:

- Configurator (sama wtyczka nie wymaga żadnej dodatkowej konfiguracji),

- SSH Serwer (łączenie się przez PUTTY) - konfiguracja banalnia i nie opisuję jej bo nie jest to krok niezbędny do działania w/w zestawu,

- broker MQTT Mosquitto (tutaj najwięcej rozbieżności, gdyż w zależności od wersji różnie piszą w poradnikach, w dokumentacji też uważam że jest sporo wiedzy ale bardziej zaawansowanej - brakuje prostego minimum, które zadziała)

2. Konfiguracja hassio to w zasadzie ustawienie po stronie dhcp stałego adresu malinki, konfiguracji brokera lepiej nie ruszać, działa ta domyślna, nie tworzyłem również dedykowanego usera pod mqtt, tylko wpisałem dane do konta z którego się loguję do HA, natomiast w pliku configuration.yaml dodałem takie wpisy:

mqtt:
discovery: true
discovery_prefix: homeassistant
broker: 192.168.1.100 // adres IP malinki/brokera
port: 1883
username: xxx
password: hasło_xxx

light:
- platform: mqtt
name: "Światło"
command_topic: "dom/hol/swiatlo/cmd/cmd"
state_topic: "dom/hol/swiatlo/cmd/state"
qos: 1
payload_on: "on"
payload_off: "off"
retain: true

Niby proste, ale się nakombinowałem, żeby działało 🙂

OdpowiedzCytuj
Dodane : 15/02/2020 4:34 pm
adrian
(@adrian)
Prezes Zasłużony dla Forum, Patron Strony

dzięki za instrukcję - komuś zdecydowanie może się przyda.

Sugerowałbym Ci jeszcze zmienić w konfiguracji AFE temat MQTT do sterowania przekaźnikiem - teraz masz taki pokraczny

dom/hol/swiatlo/cmd/cmd

Ustaw w AFE

dom/hol/swiatlo

w HA będziesz miał do sterowania:

dom/hol/swiatlo/cmd

to stanów

dom/hol/swiatlo/state
OdpowiedzCytuj
Dodane : 15/02/2020 4:51 pm
stefan1818
(@stefan1818)
Początkujący Donator 2K20

Jeszcze raz dziękuję za pomoc. Tematy zmieniłem wg wskazówek.

Potestowalem moje poprzednie konfiguracje bo mi to spokoju nie dawało i już wiem czemu nie działały. Jeden mały szczegół nigdzie o tym wprost nie pisze, a wręcz przeczytałem w oficjalnej dokumentacji mosquitto brokera wprowadzającą w błąd informację:

Create a new user for MQTT via the Configuration -> Users (manage users). Note: This name cannot be homeassistant or addon, those are reserved usernames.

Tak to nie będzie działało, a przynajmniej nie z najnowszą wersją ha. Musimy dać do konfiguracji usera który został stworzony przy pierwszym logowaniu do ha - tak tego z uprawnieniami admina. Dziwne ale przetestowałem sobie i przy oddzielnym userze - nie ma znaczenia czy admin czy zwykły całość nie działa. Może jakoś można to obejść ale ja nigdzie tego nie znalazłem.

Pozdrawiam serdecznie.

OdpowiedzCytuj
Dodane : 15/02/2020 6:57 pm
adrian polubień
lukas121
(@lukas121)
Ekspert Zasłużony dla Forum, Donator 2019

Przed aktualizacją HA do nowszych wersji warto poczytać czy nie wnoszą one istotnych zmian, które to właśnie mogą powodować problemy zanim nie dokonamy modyfikacji w konfiguracji HA. Jak będziesz miał problemy z ha to pisz chętnie pomogę.

OdpowiedzCytuj
Dodane : 16/02/2020 10:47 am
stefan1818
(@stefan1818)
Początkujący Donator 2K20

W podziękowaniu za pomoc i zainteresowanie przekazałem datek. Świetne oprogramowanie jestem bardzo zadowolony.

Pozdrawiam.

OdpowiedzCytuj
Dodane : 19/02/2020 11:07 am
adrian polubień
Udostępnij: