Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. OBI Funk-Steckdosenumbau ESP8266 (Generation1 Rund)

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    OBI Funk-Steckdosenumbau ESP8266 (Generation1 Rund)

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      meierchen006 last edited by

      Hallo,

      So ist es in den OBI Steckdosen eingestellt entweder als Name obi1 oder obi2.
      7526_20181027_204158.png

      So sieht bei meiner Obi1 Steckdose unter ip/espalexa aus
      7526_20181027_210342.png

      1 Reply Last reply Reply Quote 0
      • sissiwup
        sissiwup last edited by

        @meierchen006:

        Hallo,

        So habe die Firmware drauf, lasse Alexa App suchen und finde nichts.

        Brauche ich noch einen Skill?

        Ich muss erwähnen dass ich keinen Echo habe sondern nur die Alexa App auf dem Tablet.

        meierchen006 `

        Hi,

        die Dosen simulieren eine Hue. Aber ich glaube das funktioniert nur mit den Alexa-Geräten, die auch diese steuern können.

        Das sind wohl zumindest die Echo Dots.

        Für obi1 / obi2:

        Starte mal die Dose neu, was sagt sie dann?

        1 Reply Last reply Reply Quote 0
        • J
          Jan1 last edited by

          Ja mit Hue Emulator geht es nur mit nem Echo, da man die Dose nicht mit der Hue APP verknüpfen kann und dann auch der Skill nicht greift.

          1 Reply Last reply Reply Quote 0
          • sissiwup
            sissiwup last edited by

            Kleines Update für Alexa:

            Update der Oberfläche:
            609_bildschirmfoto_2018-10-28_um_09.05.44.png

            Integration MQTT:
            609_bildschirmfoto_2018-10-28_um_09.05.14.png

            Der Status der Dose wird korrekt an Alexa zurück gemeldet

            Bugfix:

            Timer -> ON ging nicht. Ist repariert.

            Für die Selbstübersetzer:

            ESPALEXA ist nicht mehr als LIB enthalten sondern die beiden Sourcen sind aktuell enthalten, da doch einige Anpassungen notwendig waren.

            609_firmware_1_2_2b.zip
            609_code_1_2_2b.zip

            1 Reply Last reply Reply Quote 0
            • M
              meierchen006 last edited by

              Hallo,

              ich habe auch noch eine Fire TV Box mit eingebauter Alexa.

              Auch dort werden die Obi Steckdosen nicht gefunden, schade.

              Werde mir bei Gelegenheit dann mal einen kleinen Echo Dot Version 3 kaufen, funktioniert es mit dem?

              @sissiwup

              ich habe die Steckdosen gestern schon mehrfach neu gestartet gehabt.

              Jetzt Aktuell mit der Firmware 1.2.2b

              Obi1 mit 1.2.2b
              7526_obi1.jpg

              Obi2 mit 1.2.2b
              7526_obi2.jpg

              1 Reply Last reply Reply Quote 0
              • sissiwup
                sissiwup last edited by

                @meierchen006:

                Hallo,

                ich habe auch noch eine Fire TV Box mit eingebauter Alexa.

                Auch dort werden die Obi Steckdosen nicht gefunden, schade.

                Werde mir bei Gelegenheit dann mal einen kleinen Echo Dot Version 3 kaufen, funktioniert es mit dem? `

                > The ha-bridge requires a physical Amazon Echo (Gen1 or 2), Echo Plus, Dot (Gen 1 or 2), Tap, Show, Spot or Google Home or Mini device and does not work with prototype devices built using the Alexa Voice Service e.g. Amazon’s Alexa AVS Sample App and Sam Machin’s AlexaPi. The AVS version does not have any capability for HUE Bridge discovery!

                Also noch nicht getestet mit Dot Gen 3.0

                1 Reply Last reply Reply Quote 0
                • haselchen
                  haselchen Most Active last edited by

                  Anderer Weg in Alexa ist die HA-Bridge.

                  Gerät dort anlegen mit IP Adresse und variablen Name (z.B. Gästezimmer)

                  Alexa suchen lassen und zack kann man die Steckdose steuern wie man will.

                  An / Aus / Routinen etc.

                  1 Reply Last reply Reply Quote 0
                  • sissiwup
                    sissiwup last edited by

                    @haselchen:

                    Anderer Weg in Alexa ist die HA-Bridge.

                    Gerät dort anlegen mit IP Adresse und variablen Name (z.B. Gästezimmer)

                    Alexa suchen lassen und zack kann man die Steckdose steuern wie man will.

                    An / Aus / Routinen etc. `

                    Hi,

                    gute Idee, habe ich auch ausprobiert, siehe dazu auch mein Script im entsprechenden Post.

                    var anz=0;
                    
                    var habridgeURL = "http://192.168.1.13:8080/api/devices"
                    var ioBrokerURL = "http://192.168.1.13:8087/set/"
                    
                    /////////////////////////////////////////// 
                    function escapeRegExp(str) {
                      return str.replace(/[\-[]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\><");
                    }
                    
                    function delDevices(from_val,to_val,habridgeURL) {
                        for (var i=from_val;i<=to_val;i++) {
                          	var request = require('request');
                    		request.delete({
                    				headers: {'content-type': 'application/json'},
                    				url:     habridgeURL+"/"+i
                    		}, function(error, response, body) {
                    			if (error){
                    				return log(error, 'error');
                    			}
                    			log("Del Response: "+JSON.stringify(body));
                    		}); 
                        }
                    }
                    
                    function getDevice(val,habridgeURL) {
                          	var request = require('sync-request');
                    		var erg = request.get({
                    				headers: {'content-type': 'application/json'},
                    				url:     habridgeURL+"/"+val
                    		}, function(error, response, body) {
                    			if (error){
                    				return log(error, 'error');
                    			}
                    			log("Get Response: "+body);
                    			log("GET-NAME:"+JSON.parse(body).name);
                    		});
                    }
                    
                    function sendrequest(habridgeURL, params,id,devid){
                        if (devid.length!==0) {  // ID Vorhanden, dh. hole Namen aus ha-bridge
                          	var request = require('request');
                    		var erg = request.get({
                    				headers: {'content-type': 'application/json'},
                    				url:     habridgeURL+"/"+devid
                    		}, function(error, response, body) {
                    			if (error){
                    				return log(error, 'error');
                    			}
                    			// log("Get Response: "+body);
                    			// log("GET-NAME:"+JSON.parse(body).name);
                                var name=JSON.parse(body).name;
                                var addurl="";
                                if (name===undefined) {
                                    log("NOT FOUND - "+devid);
                                    return;  // auskommentieren um nicht gefundene neu anzulegen!  <<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                    params["id"]=null;
                                    sendrequest(habridgeURL, params,id,"");
                                } else if (name.length>0) {
                                    params["name"]=name;
                                    addurl="/"+devid;
                                }
                                var request = require('request');
                    		    request.put({
                    				headers: {'content-type': 'application/json'},
                    				url:     habridgeURL+addurl,
                    				body:   params,
                    				json: true
                    		    }, function(error, response, body) {
                    			    if (error){
                    				    return log(error, 'error');
                    			    }
                    			    // log("Update Response: "+JSON.stringify(body));
                    	//		var regexp = escapeRegExp(ioBrokerURL)+"(.*)\\?value.*";
                            	    log("update ok - "+devid); 
                    		    });
                    		});
                        } else {
                            var request = require('request');
                    		request.post({
                    				headers: {'content-type': 'application/json'},
                    				url:     habridgeURL,
                    				body:   params,
                    				json: true
                    		}, function(error, response, body) {
                    			if (error){
                    				return log(error, 'error');
                    			}
                    			// log("Response: "+JSON.stringify(body));
                    			var regexp = escapeRegExp(ioBrokerURL)+"(.*)\\?value.*";
                                var patt = new RegExp(regexp);
                                var result = patt.exec(body[0].onUrl);
                                if (result!==null) {
                    			    log("ID für "+ decodeURI(result[1]) +" erhalten: " + body[0].id); 
                    			    if (!isNaN(body[0].id)) extendObject(decodeURI(result[1]), {common: {habridgeid: body[0].id}});
                    			} else {
                    			    log("update nok"); 
                    			}
                    		});
                        }
                    }
                    
                    function saveData(id,raum,devname,onurl,offurl,dimurl) {
                    	// log("Objekt: "+id);
                    	devid="";
                    	var params = {};
                    	if (isNaN((getObject(id).common.habridgeid))){
                    	    devid="";
                        	log("++++++++ Neu "+id+devid+" ");
                    	} else {
                    	    devid=getObject(id).common.habridgeid;    
                        	log("======== Update "+id+"-"+devid+"-");
                    	}
                    	    // devid="";  // add trotz ID
                        	idu=encodeURI(id);
                        	if (devid.length>0) {
                        	    params["id"]=devid;
                        	} 
                        	params["name"]= devname;
                        	params["deviceType"]= "switch";
                        	params["onUrl"]= "[{\"item\":\""+ioBrokerURL+idu+"?value="+onurl+"\",\"type\":\"httpDevice\"}]";
                        	if (offurl.length>0) params["offUrl"]= "[{\"item\":\""+ioBrokerURL+idu+"?value="+offurl+"\",\"type\":\"httpDevice\"}]";
                        	if (dimurl.length>0) params["dimUrl"]= "[{\"item\":\""+ioBrokerURL+idu+"?value="+dimurl+"\",\"type\":\"httpDevice\"}]";
                        	params["description"]= "\""+raum+"\"";
                        	params["comments"]= id;
                    
                        	sendrequest(habridgeURL,params,id,devid);
                    
                    }
                    
                    function callme(id,i,b,onurl,offurl,dimurl) {
                           if (getObject(id) && anz<500) {
                            var devname=getObject(id).common.name;
                            var channel=getObject(id).common.name.split(":");
                            var idteile=id.split(".");
                            var dev="";
                            var dp = getObject(id,"rooms");
                            var raum=dp.enumNames;
                            if (idteile.length>2) {
                                dev=idteile[2];
                            }
                            if (raum.length===0) {
                                raum="-"
                            }
                          if (b===false || raum!="-") { 
                           anz=anz+1;
                           // log( '"'+id+'","'+channel[0]+'","'+devname+'","'+raum+'","'+dev+'"'+String.fromCharCode(10));
                           saveData(id,raum,devname,onurl,offurl,dimurl);
                          }
                        } 
                    }
                    
                    // callme 
                    //      id = Geraeteid
                    //      i  = Nummer (nicht verwendet)
                    //      b  = Nur Geräte mit Raum (true/false)
                    //      onurl = Wert für ON
                    //      offurl = Wert für OFF
                    //      dimurl = Wert für DIM ("${intensity.percent}")
                    
                    //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                    
                    //var states = $('broadlink2.0.*.L.*').each(function(id,i) { callme(id,i,false,"true","false",""); });
                    //var states = $('broadlink2.0.States.*').each(function(id,i) { callme(id,i,false,"true","false",""); });
                    //var states = $('broadlink2.0.Scenes.*').each(function(id,i) { callme(id,i,false,"true","false",""); });
                    //var states = $('scene.0.*').each(function(id,i) { callme(id,i,false,"true","false",""); });
                    //var states = $('hm-rpc.0.*.SET*').each(function(id,i) { callme(id,i,true,"true","false",""); });
                    var states = $('hm-rpc.0.*.1.LEVEL').each(function(id,i) { callme(id,i,true,"100","0","${intensity.percent}"); });
                    //var states = $('hm-rpc.0.LEQ1023360.1.LEVEL').each(function(id,i) { callme(id,i,true,"100","0","${intensity.percent}"); });   
                    
                    //delDevices(25,200,habridgeURL);
                    //getDevice(25,habridgeURL);
                    
                    1 Reply Last reply Reply Quote 0
                    • T
                      thobastian last edited by

                      Also meine Obischalter schalten sich immer noch an, wann sie möchten. Und zwar beide gleichzeitig. Das ist echt komisch.

                      Ich habe 2 Obischalter. Sie werden beide über ein Script im IOBroker direkt angesteuert (über CMD).

                      Wenn auf der Homematic-FB eine Taste gedrückt wird, starten die Obischalter.

                      Aber auch erst dann.

                      Wenn das Script im IOBroker aktivert worden wäre, hätte ich es im Log gesehen. Dort war nichts zu sehen. Debug-Modus ist für das Script an.

                      Jetzt weiss ich nicht mehr weiter.

                      Hat jemand noch eine Idee, bevor ich die Schalter auf den Müll werfe?

                      1 Reply Last reply Reply Quote 0
                      • sissiwup
                        sissiwup last edited by

                        @thobastian:

                        Also meine Obischalter schalten sich immer noch an, wann sie möchten. Und zwar beide gleichzeitig. Das ist echt komisch.

                        Ich habe 2 Obischalter. Sie werden beide über ein Script im IOBroker direkt angesteuert (über CMD).

                        Wenn auf der Homematic-FB eine Taste gedrückt wird, starten die Obischalter.

                        Aber auch erst dann.

                        Wenn das Script im IOBroker aktivert worden wäre, hätte ich es im Log gesehen. Dort war nichts zu sehen. Debug-Modus ist für das Script an.

                        Jetzt weiss ich nicht mehr weiter.

                        Hat jemand noch eine Idee, bevor ich die Schalter auf den Müll werfe? `
                        Hast du die aktuelle Version drauf?

                        Was sagen die Loggs der Dose?

                        Zeig mal dein Script.

                        1 Reply Last reply Reply Quote 0
                        • T
                          thobastian last edited by

                          Ja, die Alexa-Fassung ist drauf und fkt. hervorragend.

                          anbei das Blockly.
                          1555_script_obischalter.jpg

                          1 Reply Last reply Reply Quote 0
                          • sissiwup
                            sissiwup last edited by

                            @thobastian:

                            Ja, die Alexa-Fassung ist drauf und fkt. hervorragend.

                            anbei das Blockly. `

                            Hallo,

                            wenn du das Script so realisierst, startet es bei jedem Neustart des Rechners, bei jedem Neustart vom ioBroker, bei jedem Neustart des java-Script-Adapters und bei jedem Speichern des Skriptes.

                            Das beide Steckdosen immer zugleich schaltet zeigt, das hier das Skript Aktiv ist. Ich bin mir sicher, das du zur entsprechenden Zeit in der Logdatei

                            (iobroker/logs?) den Eintrag mit "test" findest.

                            Ich habe in viewtopic.php?f=21&t=15722&start=100#p176935 beschrieben wie man z.B. Alexa Skripte

                            mit einem Trigger versieht.

                            Kurz: Du legst eine Variable an. Deine Fernbedienung startet nicht das Skript sondern ändert die Variable, z.B. immer auf true.

                            Dein Blocky reagiert dann auf Falls Object wurde aktualisiert.
                            609_bildschirmfoto_2018-10-30_um_22.11.35.png

                            Wenn danach immer noch etwas falsch läuft, kannst du die Variable mal auf protokollieren setzen und siehst die Änderungen.

                            NIE ein Skript ohne Trigger schreiben!

                            1 Reply Last reply Reply Quote 0
                            • T
                              thobastian last edited by

                              Okay, ich verändere dann meinen zeiger auf die neue Variable. Nur wie wird Variable angesteuert? Ich habe mal die beiden Blockly angehängt. So habe ich das jetzt gemacht. Nun sind es 2 Scripte. Und das nur wegen der Variablentrennung

                              Oder geht das alles auch eleganter?

                              Nachtrag: Mist, jetzt bekomme ich auch noch den Fehler "Cannot extract Blockly code. " Was habe ich nun falsch gemacht? Das ist echt ätzend.
                              1555_trigger.jpg
                              1555_trigger2.jpg

                              1 Reply Last reply Reply Quote 0
                              • TomT
                                TomT last edited by

                                ich kenne zwar jetzt die HM-RC-12 Fernbedienung nicht, aber müsstest du als Trigger nicht den Short_PRESS nehmen anstatt den InstallTest?

                                Mit einer Hilfsvariablen in ioBroker steuere ich die Steckdosen per AlexaAdapter und der ioBroker Cloud.

                                Das ist schon mal der richtige Weg und sollte so funktionieren. 🙂

                                Auch ohne die Integration von Alexa in der Steckdose selbst….

                                Grüße

                                Tom

                                1 Reply Last reply Reply Quote 0
                                • sissiwup
                                  sissiwup last edited by

                                  @TomT:

                                  ich kenne zwar jetzt die HM-RC-12 Fernbedienung nicht, aber müsstest du als Trigger nicht den Short_PRESS nehmen anstatt den InstallTest?

                                  Mit einer Hilfsvariablen in ioBroker steuere ich die Steckdosen per AlexaAdapter und der ioBroker Cloud.

                                  Das ist schon mal der richtige Weg und sollte so funktionieren. 🙂

                                  Auch ohne die Integration von Alexa in der Steckdose selbst….

                                  Grüße

                                  Tom `

                                  Am elegantesten wäre es wohl anstelle der Variablen gleich das SHORT_PRESS zu verwenden.

                                  Wie hast du denn vorher das Skript ausgelöst?

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    thobastian last edited by

                                    Das scheint bei Homematic nicht perfekt zu laufen. Bei mir wird Press.short nicht verändert. Nur install_test.

                                    Schade, aber ich habe noch keinen anderen Weg gefunden.

                                    1 Reply Last reply Reply Quote 0
                                    • TomT
                                      TomT last edited by

                                      ! ````
                                      <xml xmlns="http://www.w3.org/1999/xhtml"><block type="on" id="6mvvt}nUJ86yu]Ll_S(A" x="-37" y="-62"><field name="OID">hm-rpc.0.XXX.1.PRESS_SHORT</field>
                                      <field name="CONDITION">true</field>

                                      <statement name="STATEMENT"><block type="request" id="u^_#`h)3MmPw,=vDt]w7"><mutation with_statement="false"></mutation>
                                          <field name="WITH_STATEMENT">FALSE</field>
                                      
                                          <value name="URL"><shadow type="text" id="7,a3#yQlihV~l_2DjAqC"><field name="TEXT">http://192.168.178.XXX/ON</field></shadow></value></block></statement> 
                                      <next><block type="on" id="}e:c}3m@n1#yFNsIC+1b"><field name="OID">hm-rpc.0.JEE0001XXX.2.PRESS_SHORT</field>
                                          <field name="CONDITION">true</field>
                                      
                                          <statement name="STATEMENT"><block type="request" id="iM!iId]i]GWRW{~_uXg^"><mutation with_statement="false"></mutation>
                                              <field name="WITH_STATEMENT">FALSE</field>
                                      
                                              <value name="URL"><shadow type="text" id="4}0et-av7MoN794U/6ik"><field name="TEXT">http://192.168.178.XXX/OFF</field></shadow></value></block></statement></block></next></block></xml> 
                                      
                                      
                                      Hier der Blockly funktioniert mit einer HM-RC8 bei mir.
                                      
                                      Kannst den Blockly ja mal importieren und mit deinen Geräten verknüpfen…
                                      
                                      Grüße
                                      
                                      Tom
                                      1 Reply Last reply Reply Quote 0
                                      • T
                                        thobastian last edited by

                                        Sch…. Jetzt bekomme ich wieder diese Fehlermeldung "Cannot extract Blockly" :evil:

                                        Was mache ich falsch? und Wie bekomme ich das wieder hin?

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          hike last edited by

                                          ~~DHT11 auslesen

                                          Ich habe ein DHT-11 Modul angeschlossen und die Firmware 1_2_2 neu übersetzt und geflashed.

                                          Leider habe ich nur einmal einen Feuchtigkeits- und einen Temperaturwert bekommen.

                                          Jetzt erhalte ich nur Fehlermeldungen vom DHT11 ` > Waiting for Wifi to connect….....

                                          WL_CONNECTED

                                          IP address: xxx.xxx.xxx.154

                                          HTTP server started

                                          Relay OFF

                                          Reconnecting MQTT...

                                          MQTT Connected...

                                          Failed to read from DHT sensor!

                                          Failed to read from DHT sensor!

                                          Failed to read from DHT sensor!

                                          Failed to read from DHT sensor!

                                          Failed to read from DHT sensor!

                                          Failed to read from DHT sensor!

                                          Failed to read from DHT sensor! `

                                          ![](</s>
                                          <ATTACHMENT 7711_obi_wall_dht11_001.png )
                                          " />

                                          Hat jemand es geschafft den DHT11 ans laufen zu bekommen?

                                          Der DHT22 scheint ja zu laufen, habe aber im Augenblick kein DHT22 Modul.~~~~

                                          1 Reply Last reply Reply Quote 0
                                          • sissiwup
                                            sissiwup last edited by

                                            @hike:

                                            ~~DHT11 auslesen

                                            Ich habe ein DHT-11 Modul angeschlossen und die Firmware 1_2_2 neu übersetzt und geflashed.

                                            Leider habe ich nur einmal einen Feuchtigkeits- und einen Temperaturwert bekommen.

                                            Jetzt erhalte ich nur Fehlermeldungen vom DHT11 ` > Waiting for Wifi to connect….....

                                            WL_CONNECTED

                                            IP address: xxx.xxx.xxx.154

                                            HTTP server started

                                            Relay OFF

                                            Reconnecting MQTT...

                                            MQTT Connected...

                                            Failed to read from DHT sensor!

                                            Failed to read from DHT sensor!

                                            Failed to read from DHT sensor!

                                            Failed to read from DHT sensor!

                                            Failed to read from DHT sensor!

                                            Failed to read from DHT sensor!

                                            Failed to read from DHT sensor! `

                                            ~~![](</s><br/>
                                            Obi_Wall_DHT11_001.pngObi_Wall_DHT11_001.png<br/>
                                            )

                                            Hat jemand es geschafft den DHT11 ans laufen zu bekommen?

                                            Der DHT22 scheint ja zu laufen, habe aber im Augenblick kein DHT22 Modul.~~~~ ` Den define hast du von DHT22 auf DHT11 umgestellt, oder?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            792
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            esp8266 obi steckdose
                                            37
                                            464
                                            132712
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo