FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: dirk_69 am 15 August 2025, 15:07:24

Titel: MQTT2_DEVICE verliert Verbindung
Beitrag von: dirk_69 am 15 August 2025, 15:07:24
Hallo zusammen,
ich habe vor einiger Zeit von MQTT auf MQTT2 umgestellt und bin bis auf einige kleine fehlende Features (z.B. QOS) ziemlich zufrieden.
Nur verliert gelegentlich ein MQTT2_DEVICE seine Verbindung zum Rest der Welt. Das ist inzwichen 4mal vorgekommen.(sorry für die Leienhaften Aussagen ... die Zusammenhänge innerhalb der MQTT2 Welt sind mir noch etwas unklar)

Meine Umgebung:
MQTT2_DEVICE -> MQTT2_Client -> Mosquitto-Lokal

MQTT2_DEVICE(s)
- wurden alle automatisch angelegt
- betroffen sind sowohl fast unferänderte als auch umbenannte Geräte (um bestehende MQTT-Clients zu ersetzen)
- es kommen einfach keine Daten mehr am MQTT2_DEVICE an
- andere MQTT2_DEVICEs funktionieren weiterhin
- IODev ist "meinMQTT2Client"
- Gerätelisting ist angehängt

MQTT2_Client
- ist mit dem lokal installierten Mosquitto verbunden
- wird "Show MQTT traffic" aktiviert, ist eigehender Traffic für das "tote" MQTT2_DEVICE zu sehen
- Gerätelisting ist angehängt

Was wurde unternommen:
- Forum-Suche brachte nur wenige Treffer (z.B. https://forum.fhem.de/index.php?topic=140700.msg1333158#msg1333158 "CID muss weg aus der readingList!" ... ist bei mir nicht drin würde ich sagen)
- FHEM Neustart -> kein Erfolg
- IODev = meinMQTT2Client als Attribut gesetzt & FHEM Neustart -> kein Erfolg
- mit Verbose = 5 auf beiden Geräten habe ich nichts gefunden
- RAW-Konfig Sichern -> Gerät löschen -> wird automatisch neu angelegt -> RAW-Konfig wieder einspielen -> ERFOLG

Gern würde ich das Zusammenspiel von MQTT2_Client und MQTT2_Device verstehen und eine Lösung finden, ein "verlorenes" Gerät wieder neu zu "binden" ohne es zu löschen.
Ich hoffe hier kann mir jemand helfen...
Danke Dirk

GeräteListings:
meinMQTT2Client
Internals:
   BUF        0�␂!fhem/sensors/WeMos_S17/tele/STATE{"Time":"2025-08-15T09:54:49","Uptime":"50T00:48:14","UptimeSec":4322894,"Heap":20,"SleepMode":"Dynamic","Sleep":25,"LoadAvg":39,"MqttCount":11,"POWER":"OFF","Wifi":{"AP":1,"SSId":"STV","BSSId":"00:1A:8C:9F:44:45","Channel":1,"Mode":"11n","RSSI":74,"Signal":-63,"LinkCount":1,"Downtime":"0T00:00:04"}}0�␁"fhem/sensors/WeMos_S17/tele/SENSOR{"Time":"2025-08-15T09:54:49","DS18B20":{"Id":"0316A18AECFF","Temperature":27.2},"TempUnit":"C"}0\&fhem/sensors/tasmota_ORBIS/tele/SENSOR{"Time":"2025-08-15T09:54:50","SML":{"curr_w":-107}}0\&fhem/sensors/tasmota_ORBIS/tele/SENSOR{"Time":"2025-08-15T09:54:51","SML":{"curr_w":-107}}0\&fhem/sensors/tasmota_ORBIS/tele/SENSOR{"Time":"2025-08-15T09:54:53","SML":{"curr_w":-103}}
   Clients    :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
   ClientsKeepOrder 1
   DEF        127.0.0.1:1883
   DeviceName 127.0.0.1:1883
   FD         195
   FUUID      60a41e64-f33f-cdbc-e86c-44848fb0aacec7e9
   NAME       meinMQTT2Client
   NR         359
   PARTIAL   
   STATE      opened
   TYPE       MQTT2_CLIENT
   WBCallback
   clientId   meinMQTT2Client
   eventCount 369
   lastMsgTime 1755244495.24859
   nextOpenDelay 10
   nrConnects 91
   .attraggr:
   .attrminint:
   .clientArray:
     MQTT2_DEVICE
   MatchList:
     1:MQTT2_DEVICE ^.
     2:MQTT_GENERIC_BRIDGE ^.
   READINGS:
     2025-08-15 09:53:28   lastPublish     fhem/sensors/tasmota_ORBIS/tmp/watt:-106
     2025-08-15 09:41:22   state           opened
Attributes:
   autocreate complex

new_Tasmota_Refoss_POW10
Internals:
   CID        new_Tasmota_Refoss_POW10
   DEF        new_Tasmota_Refoss_POW10
   FUUID      6807f845-f33f-cdbc-10ee-d5163ce60cee5f99
   IODev      meinMQTT2Client
   NAME       MQTT2_new_Tasmota_Refoss_POW10
   NR         673
   STATE      aktuell: 0.0 W <br/>Tag: 0.00 Kw/h<br/>Gestern: 0.000 Kw/h
   TYPE       MQTT2_DEVICE
   .DT:
     DEVICETOPIC MQTT2_new_Tasmota_Refoss_POW10
   .attreocr:
     ENERGY_ApparentPower:5
     .*
   .attreour:
     Button1_Action
   .attrminint:
     ENERGY_ApparentPower:600
     ENERGY_.*:3600
   .userReadings:
     HASH(0x55a25463a2a0)
     HASH(0x55a254639eb0)
     HASH(0x55a254639ef8)
     HASH(0x55a2546991d0)
     HASH(0x55a2545eb3a8)
     HASH(0x55a2545eb318)
   JSONMAP:
     Channel_0  0
     Channel_1  0
     Channel_2  0
     Channel_3  0
     Channel_4  0
     Channel_5  0
     Color      0
     Dimmer     0
     HSBColor   0
     POWER1     0
     POWER2     0
     POWER3     0
     POWER4     0
   READINGS:
     2025-06-11 15:59:34   ANALOG_Temperature 17.7
     2025-04-23 21:52:25   BASE            1
     2025-06-10 21:10:38   BootCount       13
     2025-05-30 14:07:49   Button1_Action  SINGLE
     2025-04-23 21:52:25   DeviceName      Tasmota_Refoss_POW10
     2025-06-11 15:59:34   ENERGY_ApparentPower 0
     2025-06-11 15:59:34   ENERGY_Current  0.000
     2025-06-11 15:59:34   ENERGY_Factor   0.00
     2025-06-11 15:59:34   ENERGY_Period   0
     2025-06-11 15:59:34   ENERGY_Power    0
     2025-06-11 15:59:34   ENERGY_ReactivePower 0
     2025-06-11 15:59:34   ENERGY_Today    0.000
     2025-06-11 15:59:34   ENERGY_Total    3.488
     2025-06-11 15:59:34   ENERGY_TotalStartTime 2023-08-31T20:38:10
     2025-06-11 15:59:34   ENERGY_Voltage  0
     2025-06-11 15:59:34   ENERGY_Yesterday 0.000
     2025-04-23 21:52:25   Emulation       0
     2025-04-23 21:52:25   FLAG            0
     2025-06-10 21:10:38   FallbackTopic   cmnd/DVES_547829_fb/
     2025-04-23 21:52:25   FriendlyName1   Tasmota_Refoss_POW10
     2025-04-23 21:52:25   FriendlyName2   
     2025-04-23 21:52:25   FriendlyName3   
     2025-04-23 21:52:25   FriendlyName4   
     2025-04-23 21:52:25   FriendlyName5   
     2025-04-23 21:52:25   FriendlyName6   
     2025-04-23 21:52:25   FriendlyName7   
     2025-04-23 21:52:25   FriendlyName8   
     2025-04-23 21:52:25   GPIO_1          0
     2025-04-23 21:52:25   GPIO_10         224
     2025-04-23 21:52:25   GPIO_11         0
     2025-04-23 21:52:25   GPIO_12         0
     2025-04-23 21:52:25   GPIO_13         0
     2025-04-23 21:52:25   GPIO_14         4736
     2025-04-23 21:52:25   GPIO_2          0
     2025-04-23 21:52:25   GPIO_3          0
     2025-04-23 21:52:25   GPIO_4          3104
     2025-04-23 21:52:25   GPIO_5          1
     2025-04-23 21:52:25   GPIO_6          32
     2025-04-23 21:52:25   GPIO_7          0
     2025-04-23 21:52:25   GPIO_8          0
     2025-04-23 21:52:25   GPIO_9          1
     2025-06-10 21:10:38   GroupTopic      fhem/sensors/tasmotas/cmnd/
     2025-06-11 15:59:34   Heap            23
     2025-06-10 21:10:38   Hostname        Tasmota-Refoss-POW10-6185
     2025-06-10 21:10:38   INFO1_Info1_FallbackTopic cmnd/DVES_547829_fb/
     2025-06-10 21:10:38   INFO1_Info1_GroupTopic fhem/sensors/tasmotas/cmnd/
     2025-06-10 21:10:38   INFO1_Info1_Module Refoss-P11
     2025-06-10 21:10:38   INFO1_Info1_Version 14.6.0(release-tasmota-4M)
     2025-06-10 21:10:38   INFO2_Info2_Hostname Tasmota-Refoss-POW10-6185
     2025-06-10 21:10:38   INFO2_Info2_IPAddress 192.168.0.152
     2025-06-10 21:10:38   INFO2_Info2_WebServerMode Admin
     2025-06-10 21:10:38   INFO3_Info3_BootCount 13
     2025-06-10 21:10:38   INFO3_Info3_RestartReason Power On
     2025-08-14 17:59:26   IODev           meinMQTT2Client
     2025-06-10 21:10:38   IPAddress       192.168.0.152
     2025-07-13 21:21:07   LWT             Offline
     2025-06-11 15:59:34   LoadAvg         19
     2025-06-10 21:10:38   Module          Refoss-P11
     2025-06-11 15:59:34   MqttCount       23
     2025-04-23 21:52:25   NAME            Refoss-P11
     2025-06-11 14:10:52   POWER           
     2025-05-17 14:31:18   POWER1          0
     2025-06-11 15:22:34   Power           0
     2025-06-10 21:10:38   RestartReason   Power On
     2025-04-23 21:52:25   SetOption128    off
     2025-04-23 21:52:25   SetOption3      on
     2025-06-11 15:59:34   Sleep           50
     2025-06-11 15:59:34   SleepMode       Dynamic
     2025-06-11 15:59:34   TempUnit        C
     2025-06-11 15:59:34   Time            2025-06-11T15:59:33
     2025-04-26 22:23:07   Timer10_Action  0
     ...
     2025-04-26 22:23:07   Timer9_Window   0
     2025-04-26 22:23:07   Timers          on
     2025-06-11 15:22:34   Today           0.000
     2025-06-11 15:22:34   Total           3.488
     2025-06-11 15:59:34   Uptime          0T18:49:14
     2025-06-11 15:59:34   UptimeSec       ???
     2025-06-10 21:10:38   Version         14.6.0(release-tasmota-4M)
     2025-04-23 21:52:25   WebPassword     ****
     2025-06-10 21:10:38   WebServerMode   Admin
     2025-06-11 15:59:34   Wifi_AP         2
     2025-06-11 15:59:34   Wifi_BSSId      06:1A:8C:D0:E7:61
     2025-06-11 15:59:34   Wifi_Channel    1
     2025-06-11 15:59:34   Wifi_Downtime   0T00:00:17
     2025-06-11 15:59:34   Wifi_LinkCount  1
     2025-06-11 15:59:34   Wifi_Mode       11n
     2025-06-11 15:59:34   Wifi_RSSI       46
     2025-06-11 15:59:34   Wifi_SSId       STV
     2025-06-11 15:59:34   Wifi_Signal     -77
     2025-06-11 15:22:34   Yesterday       0.000
     2025-07-18 10:26:54   activ           inactive
     2025-08-15 09:53:22   associatedWith  mein_MQTT2_DEVICE_2
     2025-07-18 10:26:54   state           inactive
     2025-05-30 14:07:49   tmp             SINGLE
     2025-06-11 15:59:34   uptime          67754
Attributes:
   DbLogInclude POWER,POWER1,Power,Yesterday,Today,uptime,Total
   IODev      meinMQTT2Client
   alias      Refoss_POW10 - PflanzenAufzucht
   event-min-interval ENERGY_ApparentPower:600,ENERGY_.*:3600
   event-on-change-reading ENERGY_ApparentPower:5,.*
   event-on-update-reading Button1_Action
   icon       measure_power
   jsonMap    POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 Channel_5:0 HSBColor:0 Color:0
   model      tasmota_basic_state_power1
   readingList fhem/sensors/Tasmota_Refoss_POW10/tele/LWT:.* LWT
fhem/sensors/Tasmota_Refoss_POW10/tele/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/tele/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/tele/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ?  json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/tele/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/stat/POWER1:.* state
fhem/sensors/Tasmota_Refoss_POW10/stat/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/cmnd/POWER1:.* POWER1
fhem/sensors/Tasmota_Refoss_POW10/cmnd/POWER:.* POWER
fhem/sensors/Tasmota_Refoss_POW10/stat/POWER2:.* POWER2
fhem/sensors/Tasmota_Refoss_POW10/stat/POWER3:.* POWER3
fhem/sensors/Tasmota_Refoss_POW10/tele/INFO1:.* { json2nameValue($EVENT, 'INFO1_', $JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/tele/INFO2:.* { json2nameValue($EVENT, 'INFO2_', $JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/tele/INFO3:.* { json2nameValue($EVENT, 'INFO3_', $JSONMAP) }
fhem/sensors/Tasmota_Refoss_POW10/stat/UPGRADE:.* { json2nameValue($EVENT, 'UPGRADE_', $JSONMAP) }
   readingsWatcher 3600,???,UptimeSec
   room       6.2_Strom,8.2_ESP,MQTT2_DEVICE
   setList    off:noArg    fhem/sensors/Tasmota_Refoss_POW10/cmnd/POWER1 0
on:noArg     fhem/sensors/Tasmota_Refoss_POW10/cmnd/POWER1 1
toggle:noArg fhem/sensors/Tasmota_Refoss_POW10/cmnd/POWER1 2

   setStateList on off toggle
   stateFormat {sprintf("aktuell: %.1f W <br/>Tag: %.2f Kw/h<br/>Gestern: %.3f Kw/h", ReadingsVal($name,"ENERGY_Power",undef), ReadingsVal($name,"ENERGY_Today",undef), ReadingsVal($name,"ENERGY_Yesterday",undef))}
   userReadings tmp:Button1_Action.* {
  if(ReadingsVal("$NAME","Button1_action",0) eq "xxxDOUBLE" ) { fhem("set $NAME on-for-timer 3600") ; return "DOUBLE"} ;
  if(ReadingsVal("$NAME","Button1_Action",0) eq "SINGLE" ) { return "SINGLE"} ;
  if(ReadingsVal("$NAME","Button1_Action",0) eq "DOUBLE" ) { return "DOUBLE"} ;
  if(ReadingsVal("$NAME","Button1_Action",0) eq "TRIPLE" ) { return "TRIPLE"} ;
  return "keine Aktion erkannt";
},

uptime:UptimeSec:.* {ReadingsVal($NAME,"UptimeSec",0)},
Power:ENERGY_Power:.* {ReadingsVal($NAME,"ENERGY_Power",0)},
Today:ENERGY_Today:.* {ReadingsVal($NAME,"ENERGY_Today",0)},
Yesterday:ENERGY_Yesterday:.* {ReadingsVal($NAME,"ENERGY_Yesterday",0)},
Total:ENERGY_Total:.* {ReadingsVal($NAME,"ENERGY_Total",0)},

list TYPE=autocreate
Internals:
   FUUID      5c44d122-f33f-ed2c-aadb-6087bfce32d48acd
   NAME       autocreate
   NOTIFYDEV  global
   NR         40
   NTFY_ORDER 50-autocreate
   STATE      active
   TYPE       autocreate
   received:
     SD_UT:
        TC6861 97F_2:
         1755244131.03334 1
         1755244167.54018 1
Attributes:
   disable    0
   filelog    ./log/%NAME-%Y.log
   room       9.4_System -> Settings
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: Beta-User am 15 August 2025, 16:26:54
BUF am IO sieht seltsam aus.

cmnd-Topics sollte man m.E. nicht abonnieren (Schleifengefahr!).

Ansonsten sollte das eigentlich klappen, wenn tatsächlich passende Topics kommen. Da das template anscheinend andere Topics (mit new_) gesehen hat, kann es sein, dass da mal was geändert wurde.
Unklar ist auch, ob mosquitto irgendwelche Alt-Daten gepuffert hatte (retain). Die kommen dann einmalig bei jeder neuen Verbindung....
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: rudolfkoenig am 15 August 2025, 17:28:35
ZitatBUF am IO sieht seltsam aus.
Finde ich auch.

Wenn bei Copy&Paste nichts schiefgegangen ist, dann kamen laut BUF Zeile zwei MQTT Publish Nachrichten, mit jeweils unerlaubter Nachrichtenlaenge (bei den Bytes 2-5 ist das oberste Bit jeweils gesetzt).
Eine kaputte Laenge sollte laut Programmcode zu einem Abbruch der Verbindung zu mosquitto fuehren, wobei BUF entfernt wird.
Damit haette man BUF aber uns nicht zeigen koennen. Doch ein Kopierfehler?


Ich wuerde testweise statt (mosquitto+MQTT2_CLIENT) den MQTT2_Server aktivieren.
Eine Fehlerquelle weniger.
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: dirk_69 am 16 August 2025, 10:39:04
Hallo,
Danke für eure Aufmerksamkeit.
Ich halte eine Copy&paste Fehler für unwahrscheinlich aber nicht ausgeschlossen, da der ganze Block incl. "Internals" als ganzes kopiert wurde.
Ich zwischenzeitlich war das Internal "BUF" mal ganz weg, jetzt ist es wieder da, aber leer.
Aktuell ist/bleibt es leer. Trotzdem funktioniert das Device noch immer nicht.

im Event-log erhalte ich Einträge, wie für andere (funktionierende) Geräte auch:
2025.08.16 10:24:22 4: meinMQTT2Client received PUBLISH
2025.08.16 10:24:22 5: meinMQTT2Client: received PUBLISH (0),fhem/sensors/Tasmota_Refoss_POW10/tele/STATE{"Time":"2025-08-16T10:24:22","Uptime":"6T01:32:11","UptimeSec":523931,"Heap":23,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"POWER1":"off","Wifi":{"AP":2,"SSId":"STV","BSSId":"06:1A:8C:D0:E7:61","Channel":1,"Mode":"11n","RSSI":82,"Signal":-59,"LinkCount":1,"Downtime":"0T00:00:04"}}
2025.08.16 10:24:22 5: meinMQTT2Client: dispatch autocreate=complex\000meinMQTT2Client\000fhem/sensors/Tasmota_Refoss_POW10/tele/STATE\000{"Time":"2025-08-16T10:24:22","Uptime":"6T01:32:11","UptimeSec":523931,"Heap":23,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"POWER1":"off","Wifi":{"AP":2,"SSId":"STV","BSSId":"06:1A:8C:D0:E7:61","Channel":1,"Mode":"11n","RSSI":82,"Signal":-59,"LinkCount":1,"Downtime":"0T00:00:04"}}
2025.08.16 10:24:22 4: meinMQTT2Client received PUBLISH
2025.08.16 10:24:22 5: meinMQTT2Client: received PUBLISH (0)-fhem/sensors/Tasmota_Refoss_POW10/tele/SENSOR{"Time":"2025-08-16T10:24:22","ANALOG":{"Temperature":21.7},"ENERGY":{"TotalStartTime":"2023-08-31T20:38:10","Total":3.488,"Yesterday":0.000,"Today":0.000,"Period":0,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":0,"Current":0.000},"TempUnit":"C"}
2025.08.16 10:24:22 5: meinMQTT2Client: dispatch autocreate=complex\000meinMQTT2Client\000fhem/sensors/Tasmota_Refoss_POW10/tele/SENSOR\000{"Time":"2025-08-16T10:24:22","ANALOG":{"Temperature":21.7},"ENERGY":{"TotalStartTime":"2023-08-31T20:38:10","Total":3.488,"Yesterday":0.000,"Today":0.000,"Period":0,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":0,"Current":0.000},"TempUnit":"C"}
2025.08.16 10:24:22 4: meinMQTT2Client received PUBLISH
2025.08.16 10:24:22 5: meinMQTT2Client: received PUBLISH (0)&fhem/sensors/tasmota_ORBIS/tele/SENSOR{"Time":"2025-08-16T10:24:22","SML":{"curr_w":335}}
2025.08.16 10:24:22 5: meinMQTT2Client: dispatch autocreate=complex\000meinMQTT2Client\000fhem/sensors/tasmota_ORBIS/tele/SENSOR\000{"Time":"2025-08-16T10:24:22","SML":{"curr_w":335}}
2025.08.16 10:24:24 5: meinMQTT2Client: sending PINGREQ (192)(0)
2025.08.16 10:24:24 4: meinMQTT2Client received PINGRESP
2025.08.16 10:24:24 5: meinMQTT2Client: received PINGRESP
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: TomLee am 16 August 2025, 13:25:51
Hallo,

ZitatIch wuerde testweise statt (mosquitto+MQTT2_CLIENT) den MQTT2_Server aktivieren.
Eine Fehlerquelle weniger.


Verhält sich mit Verwendung des MQTT2_SERVER gleich?

Gruß Thomas

Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: rudolfkoenig am 16 August 2025, 13:51:59
Zitatim Event-log erhalte ich Einträge, wie für andere (funktionierende) Geräte auch:
Werden in diesem Fall die Readings fuer new_Tasmota_Refoss_POW10 aktualisiert?
Wenn nein, dann funktioniert die Verbindung zwischen FHEM und mosquitto, und das Problem ist irgendwo zwischen MQTT2_CLIENT und MQTT2_DEVICE zu suchen.


Zitatsudo systemctl stop mosquitto
define <name> MQTT2_SERVER 1883
ggf. Anmeldedaten anpassen (im Pow) oder am Server konfigurieren.
Damit das Senden (von FHEM Richtung Tasmota) funktioniert, sollte man zusaetzlich
- entweder delete meinMQTT2Client
- oder attr meinMQTT2Client disable 1; attr new_Tasmota_Refoss_POW10 IODev <MQTT2_SERVER Instanz>
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: dirk_69 am 16 August 2025, 19:01:51
Zitat von: rudolfkoenig am 16 August 2025, 13:51:59Wenn nein, dann funktioniert die Verbindung zwischen FHEM und mosquitto, und das Problem ist irgendwo zwischen MQTT2_CLIENT und MQTT2_DEVICE zu suchen.

Genau so verhält es sich. POW10 wird nicht aktualisiert.
Wie "übergibt" der MQTT2_CLIENT an das MQTT2_DEVICE denn die Daten? Wo könnte ich da nachsehen?
Was würde beim "Neuanlegen" erstellt oder miteinander verbunden werden? Denn das MQTT2_DEVICE zu löschen und automatisch wieder neu anlegen zu lassen, behob das Problem ja bisher. Und die Verbindung ging ohne jegliches Zutun mitten am Tag verloren. Ich war zu der Zeit beim Kunden und sonst kommt da keiner dran.

Inzwischen bin ich etwas skeptisch, was MQTT2 betrifft, würde also ungern einfach so eine MQTT2 Komponente gegen eine andere tauschen, ohne die Ursache zu kennen.

Auch kommunizieren andere Komponenten direkt über mosquitto-MQTT miteinander. Den abzuschalten, ist also keine einfache Option.
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: passibe am 16 August 2025, 20:30:53
Zitat von: dirk_69 am 16 August 2025, 19:01:51Den abzuschalten, ist also keine einfache Option.
Du kannst das problematische Gerät auch temporär umziehen und mosquitto und MQTT2_SERVER parallel laufen lassen. Musst den MQTT2_SERVER nur auf einen anderen Port legen und das problematische Device darauf konfigurieren.

Ansonsten benutze ich zum mitlesen des Traffics immer gerne MQTT Explorer (https://mqtt-explorer.com/). Vielleicht entdeckst du, wenn du damit mal dem Traffic lauscht, auch das Problem.

Ansonsten #2: Vielleicht lohnt es sich auch, in Tasmota unter Configuration -> Logging mal das Weblog-Level auf 4 More debug zu stellen oder das More debug-Log über Syslog zu übermitteln. Vielleicht ist da auch etwas hilfreiches drin, weshalb die Daten irgendwie falsch codiert (?) ankommen.

Ansonsten #3: Hast du mal ausprobiert:
Vielleicht ist da nämlich irgendwo im Flash etwas falsch abgespeichert.
Fürs Backup vor dem Reset und für das Wiederherstellen nach Ende des Tests eignet sich decode-config (https://github.com/tasmota/decode-config) ganz gut.
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: dirk_69 am 16 August 2025, 20:45:21
Die Server parallel laufen zu lassen, wäre eine Möglichkeit für einen Test.
Im MQTT Explorer sehe ich den Traffic des Gerätes.
Im MQTT2-Client übrigens auch ... also dort kommen die MQTT Daten schon mal an.
Ich habe die Probleme nicht nur mit Tasmota Geräten. (nur jetzt gerade mal)

Lösche ich das MQTT2-DEVICE, wird es bisher immer automatisch neu angelegt und alles ist wieder gut. Dass also vom Tasmota-Gerät etwas Fehlerhaftes kommt ... unwahrscheinlich.
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: passibe am 16 August 2025, 22:19:34
Zitat von: dirk_69 am 16 August 2025, 20:45:21Im MQTT Explorer sehe ich den Traffic des Gerätes.
Im MQTT2-Client übrigens auch ... also dort kommen die MQTT Daten schon mal an.
Ok, und da ist auch nichts komisch kodiert à la 0�␂?

Zitat von: dirk_69 am 16 August 2025, 20:45:21Ich habe die Probleme nicht nur mit Tasmota Geräten. (nur jetzt gerade mal)
Ich verstehe noch nicht so ganz, du hattest ja geschrieben:
Zitat von: dirk_69 am 15 August 2025, 15:07:24Nur verliert gelegentlich ein MQTT2_DEVICE seine Verbindung zum Rest der Welt.
und
Zitat von: dirk_69 am 15 August 2025, 15:07:24andere MQTT2_DEVICEs funktionieren weiterhin
Dachte, dass es deshalb nur um das Tasmota_Refoss_POW10-Gerät geht. Oder senden zwischendurch alle Geräte nichts? Oder immer verschiedene?

Vielleicht gibt es unter den ganzen Geräten auch eines, das "korrupte" Daten an mosquitto sendet und damit alles kaputt macht. Insofern wäre der Test mit einem parallelen MQTT2_SERVER, ggfs. auch erstmal nur für einzelne Devices, vermutlich der beste nächste Problemlösungsschritt.

Weitere Fragen:
Reagieren die Geräte im Fehlerfall, d.h., wenn sie nichts mehr senden, trotzdem noch auf Kommandos, die du übermittelst? Wenn nein, mal versucht, das Kommando nicht aus FHEM heraus, sondern z.B. über den MQTT Explorer zu senden?
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: dirk_69 am 16 August 2025, 23:00:59
Hallo passibe,
ich habe verschiedene Geräte mit MQTT angebunden.
Tasmota, ESP-Easy, selbst mit Arduino-IDE gebautes und was aus HA geschriebenes. Die ersten beiden sind am meisten vertreten und diese sind auch bereits "ausgefallen".

Im ESP-EASY habe ich ein MQTT-Ping-Pong an FHEM vorbei laufen. Die ESP's rebooten, wenn die Verbindung verloren geht. Der Ping-Pong ging noch, als die Verbindung in FHEM verloren gegangen war. Mit dem MQTT-Explorer kann ich auch weiterhin das aktuell in MQTT2 verlorene Gerät schalten.

In MQTT-Explorer sehen die Daten gut aus (und es funktioniert ja auch nach Neuanlegen des Gerätes).
Das MQTT-Log des MQTT2-Client kann ich aktuell nicht lesen. Das bleibt über VPN komplett leer.

Die 4 "Verbindungsstörungen" verteilen sich etwa über die letzten 3 Monate.
Bei den ersten 3 habe ich mit Gerät löschen und neu anlegen lassen das Problem gelöst.
 
Titel: Aw: MQTT2_DEVICE verliert Verbindung
Beitrag von: LuckyDay am 17 August 2025, 01:06:22
new_Tasmota_Refoss_POW10

     2025-07-18 10:26:54   activ           inactive
     2025-08-15 09:53:22   associatedWith  mein_MQTT2_DEVICE_2
     2025-07-18 10:26:54   state           inactive

state darf niemals inactive sein -> da das Device dann wirklich inactive ist quasi wie tot, hatte ich vor Jahren bereits bemängelt!

da hilft nur noch das Reading mit deletereading <device> state zu löschen