mam problem żeby zestawić połączenie MQTT pomiędzy Domoticzem a Wemos D1 mini
nie mam pewności gdzie leży błąd czy po stronie Domoticza czy po stronie Wemosa, ale w Wemosie w zakładce MAIN połączenie Mqtt się zaptaszkowało na zielono więc jakby uzyskał połączenie, natomiast w Raspberry po wpisaniu komendy mosquitto mam takie coś:
@raspberrypi:~ $ mosquitto 1698606983: mosquitto version 2.0.11 starting 1698606983: Using default config. 1698606983: Starting in local only mode. Connections will only be possible from clients running on this machine. 1698606983: Create a configuration file which defines a listener to allow remote access. 1698606983: For more details see https://mosquitto.org/documentation/authentication-methods/ 1698606983: Opening ipv4 listen socket on port 1883. 1698606983: Error: Address already in use 1698606983: Opening ipv6 listen socket on port 1883. 1698606983: Error: Address already in use
jakby coś było nie tak , może ktoś poradzić co jest źle i jak to poprawić ?
te ERRORy mnie niepokoją, ale nie wiem o co chodzi
sudo nano /etc/mosquitto/mosquitto.conf
na końcu tego pliku wklej
listener 1883
allow_anonymous true
zapisz i zrób restart usługi
sudo systemctl restart mosquitto
miałem taki wpis w tym pliku
Place your local configuration in /etc/mosquitto/conf.d/ # # A full description of the configuration file is at # /usr/share/doc/mosquitto/examples/mosquitto.conf.example pid_file /run/mosquitto/mosquitto.pid persistence true persistence_location /var/lib/mosquitto/ log_dest file /var/log/mosquitto/mosquitto.log include_dir /etc/mosquitto/conf.d listener 1883 allow_anonymous true
a przy próbie restartu
sudo systemctl restart mosquitto
wyskakuje coś takiego:
$ sudo systemctl restart mosquitto Job for mosquitto.service failed because the control process exited with error code. See "systemctl status mosquitto.service" and "journalctl -xeu mosquitto.service" for details.
Error: Address already in use
Wynik uruchomienia przez Ciebie polecenia mosquitto
wskazuje, że port 1883 jest już używany przez inną instancję serwera Mosquitto. Dlatego nie możesz uruchomić nowej instancji serwera Mosquitto na tym samym porcie, ponieważ port jest już zajęty.
aby zobaczyć czy usługa działa powinieneś użyć
sudo systemctl status mosquitto
zobaczyć możesz co używa portu 1883
sudo ss -tuln | grep 1883
i ewentualnie jaka aplikacja/program go używa
sudo lsof -i :1883
zawsze możesz odpalić MQTT EXPLORER i zobaczyć czy wemos się dobija ..
no więc tak:
po użyciu
sudo systemctl status mosquitto
mam:
sudo systemctl status mosquitto * mosquitto.service - Mosquitto MQTT Broker Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; preset: en> Active: active (running) since Sun 2023-10-29 21:41:09 CET; 19h ago Docs: man:mosquitto.conf(5) man:mosquitto(8) Process: 791 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exi> Process: 797 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exi> Process: 798 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited,> Process: 799 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited,> Main PID: 808 (mosquitto) Tasks: 1 (limit: 3912) CPU: 56.790s CGroup: /system.slice/mosquitto.service `-808 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf Oct 29 21:41:09 raspberrypi systemd[1]: Starting mosquitto.service - Mosquitto > Oct 29 21:41:09 raspberrypi systemd[1]: Started mosquitto.service - Mosquitto M> lines 1-17/17 (END)
po użyciu :
sudo ss -tuln | grep 1883
mam:
sudo ss -tuln | grep 1883 tcp LISTEN 0 100 0.0.0.0:1883 0.0.0.0:* tcp LISTEN 0 100 127.0.0.1:1883 0.0.0.0:* tcp LISTEN 0 100 [::]:1883 [::]:*
nie wiem co to za adres 127 bo ja takich nie mam
a po użyciu :
sudo lsof -i :1883
mam:
sudo lsof -i :1883 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mosquitto 808 mosquitto 5u IPv4 14859 0t0 TCP *:1883 (LISTEN) mosquitto 808 mosquitto 6u IPv6 14860 0t0 TCP *:1883 (LISTEN) mosquitto 808 mosquitto 8u IPv4 21761 0t0 TCP 192.168.0.122:1883->192.168.0.114:57192 (ESTABLISHED) domoticz 1918 root 28u IPv4 58223 0t0 TCP 192.168.0.122:42884->196.168.0.122:1883 (SYN_SENT) mosquitto 2746 zbzu 4u IPv4 22607 0t0 TCP localhost:1883 (LISTEN)
MQTT Explorer wywala mi chyba ze 300 różnych komunikatów i wszystko cały czas sie zmienia ale nie widzę tam mojego ESP, chyba że coś trzeba w Explolerze ustawić żeby pokazywał sensownie
Dodam że system jest postawiony od nowa i domoticz też wgrany od nowa więc nic na nim więcej nie robiłem dotychczas poza próbą nawiązania połącenia z ESP 8266
127.0.0.1:
To inaczej localhost , czyli broker jest na lokalnej maszynie. MQTT Explorer po wskazaniu brokera pokzauje wszystko co do tego brokera puka. Skoro nie widzisz ESP, to znaczy że nie publikuje. Nie napisałeś co masz wgrane do tego ESP i jak ustawiłeś temat - topic, więc nawet gdybyć wstawił zrzut ekranu, nikt nie pomoże
do ESP mam wgrane Build: ESP_Easy_mega_20221224_collection_A_ESP8266_4M1M Dec 24 2022
i na nim działam. Generalnie wszystkie ESP jakich używałem mi się łączyły z Domoticzem i to działało więc jakby nie startuję od zera, padł mi domoticz (malina) i teraz staram sie postawić go na nowo i próbuję na jednym ESP się w ogóle połączyć ale coś mi nie idzie po postawieniu systemu i wgraniu Domoticza.
Generalnie robiłem już odinstalowanie MQTT i postawienie na nowo ale to nic nie dało.
To co mam jeszcze podać, jakie dane, żeby dało sie pomóc, bo nie mogę ruszyć z miejsca ?
A o jaki temat-topic chodzi ?
Generalnie robiłem już odinstalowanie MQTT
Podstawa to urządzenie ESP musi publikować do brokera, w espeasy jak nie zmienisz domyślego topic , to poblikuje po nazwie ustawionej w devices . Nie znam tego firmware, ale pewnie są tam jakieś logi, z których można zobaczyć czy łączy się z brokerem.
Co prawda MQTT Explorer powinien pokazać nazwy urządzeń z ESP, ale warunek to ustawiony adres, port dane user, hasło w ESPEasy.
Sam domoticz nie ma tu nic do rzeczy. Jak broker nie widzi to znaczy brak komunikacji mqtt.
nie ułatwiasz,
jak poprzednio instalowałem Domoticza i uruchamiałem jakieś 2-3 lata temu - może trochę więcej, bo tyle działał do teraz, to nie przypominam sobie żebym miał takie problemy, samo połączenie mqtt poszło bez problemu i działało mi w ten sposób wiele ESP 8266 Di mini bo na nich działam. Nie jestem programistą ale z niewielką pomoca daję radę coś tam pouruchamiać. Obecnie jak mi padła malina i instaluję wszystko od nowa to napotykam same problemy nie do przejścia dla mnie bez pomocy z zewnątrz. Nawet Domoticz nie instalował sie bez problemów tak jak dawniej tylko trzeba było to robić zupełnie innymi komendami, poszło po Twoich naprowadzeniach.
Teraz znowu sa niespotykane problemy żeby uruchomić Mqtt i żeby to połączyć z ESP
Co do samego ESP to nie przypominam sobie żebym gdziekolwiek miał możliwość ustawiania/zmiany w nim TOPIC jak piszesz. Zawsze w ESP nadaje sie mu nazwę w CONFIG jako UNIT NAME i tą nazwą sie on prezentuje po IP, potem ustawia sie CONTROLLERS i to tam ustawia sie dane do połączenia MQTT, same DEVICE nie maja tu znaczenia bo do samego połączenia może ich nie być dopiero im sie nadaje IDX'y żeby Domotich je widział a poza tym deviców może być sporo i każdy z inną nazwą
co do logów w ESP to są i wygląda to tak, na trzecim slajdzie widać że mqqt jest połączone a i tak łączności z domoticzem nie ma:
deviców może być sporo i każdy z inną nazwą
Dokładnie tak , ale żeby broker je rozróżnił muszą mieć nazwy , topic w espeasy ustawia się w takim oknie
To oczywiscie przykład znaleziony w sieci, bo ja nie używam espeasy.
Powtórzę raz jeszcze, jak MQTT Explorer nie widzi listy jak poniżej
To znaczy brak komunikacji 🙂
A do porawnej komunikacji potrzeba tylko tyle co poniżej, oczywiście jak broker działa
Staram się żebyś zrozumiał jak to działa a nie robił po omacku i jak się uda to za rok od nowa walka 🙂
no i to wszystko mam:
a nie działa
a nie działa
Połaczyłeś MQTT Explorer z testowym brokerem, który pokazuje jakieś dane demonstracyjne z Farncji albo Chin i twierdzisz, że wszystko masz. Połącz to narzędzie ze swoim brokerem czyli tak
I wtedy pokaż co tam jest
a widzisz nie wiedziałem jak ogarnąć MQTT Explorera 😋
u mnie jest coś takiego:
to dobrze czy źle ?
to dobrze czy źle ?
rozwiń to domoticz 2 topic 7 wiadomości, tzn kliknij tą strzałkę i co tam będzie ?
Ok za wcześnie napisałem , teraz pytanie, masz w sprzęcie domoticz MQTT Gateway z konfiguracją identyczną jak w tym MQTT Explorer ?
w tej linijce in= jest faktyczny IDX z ESP i lecą pomiary temp i wilgotności
Patrz co napisałem wyżej
mam tak w Domoticzu, wydaje się że jest tak samo:
mam tak w Domoticzu:
Dobra , to zrób przy tym sprzęcie aktualizuj, tylko nie "dodaj" bo sobie narobisz kłopotu, aktualizuj jest na górze po lewej , potem sprawdz logi w domoticz i najlepiej zrób zrzut.
jest i log:
jest i log:
w zakładce security w domoticz w sieciach zaufanych masz dostęp do całej Twojej sieci bez hasła ?
Tzn takie coś z dokładnie identycznym wpisem , bo mamy taką samą podsieć 🙂
Jak nie to ustaw zrób znów aktualizuj mqtt gateway i sprawdz czy nie na błędów z mqtt w logach