Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Error/Bug
  4. Gelöst: MQTT Server übernimmt Publish in einem Topic nicht

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Gelöst: MQTT Server übernimmt Publish in einem Topic nicht

Geplant Angeheftet Gesperrt Verschoben Error/Bug
6 Beiträge 2 Kommentatoren 1.8k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C Online
    C Online
    Clown007
    schrieb am zuletzt editiert von Clown007
    #1

    Hallo,
    der Fehler ist heute plötzlich aufgetreten, ohen das ich am System etwas verändern habe (konfiguriert oder updates).

    Ich habe eine Herausforderung mit dem MQTT Client/Server Adapter. Von meinem ESP werden immer die ersten paar Publish nach einem Neustart des Servers übernommen und danach keine mehr. DIe Update kommen alle 5 Sekunden. Andere MQTT Clients funktionieren einwandfrei. Ich nutze die Standard Arduino library PubSubClient.h.

    Auf der Netzwerkschnittstelle sehe ich den Publish und auch das "Ack" dazu. Im Log File des MQTT Adapters werden diese Update nicht angezeigt. Außer die ersten nach einem Neustart ;-). Jetzt weiß ich nicht genau wo ich suchen und diese Infos as dem System "verloren" gehen oder geblockt werden.

    Wie gesagt nach dem Neustart, werden die Infos ein paar mal übernommen.

    Danke für eure Ideen,
    Martin

    PS: Ich habe den Frigate Adapter letztens aktualisiert. Der verwendet jetzt einen eignen mqtt Server unter Port 1882. Erklärt aber auch nicht, warum es nach dem Neustart immer kurz funktioniert. Gibt es "Schutz" gegen zu häufige Anfragen?

    • Adaptername: mqtt
    • Link zu Adapterrepository: www.github.com...
    • Adapterversion: v6.1.2
    • js-controller Version: ...
    • Admin Version: 7.1.5
    • Hardwaresystem: NUC, Pi4 Proxmox
    • Arbeitsspeicher: 32 GB
    • Festplattenart: SD-Karte, SSD, HDD, ...
    • Betriebssystem: Debian
    • Nodejs-Version: v20.18.0
    • NPM-Version: 10.8.2
    • Installationsart: Skript oder Manuell ? Skript
    • Image, Docker genutzt: Ja - Nein
    • Ort, Name der Imagedatei: ...
    ======================= SUMMARY =======================
                            v.2024-10-19
    
    
     Static hostname: iobroker
           Icon name: computer-container
             Chassis: container ☐
      Virtualization: lxc
    Operating System: Debian GNU/Linux 12 (bookworm)
              Kernel: Linux 6.8.12-2-pve
        Architecture: x86-64
    
    Installation:           lxc
    Kernel:                 x86_64
    Userland:               64 bit
    Timezone:               Europe/Berlin (CET, +0100)
    User-ID:                1000
    Display-Server:         false
    Boot Target:            multi-user.target
    
    Pending OS-Updates:     53
    Pending iob updates:    1
    
    Nodejs-Installation:
    /usr/bin/nodejs         v20.18.0
    /usr/bin/node           v20.18.0
    /usr/bin/npm            10.8.2
    /usr/bin/npx            10.8.2
    /usr/bin/corepack       0.29.3
    
    Recommended versions are nodejs 20.18.1 and npm 10.8.2
    nodeJS installation is correct
    
    MEMORY: 
                   total        used        free      shared  buff/cache   available
    Mem:             34G        2.6G         31G        167K         57M         31G
    Swap:           8.0G          0B        8.0G
    Total:           42G        2.6G         39G
    
    Active iob-Instances:   34
    Upgrade policy: none
    
    ioBroker Core:          js-controller           7.0.6
                            admin                   7.1.5
    
    ioBroker Status:        iobroker is running on this host.
    
    
    Objects type: jsonl
    States  type: jsonl
    
    Status admin and web instance:
    + system.adapter.admin.0                  : admin                 : iobroker                                 -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
    + system.adapter.web.0                    : web                   : iobroker                                 -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
    
    Objects:                11949
    States:                 11408
    
    Size of iob-Database:
    
    12M     /opt/iobroker/iobroker-data/objects.jsonl
    3.2M    /opt/iobroker/iobroker-data/states.jsonl
    
    
    Unknown release codenamed ''. Please check yourself if the Operating System is actively maintained.
    
    =================== END OF SUMMARY ====================
    

    === Mark text until here for copying ===

    W C 2 Antworten Letzte Antwort
    0
    • C Clown007

      Hallo,
      der Fehler ist heute plötzlich aufgetreten, ohen das ich am System etwas verändern habe (konfiguriert oder updates).

      Ich habe eine Herausforderung mit dem MQTT Client/Server Adapter. Von meinem ESP werden immer die ersten paar Publish nach einem Neustart des Servers übernommen und danach keine mehr. DIe Update kommen alle 5 Sekunden. Andere MQTT Clients funktionieren einwandfrei. Ich nutze die Standard Arduino library PubSubClient.h.

      Auf der Netzwerkschnittstelle sehe ich den Publish und auch das "Ack" dazu. Im Log File des MQTT Adapters werden diese Update nicht angezeigt. Außer die ersten nach einem Neustart ;-). Jetzt weiß ich nicht genau wo ich suchen und diese Infos as dem System "verloren" gehen oder geblockt werden.

      Wie gesagt nach dem Neustart, werden die Infos ein paar mal übernommen.

      Danke für eure Ideen,
      Martin

      PS: Ich habe den Frigate Adapter letztens aktualisiert. Der verwendet jetzt einen eignen mqtt Server unter Port 1882. Erklärt aber auch nicht, warum es nach dem Neustart immer kurz funktioniert. Gibt es "Schutz" gegen zu häufige Anfragen?

      • Adaptername: mqtt
      • Link zu Adapterrepository: www.github.com...
      • Adapterversion: v6.1.2
      • js-controller Version: ...
      • Admin Version: 7.1.5
      • Hardwaresystem: NUC, Pi4 Proxmox
      • Arbeitsspeicher: 32 GB
      • Festplattenart: SD-Karte, SSD, HDD, ...
      • Betriebssystem: Debian
      • Nodejs-Version: v20.18.0
      • NPM-Version: 10.8.2
      • Installationsart: Skript oder Manuell ? Skript
      • Image, Docker genutzt: Ja - Nein
      • Ort, Name der Imagedatei: ...
      ======================= SUMMARY =======================
                              v.2024-10-19
      
      
       Static hostname: iobroker
             Icon name: computer-container
               Chassis: container ☐
        Virtualization: lxc
      Operating System: Debian GNU/Linux 12 (bookworm)
                Kernel: Linux 6.8.12-2-pve
          Architecture: x86-64
      
      Installation:           lxc
      Kernel:                 x86_64
      Userland:               64 bit
      Timezone:               Europe/Berlin (CET, +0100)
      User-ID:                1000
      Display-Server:         false
      Boot Target:            multi-user.target
      
      Pending OS-Updates:     53
      Pending iob updates:    1
      
      Nodejs-Installation:
      /usr/bin/nodejs         v20.18.0
      /usr/bin/node           v20.18.0
      /usr/bin/npm            10.8.2
      /usr/bin/npx            10.8.2
      /usr/bin/corepack       0.29.3
      
      Recommended versions are nodejs 20.18.1 and npm 10.8.2
      nodeJS installation is correct
      
      MEMORY: 
                     total        used        free      shared  buff/cache   available
      Mem:             34G        2.6G         31G        167K         57M         31G
      Swap:           8.0G          0B        8.0G
      Total:           42G        2.6G         39G
      
      Active iob-Instances:   34
      Upgrade policy: none
      
      ioBroker Core:          js-controller           7.0.6
                              admin                   7.1.5
      
      ioBroker Status:        iobroker is running on this host.
      
      
      Objects type: jsonl
      States  type: jsonl
      
      Status admin and web instance:
      + system.adapter.admin.0                  : admin                 : iobroker                                 -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
      + system.adapter.web.0                    : web                   : iobroker                                 -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
      
      Objects:                11949
      States:                 11408
      
      Size of iob-Database:
      
      12M     /opt/iobroker/iobroker-data/objects.jsonl
      3.2M    /opt/iobroker/iobroker-data/states.jsonl
      
      
      Unknown release codenamed ''. Please check yourself if the Operating System is actively maintained.
      
      =================== END OF SUMMARY ====================
      

      === Mark text until here for copying ===

      W Online
      W Online
      wolfi913
      schrieb am zuletzt editiert von
      #2

      @clown007
      Nur eine Idee, weil's bei mir deshalb auch immer mal wieder gehakt hatte bis ich's in die Skripte eingebaut habe.
      Hast Du einen reconnect im Sketch drin? Wenn nicht könntest Du evtl. mal sowas in der Art probieren.

      void reconnect() {
        // Loop until we're reconnected
        while (!client.connected()) {
          Serial.print("Attempting MQTT connection...");
          if (client.connect(mqtt_client_name, mqtt_user, mqtt_password)) {
            Serial.println("connected");
            // Once connected, publish an announcement...
            client.publish(mqtt_client_hostname, mqtt_client_name);
            client.publish(mqtt_client_ip_adresse, mqtt_ip_adress);
            // ... and resubscribe
            client.subscribe(mqtt_client_subscribe);
          } else {
            Serial.print("failed, rc=");
            Serial.print(client.state());
            Serial.println(" try again in 5 seconds");
            // Wait 5 seconds before retrying
            delay(5000);
          }
          }
        }
      
      void loop()
      {
       if (!client.connected()) {
          reconnect();
        }
      ...
      }
      
      C 1 Antwort Letzte Antwort
      0
      • W wolfi913

        @clown007
        Nur eine Idee, weil's bei mir deshalb auch immer mal wieder gehakt hatte bis ich's in die Skripte eingebaut habe.
        Hast Du einen reconnect im Sketch drin? Wenn nicht könntest Du evtl. mal sowas in der Art probieren.

        void reconnect() {
          // Loop until we're reconnected
          while (!client.connected()) {
            Serial.print("Attempting MQTT connection...");
            if (client.connect(mqtt_client_name, mqtt_user, mqtt_password)) {
              Serial.println("connected");
              // Once connected, publish an announcement...
              client.publish(mqtt_client_hostname, mqtt_client_name);
              client.publish(mqtt_client_ip_adresse, mqtt_ip_adress);
              // ... and resubscribe
              client.subscribe(mqtt_client_subscribe);
            } else {
              Serial.print("failed, rc=");
              Serial.print(client.state());
              Serial.println(" try again in 5 seconds");
              // Wait 5 seconds before retrying
              delay(5000);
            }
            }
          }
        
        void loop()
        {
         if (!client.connected()) {
            reconnect();
          }
        ...
        }
        
        C Online
        C Online
        Clown007
        schrieb am zuletzt editiert von
        #3

        @wolfi913
        Habe ich im Script :+1:
        Nach dem Neustart des Servers sehe ich die Aktualisierungen auch sofort.

        Wo finde ich das Detail log des MQTT Servers?

        Danke und Gruß,
        Martin

        W 1 Antwort Letzte Antwort
        0
        • C Clown007

          @wolfi913
          Habe ich im Script :+1:
          Nach dem Neustart des Servers sehe ich die Aktualisierungen auch sofort.

          Wo finde ich das Detail log des MQTT Servers?

          Danke und Gruß,
          Martin

          W Online
          W Online
          wolfi913
          schrieb am zuletzt editiert von
          #4

          @clown007 sagte in MQTT Server übernimmt Publish in einem Topic nicht:

          Wo finde ich das Detail log des MQTT Servers?

          Kann ich leider nicht beantworten. Ich hab einen eigenständigen Mosquitto-Server und im ioBroker den MQTT-Client am Laufen. Nutze den von Dir verwendeten MQTT-Adapter nicht und hab daher dazu leider keine Ahnung.

          C 1 Antwort Letzte Antwort
          0
          • W wolfi913

            @clown007 sagte in MQTT Server übernimmt Publish in einem Topic nicht:

            Wo finde ich das Detail log des MQTT Servers?

            Kann ich leider nicht beantworten. Ich hab einen eigenständigen Mosquitto-Server und im ioBroker den MQTT-Client am Laufen. Nutze den von Dir verwendeten MQTT-Adapter nicht und hab daher dazu leider keine Ahnung.

            C Online
            C Online
            Clown007
            schrieb am zuletzt editiert von
            #5

            @wolfi913 Ich denke mittlerweile auch, das wäre geschickter gewesen ;-)
            Wenn ich jetzt noch einen eigenen DNS Namen für den Service genommen hätte, wäre es einfach (wieder ein Learning ;-) )

            Trotzdem Danke,
            Martin

            1 Antwort Letzte Antwort
            0
            • C Clown007

              Hallo,
              der Fehler ist heute plötzlich aufgetreten, ohen das ich am System etwas verändern habe (konfiguriert oder updates).

              Ich habe eine Herausforderung mit dem MQTT Client/Server Adapter. Von meinem ESP werden immer die ersten paar Publish nach einem Neustart des Servers übernommen und danach keine mehr. DIe Update kommen alle 5 Sekunden. Andere MQTT Clients funktionieren einwandfrei. Ich nutze die Standard Arduino library PubSubClient.h.

              Auf der Netzwerkschnittstelle sehe ich den Publish und auch das "Ack" dazu. Im Log File des MQTT Adapters werden diese Update nicht angezeigt. Außer die ersten nach einem Neustart ;-). Jetzt weiß ich nicht genau wo ich suchen und diese Infos as dem System "verloren" gehen oder geblockt werden.

              Wie gesagt nach dem Neustart, werden die Infos ein paar mal übernommen.

              Danke für eure Ideen,
              Martin

              PS: Ich habe den Frigate Adapter letztens aktualisiert. Der verwendet jetzt einen eignen mqtt Server unter Port 1882. Erklärt aber auch nicht, warum es nach dem Neustart immer kurz funktioniert. Gibt es "Schutz" gegen zu häufige Anfragen?

              • Adaptername: mqtt
              • Link zu Adapterrepository: www.github.com...
              • Adapterversion: v6.1.2
              • js-controller Version: ...
              • Admin Version: 7.1.5
              • Hardwaresystem: NUC, Pi4 Proxmox
              • Arbeitsspeicher: 32 GB
              • Festplattenart: SD-Karte, SSD, HDD, ...
              • Betriebssystem: Debian
              • Nodejs-Version: v20.18.0
              • NPM-Version: 10.8.2
              • Installationsart: Skript oder Manuell ? Skript
              • Image, Docker genutzt: Ja - Nein
              • Ort, Name der Imagedatei: ...
              ======================= SUMMARY =======================
                                      v.2024-10-19
              
              
               Static hostname: iobroker
                     Icon name: computer-container
                       Chassis: container ☐
                Virtualization: lxc
              Operating System: Debian GNU/Linux 12 (bookworm)
                        Kernel: Linux 6.8.12-2-pve
                  Architecture: x86-64
              
              Installation:           lxc
              Kernel:                 x86_64
              Userland:               64 bit
              Timezone:               Europe/Berlin (CET, +0100)
              User-ID:                1000
              Display-Server:         false
              Boot Target:            multi-user.target
              
              Pending OS-Updates:     53
              Pending iob updates:    1
              
              Nodejs-Installation:
              /usr/bin/nodejs         v20.18.0
              /usr/bin/node           v20.18.0
              /usr/bin/npm            10.8.2
              /usr/bin/npx            10.8.2
              /usr/bin/corepack       0.29.3
              
              Recommended versions are nodejs 20.18.1 and npm 10.8.2
              nodeJS installation is correct
              
              MEMORY: 
                             total        used        free      shared  buff/cache   available
              Mem:             34G        2.6G         31G        167K         57M         31G
              Swap:           8.0G          0B        8.0G
              Total:           42G        2.6G         39G
              
              Active iob-Instances:   34
              Upgrade policy: none
              
              ioBroker Core:          js-controller           7.0.6
                                      admin                   7.1.5
              
              ioBroker Status:        iobroker is running on this host.
              
              
              Objects type: jsonl
              States  type: jsonl
              
              Status admin and web instance:
              + system.adapter.admin.0                  : admin                 : iobroker                                 -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
              + system.adapter.web.0                    : web                   : iobroker                                 -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
              
              Objects:                11949
              States:                 11408
              
              Size of iob-Database:
              
              12M     /opt/iobroker/iobroker-data/objects.jsonl
              3.2M    /opt/iobroker/iobroker-data/states.jsonl
              
              
              Unknown release codenamed ''. Please check yourself if the Operating System is actively maintained.
              
              =================== END OF SUMMARY ====================
              

              === Mark text until here for copying ===

              C Online
              C Online
              Clown007
              schrieb am zuletzt editiert von
              #6

              @clown007
              Also, ist mir etwas peinlich, ich habe den Fehler gefunden. Im Nachhinein ist alles ganz logisch ;-)

              Ich hatte eine falsche Variable bei der Client ID in meinem ESP Programm. Das wäre noch kein Problem, wenn man den Code aber kopiert und im nächsten Projekt verwendet, haben zwei Clients die gleiche ID ;-)

              Sorry, der Post kann als gelöst markiert werden.

              Gruß Martin

              1 Antwort Letzte Antwort
              0
              Antworten
              • In einem neuen Thema antworten
              Anmelden zum Antworten
              • Älteste zuerst
              • Neuste zuerst
              • Meiste Stimmen


              Support us

              ioBroker
              Community Adapters
              Donate

              828

              Online

              32.4k

              Benutzer

              81.5k

              Themen

              1.3m

              Beiträge
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
              ioBroker Community 2014-2025
              logo
              • Anmelden

              • Du hast noch kein Konto? Registrieren

              • Anmelden oder registrieren, um zu suchen
              • Erster Beitrag
                Letzter Beitrag
              0
              • Home
              • Aktuell
              • Tags
              • Ungelesen 0
              • Kategorien
              • Unreplied
              • Beliebt
              • GitHub
              • Docu
              • Hilfe