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. Skripten / Logik
  4. Temperatur/Luftfeuchtigkeitssensor einbinden

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Temperatur/Luftfeuchtigkeitssensor einbinden

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
10 Beiträge 3 Kommentatoren 350 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.
  • T Offline
    T Offline
    Testpilot 0
    schrieb am zuletzt editiert von Testpilot 0
    #1

    Hallo zusammen,

    ich habe mit einem ESP8266 und DHT11 einen Sensor gebaut .

    Diesen Sensor möchte ich nun mittels Vis im IO-Broker einbinden. Da ich Neuling auf dem Gebiet bin, bitte ich um einen Tip zum weiteren vorgehen.

    Muss ich den Sensor ersteinmal als Objekt in IO-Broker einbinden oder erfolgt die Abfrage direkt per Vis?

    Danke und Gruß!

    HomoranH 1 Antwort Letzte Antwort
    0
    • T Testpilot 0

      Hallo zusammen,

      ich habe mit einem ESP8266 und DHT11 einen Sensor gebaut .

      Diesen Sensor möchte ich nun mittels Vis im IO-Broker einbinden. Da ich Neuling auf dem Gebiet bin, bitte ich um einen Tip zum weiteren vorgehen.

      Muss ich den Sensor ersteinmal als Objekt in IO-Broker einbinden oder erfolgt die Abfrage direkt per Vis?

      Danke und Gruß!

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #2

      @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

      Diesen Sensor möchte ich nun mittels Vis im IO-Broker einbinden

      Vis dient ausschließlich (??) der Visualisierung von Datenpunkten aus dem ioBroker.

      Also musst du

      @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

      den Sensor ersteinmal als Objekt in IO-Broker einbinden

      Da du keine weiteren Infos lieferst kann ich dir nicht sagen wie.

      @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

      mit einem ESP8266

      könnte MQTT möglich sein oder ESPHome???

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      T 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

        Diesen Sensor möchte ich nun mittels Vis im IO-Broker einbinden

        Vis dient ausschließlich (??) der Visualisierung von Datenpunkten aus dem ioBroker.

        Also musst du

        @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

        den Sensor ersteinmal als Objekt in IO-Broker einbinden

        Da du keine weiteren Infos lieferst kann ich dir nicht sagen wie.

        @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

        mit einem ESP8266

        könnte MQTT möglich sein oder ESPHome???

        T Offline
        T Offline
        Testpilot 0
        schrieb am zuletzt editiert von
        #3

        @homoran ok, so langsam verstehe ich. D.h. ich muss den Sensor z.B. mit dem MQTT-Client in den IO-Broker einbinden?

        HomoranH M 2 Antworten Letzte Antwort
        0
        • T Testpilot 0

          @homoran ok, so langsam verstehe ich. D.h. ich muss den Sensor z.B. mit dem MQTT-Client in den IO-Broker einbinden?

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #4

          @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

          D.h. ich muss den Sensor z.B. mit dem MQTT-Client in den IO-Broker einbinden?

          Ja, aber...
          Ob dein Sensor MQTT spricht und dementsprechend konfiguriert ist weiß ich nicht

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          T 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

            D.h. ich muss den Sensor z.B. mit dem MQTT-Client in den IO-Broker einbinden?

            Ja, aber...
            Ob dein Sensor MQTT spricht und dementsprechend konfiguriert ist weiß ich nicht

            T Offline
            T Offline
            Testpilot 0
            schrieb am zuletzt editiert von
            #5

            @homoran So sieht der Code aus:

            #include <ESP8266WiFi.h>
            #include "DHT.h"
             
            const char* ssid = ""; //SSID aus dem Router
            const char* password = ""; //Passwort für den Zugang zum WLAN
             
            int ledPin = D5; //digitaler PIN 5 des Wemos D1 an welchem die LED angeschlossen ist.
            int ledStatus = LOW; //aktueller Status der LED (default / start  -> AUS)
            WiFiServer server(80); //Port auf welchem der Server laufen soll.
            
             #define DHT11PIN 2 
             #define DHT11TYPE DHT11
             DHT dht11(DHT11PIN, DHT11TYPE);
             
            void setup() {
              Serial.begin(115200); //Baudrate für die Serielle Geschwindigkeit.
              delay(10); //10ms. Warten damit die Seriele Kommunikation aufgebaut wurde.
              
              pinMode(ledPin, OUTPUT); //Den LEDPin als ausgang setzen.
              digitalWrite(ledPin, ledStatus); //Die LED initial auf den Status "AUS" setzen.
               
              Serial.print("Aufbau der Verbindung zu: "); //Ausgabe der SSID auf der Seriellen Schnittstelle.
              Serial.println(ssid);
              
              WiFi.begin(ssid, password); //Initialisieren der Wifi Verbindung.
             
              while (WiFi.status() != WL_CONNECTED) { //Warten bis die Verbindung aufgebaut wurde.
                delay(500);
                //Einen Punkt auf der Seriellen Schnittstelle ausgeben so das der Benutzer erkennt dass, das Sketch noch läuft.
                Serial.print("."); 
              }
              //Bei erfolgreicher Verbindung wird der folgende Text ausgeben.
              Serial.print("Mit ");
              Serial.print(ssid);
              Serial.print("erfolgreich verbunden!");
            
              dht11.begin();
              
              server.begin(); // Starten des Servers.
              Serial.println("Server gestartet"); //Ausgabe auf der Seriellen Schnittstelle das der Server gestartet wurde.
             
              // Ausgabe der IP Adresse 
              Serial.print("Adresse : http://");
              Serial.print(WiFi.localIP());
              Serial.println("/");
            }
            
            /**
             * Die Funktion gibt den HTML Kopf auf dem Client aus.
             * Dieses wird für jeden Respond verwendet.
             **/
            void writeResponse(WiFiClient client, float tempValue, float humidityValue){  
              client.println("HTTP/1.1 200 OK");
              client.println("Content-Type: text/html");
              client.println("");
              client.println("<!DOCTYPE HTML>");
              client.println("<html>"); 
              client.println("<head>"); 
              client.println("<script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script>"); 
              client.println("<script type='text/javascript' src='http://progs.draeger-it.blog/wemosd1/dht11/gauges.js'></script>"); 
              client.println("<link rel='stylesheet' href='http://progs.draeger-it.blog/wemosd1/dht11/styles.css'/>");   
              client.println("</head>"); 
              client.println("<body>"); 
              client.println("<div id='tempChart' class='chartContainer'></div>"); 
              client.println("<div id='pressChart' class='chartContainer'></div>"); 
              client.println("<script>"); 
              client.println("google.charts.load('current', {'packages':['gauge']});"); 
              client.println("google.charts.setOnLoadCallback(drawCharts);"); 
              client.println("function drawCharts() {"); 
              client.print("drawTempChart(");
              client.print(tempValue); 
              client.print(");");
              client.print("drawPressChart(");
              client.print(humidityValue); 
              client.print(");");
              client.println("}"); 
              client.println("</script>"); 
              client.println("</body>"); 
              client.println("</html>"); 
            }
            
            void loop() {
              //Prüfen ob sich ein Client verbunden hat, wenn nicht die Loop "verlassen"
              WiFiClient client = server.available();
              if (!client) {
                return;
              }
             
              // Wenn sich ein Client verbunden hat solange warten bis Daten gesendet werden.
              Serial.println("Neuer Client verbunden.");
              while(!client.available()){
                delay(1);
              }
             
              String request = client.readStringUntil('\r');
              Serial.println(request);
              client.flush(); 
            
              float tempValue = dht11.readTemperature(); //Temperatur vom Sensor DHT11 lesen
              float humidityValue = dht11.readHumidity(); //relative Luftfeuchtigkeit vom Sensor DHT11 lesen
            
             if (isnan(tempValue) || isnan(humidityValue)) {
                 Serial.println("DHT11 konnte nicht ausgelesen werden");
                 tempValue = 0;
                 humidityValue = 0;
             }
             
              writeResponse(client, tempValue, humidityValue);
              
              delay(1); //1ms. Pause
            }
            
            HomoranH M 2 Antworten Letzte Antwort
            0
            • T Testpilot 0

              @homoran So sieht der Code aus:

              #include <ESP8266WiFi.h>
              #include "DHT.h"
               
              const char* ssid = ""; //SSID aus dem Router
              const char* password = ""; //Passwort für den Zugang zum WLAN
               
              int ledPin = D5; //digitaler PIN 5 des Wemos D1 an welchem die LED angeschlossen ist.
              int ledStatus = LOW; //aktueller Status der LED (default / start  -> AUS)
              WiFiServer server(80); //Port auf welchem der Server laufen soll.
              
               #define DHT11PIN 2 
               #define DHT11TYPE DHT11
               DHT dht11(DHT11PIN, DHT11TYPE);
               
              void setup() {
                Serial.begin(115200); //Baudrate für die Serielle Geschwindigkeit.
                delay(10); //10ms. Warten damit die Seriele Kommunikation aufgebaut wurde.
                
                pinMode(ledPin, OUTPUT); //Den LEDPin als ausgang setzen.
                digitalWrite(ledPin, ledStatus); //Die LED initial auf den Status "AUS" setzen.
                 
                Serial.print("Aufbau der Verbindung zu: "); //Ausgabe der SSID auf der Seriellen Schnittstelle.
                Serial.println(ssid);
                
                WiFi.begin(ssid, password); //Initialisieren der Wifi Verbindung.
               
                while (WiFi.status() != WL_CONNECTED) { //Warten bis die Verbindung aufgebaut wurde.
                  delay(500);
                  //Einen Punkt auf der Seriellen Schnittstelle ausgeben so das der Benutzer erkennt dass, das Sketch noch läuft.
                  Serial.print("."); 
                }
                //Bei erfolgreicher Verbindung wird der folgende Text ausgeben.
                Serial.print("Mit ");
                Serial.print(ssid);
                Serial.print("erfolgreich verbunden!");
              
                dht11.begin();
                
                server.begin(); // Starten des Servers.
                Serial.println("Server gestartet"); //Ausgabe auf der Seriellen Schnittstelle das der Server gestartet wurde.
               
                // Ausgabe der IP Adresse 
                Serial.print("Adresse : http://");
                Serial.print(WiFi.localIP());
                Serial.println("/");
              }
              
              /**
               * Die Funktion gibt den HTML Kopf auf dem Client aus.
               * Dieses wird für jeden Respond verwendet.
               **/
              void writeResponse(WiFiClient client, float tempValue, float humidityValue){  
                client.println("HTTP/1.1 200 OK");
                client.println("Content-Type: text/html");
                client.println("");
                client.println("<!DOCTYPE HTML>");
                client.println("<html>"); 
                client.println("<head>"); 
                client.println("<script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script>"); 
                client.println("<script type='text/javascript' src='http://progs.draeger-it.blog/wemosd1/dht11/gauges.js'></script>"); 
                client.println("<link rel='stylesheet' href='http://progs.draeger-it.blog/wemosd1/dht11/styles.css'/>");   
                client.println("</head>"); 
                client.println("<body>"); 
                client.println("<div id='tempChart' class='chartContainer'></div>"); 
                client.println("<div id='pressChart' class='chartContainer'></div>"); 
                client.println("<script>"); 
                client.println("google.charts.load('current', {'packages':['gauge']});"); 
                client.println("google.charts.setOnLoadCallback(drawCharts);"); 
                client.println("function drawCharts() {"); 
                client.print("drawTempChart(");
                client.print(tempValue); 
                client.print(");");
                client.print("drawPressChart(");
                client.print(humidityValue); 
                client.print(");");
                client.println("}"); 
                client.println("</script>"); 
                client.println("</body>"); 
                client.println("</html>"); 
              }
              
              void loop() {
                //Prüfen ob sich ein Client verbunden hat, wenn nicht die Loop "verlassen"
                WiFiClient client = server.available();
                if (!client) {
                  return;
                }
               
                // Wenn sich ein Client verbunden hat solange warten bis Daten gesendet werden.
                Serial.println("Neuer Client verbunden.");
                while(!client.available()){
                  delay(1);
                }
               
                String request = client.readStringUntil('\r');
                Serial.println(request);
                client.flush(); 
              
                float tempValue = dht11.readTemperature(); //Temperatur vom Sensor DHT11 lesen
                float humidityValue = dht11.readHumidity(); //relative Luftfeuchtigkeit vom Sensor DHT11 lesen
              
               if (isnan(tempValue) || isnan(humidityValue)) {
                   Serial.println("DHT11 konnte nicht ausgelesen werden");
                   tempValue = 0;
                   humidityValue = 0;
               }
               
                writeResponse(client, tempValue, humidityValue);
                
                delay(1); //1ms. Pause
              }
              
              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #6

              @testpilot-0 sagte in Temperatur/Luftfeuchtigkeitssensor einbinden:

              So sieht der Code aus:

              ist das chinesisch?
              Sorry, aber davon verstehe ich absolut nichts

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • T Testpilot 0

                @homoran ok, so langsam verstehe ich. D.h. ich muss den Sensor z.B. mit dem MQTT-Client in den IO-Broker einbinden?

                M Offline
                M Offline
                Michi_Pi
                schrieb am zuletzt editiert von
                #7

                @testpilot-0 ja genau, wenn du die den Code genau so übernommen hast wie in dem Link den du eingestellt hast. Werden deine Daten nur an die Seriale Schnittstelle weitergegeben.
                Das heißt du musst deinen ESP erst mal auch umprogrammieren.

                T 1 Antwort Letzte Antwort
                0
                • T Testpilot 0

                  @homoran So sieht der Code aus:

                  #include <ESP8266WiFi.h>
                  #include "DHT.h"
                   
                  const char* ssid = ""; //SSID aus dem Router
                  const char* password = ""; //Passwort für den Zugang zum WLAN
                   
                  int ledPin = D5; //digitaler PIN 5 des Wemos D1 an welchem die LED angeschlossen ist.
                  int ledStatus = LOW; //aktueller Status der LED (default / start  -> AUS)
                  WiFiServer server(80); //Port auf welchem der Server laufen soll.
                  
                   #define DHT11PIN 2 
                   #define DHT11TYPE DHT11
                   DHT dht11(DHT11PIN, DHT11TYPE);
                   
                  void setup() {
                    Serial.begin(115200); //Baudrate für die Serielle Geschwindigkeit.
                    delay(10); //10ms. Warten damit die Seriele Kommunikation aufgebaut wurde.
                    
                    pinMode(ledPin, OUTPUT); //Den LEDPin als ausgang setzen.
                    digitalWrite(ledPin, ledStatus); //Die LED initial auf den Status "AUS" setzen.
                     
                    Serial.print("Aufbau der Verbindung zu: "); //Ausgabe der SSID auf der Seriellen Schnittstelle.
                    Serial.println(ssid);
                    
                    WiFi.begin(ssid, password); //Initialisieren der Wifi Verbindung.
                   
                    while (WiFi.status() != WL_CONNECTED) { //Warten bis die Verbindung aufgebaut wurde.
                      delay(500);
                      //Einen Punkt auf der Seriellen Schnittstelle ausgeben so das der Benutzer erkennt dass, das Sketch noch läuft.
                      Serial.print("."); 
                    }
                    //Bei erfolgreicher Verbindung wird der folgende Text ausgeben.
                    Serial.print("Mit ");
                    Serial.print(ssid);
                    Serial.print("erfolgreich verbunden!");
                  
                    dht11.begin();
                    
                    server.begin(); // Starten des Servers.
                    Serial.println("Server gestartet"); //Ausgabe auf der Seriellen Schnittstelle das der Server gestartet wurde.
                   
                    // Ausgabe der IP Adresse 
                    Serial.print("Adresse : http://");
                    Serial.print(WiFi.localIP());
                    Serial.println("/");
                  }
                  
                  /**
                   * Die Funktion gibt den HTML Kopf auf dem Client aus.
                   * Dieses wird für jeden Respond verwendet.
                   **/
                  void writeResponse(WiFiClient client, float tempValue, float humidityValue){  
                    client.println("HTTP/1.1 200 OK");
                    client.println("Content-Type: text/html");
                    client.println("");
                    client.println("<!DOCTYPE HTML>");
                    client.println("<html>"); 
                    client.println("<head>"); 
                    client.println("<script type='text/javascript' src='https://www.gstatic.com/charts/loader.js'></script>"); 
                    client.println("<script type='text/javascript' src='http://progs.draeger-it.blog/wemosd1/dht11/gauges.js'></script>"); 
                    client.println("<link rel='stylesheet' href='http://progs.draeger-it.blog/wemosd1/dht11/styles.css'/>");   
                    client.println("</head>"); 
                    client.println("<body>"); 
                    client.println("<div id='tempChart' class='chartContainer'></div>"); 
                    client.println("<div id='pressChart' class='chartContainer'></div>"); 
                    client.println("<script>"); 
                    client.println("google.charts.load('current', {'packages':['gauge']});"); 
                    client.println("google.charts.setOnLoadCallback(drawCharts);"); 
                    client.println("function drawCharts() {"); 
                    client.print("drawTempChart(");
                    client.print(tempValue); 
                    client.print(");");
                    client.print("drawPressChart(");
                    client.print(humidityValue); 
                    client.print(");");
                    client.println("}"); 
                    client.println("</script>"); 
                    client.println("</body>"); 
                    client.println("</html>"); 
                  }
                  
                  void loop() {
                    //Prüfen ob sich ein Client verbunden hat, wenn nicht die Loop "verlassen"
                    WiFiClient client = server.available();
                    if (!client) {
                      return;
                    }
                   
                    // Wenn sich ein Client verbunden hat solange warten bis Daten gesendet werden.
                    Serial.println("Neuer Client verbunden.");
                    while(!client.available()){
                      delay(1);
                    }
                   
                    String request = client.readStringUntil('\r');
                    Serial.println(request);
                    client.flush(); 
                  
                    float tempValue = dht11.readTemperature(); //Temperatur vom Sensor DHT11 lesen
                    float humidityValue = dht11.readHumidity(); //relative Luftfeuchtigkeit vom Sensor DHT11 lesen
                  
                   if (isnan(tempValue) || isnan(humidityValue)) {
                       Serial.println("DHT11 konnte nicht ausgelesen werden");
                       tempValue = 0;
                       humidityValue = 0;
                   }
                   
                    writeResponse(client, tempValue, humidityValue);
                    
                    delay(1); //1ms. Pause
                  }
                  
                  M Offline
                  M Offline
                  Michi_Pi
                  schrieb am zuletzt editiert von
                  #8

                  @testpilot-0 MQTT verwendest du nicht, du schickst dass über einen HTTP-Request wo hin.

                  1 Antwort Letzte Antwort
                  0
                  • M Michi_Pi

                    @testpilot-0 ja genau, wenn du die den Code genau so übernommen hast wie in dem Link den du eingestellt hast. Werden deine Daten nur an die Seriale Schnittstelle weitergegeben.
                    Das heißt du musst deinen ESP erst mal auch umprogrammieren.

                    T Offline
                    T Offline
                    Testpilot 0
                    schrieb am zuletzt editiert von
                    #9

                    @michi_pi Verstehe, ich dachte es kann der Webserver abgefragt werden. Dann muss ich ein Script suchen welches die Daten per IP übergibt?

                    M 1 Antwort Letzte Antwort
                    0
                    • T Testpilot 0

                      @michi_pi Verstehe, ich dachte es kann der Webserver abgefragt werden. Dann muss ich ein Script suchen welches die Daten per IP übergibt?

                      M Offline
                      M Offline
                      Michi_Pi
                      schrieb am zuletzt editiert von
                      #10

                      @testpilot-0 ob die Dinger auch per HTTP eingebunden werden, weiß ich nicht, damit hab ich mich noch nicht befasst. Ich mach das per MQTT.

                      Ja genau, die Daten werden dann per MQTT an den Broker gesendet. Dazu gibt es eh etliche Beispiele in Netz.

                      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

                      701

                      Online

                      32.7k

                      Benutzer

                      82.4k

                      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