FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: MAC66666 am 01 Februar 2018, 14:36:52

Titel: Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 01 Februar 2018, 14:36:52
Viel durchgekaut, aber ich habe es hier im Forum nicht gefunden... Wollte ursprünglich eigentlich vermeiden einen MQTT Broker einzusetzen, aber bei meinem eingesetzen Sonoff T1 R2 EU 2-Gang ging es leider (noch) nicht mit ESPEasy, also Tasmota.

Das läuft soweit auch, mein Broker läuft auch (siehe Bild im Anhang). Aber mein Broker empfängt nichts vom Sonoff T1.

Ich habe in den MQTT Einstellungen das Benutzerpasswort weggelassen, name in 0 geändert oder ganz weggelassen (dann wird er wieder erstellt) usw.  Was kapiere ich gerade nicht?

Bitte um Hilfe  ;)
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 01 Februar 2018, 16:03:05
erbindung fehlgeschlagen aufgrund von 192.168.5.110:1883, rc -4. Wiederversuch in 10 sek
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 01 Februar 2018, 16:12:55
erbindung fehlgeschlagen aufgrund von 192.168.5.110:1883, rc -4. Wiederversuch in 10 sek

Per handy-App kann ich an meinen Broker schicken... Also das funktioniert grundsätzlich.

Ah, ist wohl wein Keepalive Problem. Das habe ich im Wiki gelesen, aber leider nicht gefunden, wo ich das Eintragen muss, da ich mit platformIO kompiliert habe...
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 01 Februar 2018, 16:25:49
Hallo MAC66666,

192.168.5.110 ist die IP vom Raspberry auf dem Mosquitto installiert ist?

Welches Protocol hast Du eingestellt bei Controllers?
Ich verwende "OpenHAB MQTT"

Gruß
p99p

EDIT: Such mal nach MQTT.fx. Das Tool hilft bei MQTT ungemein!
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 01 Februar 2018, 19:06:58
Hi,
jein, das ist die IP meiner Linux-VM wo der Broker und FHEM drauf laufen.

Protokoll kann ich nicht ändern. Das geht wohl nur in ESPEasy. bei Tasmota kann ich da nix umstellen, oder?. Ich vermute tatsächlich, es liegt am Keepalive...

Da ich mit all dem totaler Neuling bin, müsste mich mal jemand mit der Nase drauf stoßen, ob ich das nachträglich bei Tamota ändern kann oder wie ich das bei platformIO ändere... Oder ich muss mich noch mal mit der Arduino IDE auseinandersetzen...
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 01 Februar 2018, 21:21:51
Asche auf mei Haupt.
Ich habe mich tatsächlich vertan mit dem Protokoll.

zur Wiedergutmachun hir mal ein Konsolenauszug:
00:00:00 Projekt sonoff Sonoff (Topic SonoffWZ, Fallback DVES_DA6311, GroupTopic sonoffs) Version 5.11.1g
00:00:00 WIF: verbinden mit AP1 MySSID in Modus 11N wie SonoffWZ-0785...
00:00:05 WIF: verbunden
00:00:05 DNS: initialisiert
00:00:05 HTP: Web-Server aktiv bei SonoffWZ-0785.local mit IP-Adresse 192.168.115.25
21:11:16 MQT: Verbindungsversuch...
21:11:16 MQT: verbunden
21:11:16 MQT: tele/SonoffWZ/LWT = online (beibehalten)
21:11:16 MQT: cmnd/SonoffWZ/POWER =
21:11:16 MQT: tele/SonoffWZ/INFO1 = {"Module":"Sonoff T1 2CH","Version":"5.11.1g","FallbackTopic":"DVES_DA6311","GroupTopic":"sonoffs"}
21:11:16 MQT: tele/SonoffWZ/INFO2 = {"WebServerMode":"Admin","Hostname":"SonoffWZ-0785","IPAddress":"192.168.115.25"}
21:11:16 MQT: tele/SonoffWZ/INFO3 = {"RestartReason":"Software/System restart"}
21:11:16 MQT: homeassistant/switch/SonoffWZ_1/config =  (beibehalten)
21:11:16 MQT: homeassistant/switch/SonoffWZ_2/config =  (beibehalten)
21:11:18 MQT: stat/SonoffWZ/RESULT = {"POWER1":"OFF"}
21:11:18 MQT: stat/SonoffWZ/POWER1 = OFF
21:11:18 MQT: stat/SonoffWZ/RESULT = {"POWER2":"OFF"}
21:11:18 MQT: stat/SonoffWZ/POWER2 = OFF
21:11:25 MQT: tele/SonoffWZ/STATE = {"Time":"2018.02.01 21:11:25","Uptime":0,"Vcc":2.944,"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"MySSID","RSSI":100,"APMac":"XX:XX:XX:XX:XX:XX"}}
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 01 Februar 2018, 23:42:56
Ah cool... Danke dafür.

Warum heisst Dein Teil wie meines ?  ;)

ALso ch schaue mal ob ich es über die Arduino IDE besser hinbekomme...
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 02 Februar 2018, 00:09:18
Ah mist, %userprofile%\Documents\Arduino\libraries\pubsubclient\src\PubSubClient.h gibt es bei mir nicht... Das Verzeichnis libraries schon, rest fehlt...

Das kann doch nicht so schwer sein, ihr habt das doch auch alle hinbekommen?
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 02 Februar 2018, 00:16:29
Ich hab zum Testen mal Tasmota auf einen ESP-01 aus der Bastelkiste geflasht.
Habe auch mit PlatformIO kompiliert und geflasht.
Das ist am einfachsten.

Hab zwar keinen Virtuellen Raspi,
aber im Ferienhau einen 2. der über VPN verbunden ist.
Und selbst dorthin klappt die Verbindung zum Broker einwandfrei.

Wenn die Verbindung zum Broker bei Dir klappt hast Du hier schon mal ein Device für einen Schalter:

define WZ_Stehlampe MQTT_DEVICE
attr WZ_Stehlampe IODev MyBroker
attr WZ_Stehlampe devStateIcon OFF:li_wht_off ON:li_wht_on
attr WZ_Stehlampe icon light_floor_lamp@#FF6D00
attr WZ_Stehlampe publishSet on off cmnd/SonoffWZ/POWER1
attr WZ_Stehlampe stateFormat POWER
attr WZ_Stehlampe subscribeReading_POWER stat/SonoffWZ/POWER1
attr WZ_Stehlampe webCmd on:off
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 02 Februar 2018, 00:31:56
So weit bin ich ja gar nicht  :( Aber schon mal gut, dass ich Deine FHEM Einstellungen habe, spare ich mir das später noch zu recherchieren.

Also ich habe es jetzt noch mal mit platformio probiert, habe gefunden wo ich meinen keepalive eintragen kann... merkwürdigerweise kann ich jetzt nicht mehr mit atom/platformio flashen, aber konnte die firmware über die Weboberfläche hochladen.

Gleiche Symptome.

Keine Verbindung zu meinem Broker, ErrorCode -4 (Keepalive). Aber mein Broker funktioniert.
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 02 Februar 2018, 09:35:31
mqttfx.org (http://www.mqttfx.org/)
Auf irgend einen Rechner installieren und testen, ob Du damit eine Verbindung zu Deinem Broker bekommst!

Hab mir jetzt auf VMware Player mal ein Raspi aufgesetzt und Mosquitto draufgeballert.
Hat alles auf Anhieb funktioniert.

Noch eine ganz dumme Frage: Dein Sonoff und Dein Broker laufen im selben Subnetz?

Zum kompilen mit der Arduino IDE die Verzeichnisse Sonoff und lib ins Sketchbook-Verzeichnis kopieren und lib nach Libraries umbenennen.
Dann sollte das funktionieren.

Auf dem Bild noch die mit MQTTfx belauscht Kommunikation zwischen dem SonoffWZ und dem "virtuellen" Broker
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 02 Februar 2018, 09:54:56
Wow, danke für Deine Mühe!

gleiches Subnetz, broker 192.168.5.110 und der sonof die feste ip 192.168.5.201

mxtt.fx Test ist aucvh erfolgreich, siehe Bilder

Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 02 Februar 2018, 09:58:20
Ich habe hier noch einen zweiten Sonoff T1 R2 EU 2-Gang, vieleicht sollte ich bei dem mal von vorne anfangen... Allerdings auch mit PlatformIO, ich hatte ja den Keepalive Eintrag gefunden.

Hmmm...
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 02 Februar 2018, 16:48:10
Im Moment fällt mir nur noch ein mal mit DHCP zu testen.
Da Du ja geschrieben hast feste IP, Gateway und DNS hast ja denke ich dann auch angepasst.
Wenn Du da was änderst musst Du auch den CFG_HOLDER hoch setzen, damit die Änderung greift!

#define CFG_HOLDER             0x20180129        // [Reset 1] Change this value to load following default configuration parameters
#define SAVE_DATA              1                 // [SaveData] Save changed parameters to Flash (0 = disable, 1 - 3600 seconds)
#define SAVE_STATE             1                 // [SetOption0] Save changed power state to Flash (0 = disable, 1 = enable)

// -- Wifi ----------------------------------------
#define WIFI_IP_ADDRESS        "192.168.115.205"         // [IpAddress1] Set to 0.0.0.0 for using DHCP or IP address
#define WIFI_GATEWAY           "192.168.115.1"   // [IpAddress2] If not using DHCP set Gateway IP address
#define WIFI_SUBNETMASK        "255.255.255.0"   // [IpAddress3] If not using DHCP set Network mask
#define WIFI_DNS               "192.168.115.1"    // [IpAddress4] If not using DHCP set DNS IP address (might be equal to WIFI_GATEWAY)
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 02 Februar 2018, 17:54:43
Ja, da könnte ich auch noch mal schauen. was trage ich beim CFG_HOLDER ein? Da steht nur so ne lange Zahl ;-)

Und ich fahre einen anderen DNS als das Gateway, das ist bei mir getrennt. Gggf. Pfeiff ich da mal drauf und nehme das Gateway auch als DNS. Aber jetzt muss die Baustelle bis Sonntag abend ruhen, familiäre Verpflichtungen  ;)
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 02 Februar 2018, 18:40:05
CFG_HOLDER ist eigentlich nur das Datum rückwärts.
Muss nur ein Tag höher sein, als das was im Sonoff steht,
damit die neue Konfig genommen wird.
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 13 Februar 2018, 21:35:52
Also ich hatte das etwas aus den Augen verloren, weil ich mich erst mal um meine Heizung gekümmert habe. In dem Zuge bin ich dann von einer Hyper-V VM dann auch mit FHEM und dem Broker auf einen Raspi umgezogen.

Was soll ich sagen, es läuft, der Broker empfängt!

Leider ist natürlich jetzt die Ursache für das Nichtfunktionieren unter Lubuntu / Ubuntu unbekannt, bisschen schade, hätte vieleicht anderen geholfen.

Aber vielen Dank noch mal für die Mühe!

So, jetzt ist die Einbindung in FHEM dran, wenn das scheitert, geht's hier weiter  ;)
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 13 Februar 2018, 22:31:54
War ja klar, lüppt nicht ganz... Bekomme den Zustand nicht in FHEM angezeigt.

Also folgendermaßen habe ich das Teil eingebunden:

define SonoffWZ1 MQTT_DEVICE
attr SonoffWZ1 IODev mosquitto
attr SonoffWZ1 alias SonoffWZ Mitte
attr SonoffWZ1 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr SonoffWZ1 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr SonoffWZ1 icon light_ceiling
attr SonoffWZ1 publishSet ON OFF cmnd/sonoffWZ/POWER1
attr SonoffWZ1 stateFormat Power
attr SonoffWZ1 subscribeReading_Power tele/sonoffWZ/POWER1
attr SonoffWZ1 subscribeReading_state cmnd/sonoffWZ/POWER1
attr SonoffWZ1 webCmd Ein:Aus
define SonoffWZ2 MQTT_DEVICE
attr SonoffWZ2 IODev mosquitto
attr SonoffWZ2 alias SonoffWZ Rund
attr SonoffWZ2 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr SonoffWZ2 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr SonoffWZ2 icon light_pendant_light_round
attr SonoffWZ2 publishSet ON OFF cmnd/sonoffWZ/POWER2
attr SonoffWZ2 stateFormat Power
attr SonoffWZ2 subscribeReading_Power tele/sonoffWZ/POWER2
attr SonoffWZ2 subscribeReading_state cmnd/sonoffWZ/POWER2
attr SonoffWZ2 webCmd Ein:Aus

Schalten aus FHEM geht, dann bekomme ich auch korrekte Status Readings. Schalte ich am Sonoff selbst, tut sich in FHEM nix. Aber der Broker kann es empfangen... DevStateIcon geht auch nicht. Code ist aus dem Wiki übernommen.

siehe Bilder.
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: P.A.Trick am 13 Februar 2018, 23:02:51
War ja klar, lüppt nicht ganz... Bekomme den Zustand nicht in FHEM angezeigt.

Also folgendermaßen habe ich das Teil eingebunden:

define SonoffWZ1 MQTT_DEVICE
attr SonoffWZ1 IODev mosquitto
attr SonoffWZ1 alias SonoffWZ Mitte
attr SonoffWZ1 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr SonoffWZ1 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr SonoffWZ1 icon light_ceiling
attr SonoffWZ1 publishSet ON OFF cmnd/sonoffWZ/POWER1
attr SonoffWZ1 stateFormat Power
attr SonoffWZ1 subscribeReading_Power tele/sonoffWZ/POWER1
attr SonoffWZ1 subscribeReading_state cmnd/sonoffWZ/POWER1
attr SonoffWZ1 webCmd Ein:Aus
define SonoffWZ2 MQTT_DEVICE
attr SonoffWZ2 IODev mosquitto
attr SonoffWZ2 alias SonoffWZ Rund
attr SonoffWZ2 devStateIcon on:rc_GREEN:off off:rc_RED:on
attr SonoffWZ2 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr SonoffWZ2 icon light_pendant_light_round
attr SonoffWZ2 publishSet ON OFF cmnd/sonoffWZ/POWER2
attr SonoffWZ2 stateFormat Power
attr SonoffWZ2 subscribeReading_Power tele/sonoffWZ/POWER2
attr SonoffWZ2 subscribeReading_state cmnd/sonoffWZ/POWER2
attr SonoffWZ2 webCmd Ein:Aus

Schalten aus FHEM geht, dann bekomme ich auch korrekte Status Readings. Schalte ich am Sonoff selbst, tut sich in FHEM nix. Aber der Broker kann es empfangen... DevStateIcon geht auch nicht. Code ist aus dem Wiki übernommen.

siehe Bilder.

Hm ich habe das gleiche Problem mit der Sonoff-Tasmota 5.12.0a by Theo Arends Version. Ich hatte davor eine frühere Version die einwandfrei funktionierte.
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 13 Februar 2018, 23:24:03
Ich habe die 5.11 drauf, falls das weiterhilft
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: Gerold am 14 Februar 2018, 01:27:12
vielleicht hilft es,  "tele/..." durch "stat/...." zu ersetzen.

Bei meiner Sonoff ch4 pro sieht das so aus:

defmod GastHeizung MQTT_DEVICE
attr GastHeizung IODev mqtt
attr GastHeizung devStateIcon ON:rc_GREEN:OFF OFF:rc_RED:ON
attr GastHeizung publishSet ON OFF dach/heizung/sonoff_ch4pro_01/cmnd/POWER2
attr GastHeizung retain 1
attr GastHeizung room Gästezimmer,Heizung,MQTT
attr GastHeizung stateFormat {ReadingsVal($name,"presence","") eq "Offline" ? "Offline" : ReadingsVal($name,"state","")}
attr GastHeizung subscribeReading_power dach/heizung/sonoff_ch4pro_01/stat/POWER2
attr GastHeizung subscribeReading_precense dach/heizung/sonoff_ch4pro_01/tele/LWT
attr GastHeizung subscribeReading_state dach/heizung/sonoff_ch4pro_01/cmnd/POWER2
attr GastHeizung webCmd ON:OFF
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: Manylion am 14 Februar 2018, 06:50:55
Ich setze einen Sonoff Basic und einen Sonoff Dual ein.
MQTT broker läuft auf dem gleichen Raspi wie auch Fhem.

So klappts bei mir, auch mit der Rückmeldung, wenn ich am Sonoff schalte:
define Mosquitto MQTT localhost:1883

define Sonoff_Basic MQTT_DEVICE
attr Sonoff_Basic IODev Mosquitto
attr Sonoff_Basic eventMap ON:on OFF:off
attr Sonoff_Basic publishSet on off toggle Sonoff_Basic/cmnd/POWER
attr Sonoff_Basic stateFormat state
attr Sonoff_Basic subscribeReading_state Sonoff_Basic/stat/POWER
attr Sonoff_Basic webCmd on:off:toggle

define Sonoff_Dual_Ch1 MQTT_DEVICE
attr Sonoff_Dual_Ch1 IODev Mosquitto
attr Sonoff_Dual_Ch1 eventMap ON:on OFF:off
attr Sonoff_Dual_Ch1 publishSet on off toggle Sonoff_Dual/cmnd/POWER
attr Sonoff_Dual_Ch1 stateFormat state
attr Sonoff_Dual_Ch1 subscribeReading_state Sonoff_Dual/stat/POWER1
attr Sonoff_Dual_Ch1 webCmd on:off:toggle

define Sonoff_Dual_Ch2 MQTT_DEVICE
attr Sonoff_Dual_Ch2 IODev Mosquitto
attr Sonoff_Dual_Ch2 eventMap ON:on OFF:off
attr Sonoff_Dual_Ch2 publishSet on off toggle Sonoff_Dual/cmnd/POWER2
attr Sonoff_Dual_Ch2 stateFormat state
attr Sonoff_Dual_Ch2 subscribeReading_Power tele/Sonoff_Dual/POWER2
attr Sonoff_Dual_Ch2 subscribeReading_state Sonoff_Dual/stat/POWER2
attr Sonoff_Dual_Ch2 webCmd on:off:toggle

Hoffe, das hilft Dir weiter.

Gruß
Christian
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 14 Februar 2018, 09:54:04
@Manylion Du hast keine Standardeinstellung von Tasmota 5.11.x im Sonoff!
Mit der 5.11 funktioniert es wie im Post #8 in diesem Fred beschrieben.
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 14 Februar 2018, 10:47:36
Yay, das war's!

stat anstelle von tele... ist dann in der wiki falsch.

und mein devstateicon habe ich nun auch am funktionieren dank post #8...

Danke Euch!
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: pink99panther am 14 Februar 2018, 11:04:56
Die Beschreibung im WIKI ist wahrscheinlich nicht mehr ganz aktuell.
Der "Vater" von Tasmota hat da in der Vergangenheit öfter Änderungen vorgenommen.
Um sicher zu gehen am besten in der Konsole nachschauen.

Aber es freut mich, wenn ich Dir helfen konnte!
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 14 Februar 2018, 14:01:32
Der olle Holländer  ;)

Nuja, ich werde keine Systemupdates fahren, so lange alles so funktioniert wie es soll. Sowohl bei Tasmota als auch bei ESPEasy. Immerhin installiere ich hier für die nächsten 10-20 Jahre (hoffe ich), da kann ich ja nicht alle zwei Wochen updates fahren...
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: P.A.Trick am 14 Februar 2018, 19:20:04
Ich habe mein Fehler auch gefunden. Es lag ebenfalls an dem subcribe Reading in Kombination mit dem JSON2Reading Notify.
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: luke666s am 19 Februar 2018, 13:53:38
@MAC66666 nur nochmal für dummys... kannst du grad mal deine config zeilen hier posten? irgendwie will das bei mir nicht :)
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: MAC66666 am 19 Februar 2018, 14:24:17
im MQTT kommt was an?

Also ich habe folgendes definiert:

defmod SonoffWZ2 MQTT_DEVICE
attr SonoffWZ2 userattr room_map structexclude
attr SonoffWZ2 IODev mosquitto
attr SonoffWZ2 alias SonoffWZ Mitte
attr SonoffWZ2 devStateIcon OFF:li_wht_off ON:li_wht_on
attr SonoffWZ2 eventMap ON:on OFF:off ON:Ein OFF:Aus
attr SonoffWZ2 icon light_ceiling
attr SonoffWZ2 publishSet ON OFF cmnd/sonoffWZ/POWER2
attr SonoffWZ2 room 01-Wohnzimmer
attr SonoffWZ2 stateFormat Power
attr SonoffWZ2 subscribeReading_Power stat/sonoffWZ/POWER2
attr SonoffWZ2 subscribeReading_state cmnd/sonoffWZ/POWER2
attr SonoffWZ2 webCmd Ein:Aus

Für den anderen Taster dann entsprechende anderer Name und POWER1
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: luke666s am 19 Februar 2018, 15:16:21
Ja.. im MQTT kommt was an ich kann auch schalten.. aber: der Status im FHEM passt nicht... das ist mein Problem...  ich resette das ding gleich nochmal und lege es dann nochmal neu an...
Titel: Antw:Sonoff MQTT Einstellungen Tasmota
Beitrag von: luke666s am 19 Februar 2018, 15:45:48
aaaargh... das 3te mal genau gleich angelegt und jetzt geht es... NULL PLAN warum... vorher hatte mir beim schalten von kanal1 auch immer den statusanzeige von kanal2 in fhem geändert.. jetzt klappt es... und ich bin ruhig...