Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Easee Wallbox mit iobroker

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Easee Wallbox mit iobroker

Scheduled Pinned Locked Moved ioBroker Allgemein
easeewallboxadapter
529 Posts 61 Posters 141.4k Views 54 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Aiouh

    @newan Hallo, ich wieder. Nachdem das mit dem bluelink so super geklappt hat wollte ich mich nun an die Easee machen. Ich versuche gerade den Adapter zu installieren. Trotz Fehlermeldung wird er "irgendwie" installiert.

    $ ./iobroker install easee
    NPM version: 6.14.10npm install iobroker.easee@0.1.2 --loglevel error --prefix "/opt/iobroker" (System call)
    npm ERR! code ETARGET
    npm ERR! notarget No matching version found for iobroker.easee@0.1.2.
    npm ERR! notarget In most cases you or one of your dependencies are requesting
    npm ERR! notarget a package version that doesn't exist.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /home/iobroker/.npm/_logs/2021-04-02T13_04_12_488Z-debug.log
    ERROR: host.iobroker-vm Cannot install iobroker.easee@0.1.2: 1
    ERROR: process exited with code 25
    

    Instanz anlegen schlägt dann aber fehl :( .

    Command execution: $ ./iobroker add easee --host iobroker-vm
    Done with error: host.iobroker-vm Cannot install iobroker.easee@0.1.2: 1
    
    $ ./iobroker add easee  --host iobroker-vm
    NPM version: 6.14.10
    npm install iobroker.easee@0.1.2 --loglevel error --prefix "/opt/iobroker" (System call)
    npm ERR! code ETARGET
    npm ERR! notarget No matching version found for iobroker.easee@0.1.2.npm ERR! notarget In most cases you or one of your dependencies are requestingnpm ERR! notarget a package version that doesn't exist.npm ERR! A complete log of this run can be found in:npm ERR!     /home/iobroker/.npm/_logs/2021-04-02T13_08_25_467Z-debug.log
    ERROR: host.iobroker-vm Cannot install iobroker.easee@0.1.2: 1
    ERROR: process exited with code 25
    

    Nachtrag: hab gerade gesehen dass die Version 0.1.2 ist. In Github steht 1.0.1 . Angeboten in der ioBroker Info wurde die 0.1.2 als "new" !? Ich nehm mal die von Github

    Klappt auch nicht

    Command execution: $ ./iobroker url "https://github.com/Newan/ioBroker.easee.git" --debug
    Done with error: /opt/iobroker/node_modules/iobroker.js-controller/lib/setup.js:2674 res.forEach(aliveState => { ^TypeError: Cannot read property 'forEach' of undefined at Immediate. (/opt/iobroker/node_modules/iobroker.js-controller/lib/setup.js:2674:21) at processImmediate (internal/timers.js:463:21)
    
    
    NewanN Offline
    NewanN Offline
    Newan
    wrote on last edited by
    #150

    @aiouh installiere mal vom github. Die neuste stable wurde noch nicht übernommen

    A R 3 Replies Last reply
    0
    • NewanN Newan

      @aiouh installiere mal vom github. Die neuste stable wurde noch nicht übernommen

      A Offline
      A Offline
      Aiouh
      wrote on last edited by
      #151

      @newan hab ich versucht, siehe letzte Box vom vorherigen Post. Vielleicht machen die Reste derersten verunglückten Installation Probleme. Kann ich die Reste irgendwie manuell loswerden?

      1 Reply Last reply
      0
      • NewanN Newan

        @aiouh installiere mal vom github. Die neuste stable wurde noch nicht übernommen

        A Offline
        A Offline
        Aiouh
        wrote on last edited by
        #152

        @newan Reboot vom ioBroker Server hat geholfen :o). Ich konnte zwar die Fragmente vom 0.1.2 nicht löschen, das Drüber Installieren vom Github hat jetzt aber geklappt. Alles gut soweit.

        NewanN 1 Reply Last reply
        0
        • A Aiouh

          @newan Reboot vom ioBroker Server hat geholfen :o). Ich konnte zwar die Fragmente vom 0.1.2 nicht löschen, das Drüber Installieren vom Github hat jetzt aber geklappt. Alles gut soweit.

          NewanN Offline
          NewanN Offline
          Newan
          wrote on last edited by
          #153

          @aiouh 👍

          1 Reply Last reply
          0
          • K Offline
            K Offline
            Kun
            wrote on last edited by
            #154

            Ich hab mir den Adapter auch mal installiert.

            Funktioniert auf Anhieb. Danke @Newan

            Habe noch eine Frage dazu. Kann ja über den Adapter mit dem PhasenMode zwischen 1er Phase, 3 Phasen oder (2) automatischem Modus wählen. Kann ich der Easee auch sagen wenn sie 2 Phasen verwenden soll?

            Oder stehe ich gerade auf dem Schlauch und es ist nicht notwendig zum "genauen" Einstellen der Ladestärke?

            1 Reply Last reply
            0
            • NewanN Offline
              NewanN Offline
              Newan
              wrote on last edited by
              #155

              @kun Schau hier mal 2-3 Beiträge weiter oben. Man begrenzt eher die Ampere als die Phasen.

              K 1 Reply Last reply
              0
              • NewanN Newan

                @kun Schau hier mal 2-3 Beiträge weiter oben. Man begrenzt eher die Ampere als die Phasen.

                K Offline
                K Offline
                Kun
                wrote on last edited by
                #156

                @newan Das stimmt und habe ich verstanden.
                Aber wenn ich 3 Phasen mit 1A begrenze habe ich 690W. Wenn ich 1Phase mit 1A nehme habe ich 230W. Da fehlt mir der 460W Schritt ja eigentlich. (Zahlen jetzt nur Beispielhaft)

                Dachte nur so, wenn man die Phasen begrenzen kann, warum fehlt die Einstellung fürs 2 phasige Laden..

                Bekomme eh "nur" nen E-UP, der beherrscht kein 3 phasiges AC Laden, da ist bei 2phasig Schluss.

                Trotzdem vielen Dank, sobald ich ein E-Auto zum testen habe kann ich mich an ein Script machen.

                NewanN 1 Reply Last reply
                -1
                • K Kun

                  @newan Das stimmt und habe ich verstanden.
                  Aber wenn ich 3 Phasen mit 1A begrenze habe ich 690W. Wenn ich 1Phase mit 1A nehme habe ich 230W. Da fehlt mir der 460W Schritt ja eigentlich. (Zahlen jetzt nur Beispielhaft)

                  Dachte nur so, wenn man die Phasen begrenzen kann, warum fehlt die Einstellung fürs 2 phasige Laden..

                  Bekomme eh "nur" nen E-UP, der beherrscht kein 3 phasiges AC Laden, da ist bei 2phasig Schluss.

                  Trotzdem vielen Dank, sobald ich ein E-Auto zum testen habe kann ich mich an ein Script machen.

                  NewanN Offline
                  NewanN Offline
                  Newan
                  wrote on last edited by
                  #157

                  @kun Ich kann nur das angeben was Easee macht. Schreib denen eine Mail und wir bekommen das Ergebnis in den Adapter!

                  K 1 Reply Last reply
                  0
                  • NewanN Newan

                    @kun Ich kann nur das angeben was Easee macht. Schreib denen eine Mail und wir bekommen das Ergebnis in den Adapter!

                    K Offline
                    K Offline
                    Kun
                    wrote on last edited by
                    #158

                    @newan Alles gut :-)

                    Ist nur fürs Verständnis. Ich bin froh das du dir die Mühe machst und uns einen Adapter gebaut hast :-)

                    S 1 Reply Last reply
                    0
                    • K Kun

                      @newan Alles gut :-)

                      Ist nur fürs Verständnis. Ich bin froh das du dir die Mühe machst und uns einen Adapter gebaut hast :-)

                      S Offline
                      S Offline
                      souhl
                      wrote on last edited by
                      #159

                      Nutze den Adapter um die Easee über ioBroker in die openWB zu bekommen. Mit der Hoffnung, die Easee dann darüber zum Überschussladen nutzen zu können. Über MQTT die Werte Richtung openWB schicken geht. Die openWB gibt eine "Stromvorgabe" in A zur Anpassung der Ladeleistung zurück. Das war es aber auch schon.

                      @stonemaan Wenn ich es richtig verstehe, dann muss ich diese an den Easee Adapter via
                      circuitMaxCurrentP1 an alle drei Phasen weitergeben. dynamicChargerCurrent scheint im Moment nicht zu funktionieren, oder?

                      Gefühlt fasst zu einfach..

                      Was noch fehlt ist die 1/3 Phasenumschaltung.

                      hier mal das script. Gebe einfach nur die Werte weiter:

                      // Anbindung ############
                      // openWB/lp/1/AConfigured - Stromvorgabe in A
                      
                      on({id: "mqtt.1.openWB.lp.1.AConfigured", change: 'any'},  (obj) => {
                          console.log("OpenWB setzt Stromvorgabe A: "+getState("mqtt.1.openWB.lp.1.AConfigured").val);
                          //setState('easee.0.XXXXX.config.dynamicChargerCurrent',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                      setState('easee.0.XXXXX.config.circuitMaxCurrentP1',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                      setState('easee.0.XXXXX.config.circuitMaxCurrentP2',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                      setState('easee.0.XXXXX.config.circuitMaxCurrentP3',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                      });
                      
                      // Fahrzeug angesteckt an openWB schicken
                      // openWB/set/lp/1/plugStat - Status, ob ein Fahrzeug angesteckt ist, nur 0 (nein) oder 1 (ja)
                      on({id: "tesla-motors.0.chargeState.charging_state", change: 'any'},  (obj) => {
                          console.log("OpenWB Fahrzeug gesteckt schicken: "+getState("tesla-motors.0.chargeState.charging_state").val);
                          switch (getState("tesla-motors.0.chargeState.charging_state").val)
                          {
                              case "Stopped":
                                  sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                  break;
                              case "Charging":
                                  sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                  break;
                              default:
                                  sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 0});
                                  break;
                          }
                      });
                      
                      // Fahrzeug wird gerade geladen an openWB schicken
                      // openWB/set/lp/1/chargeStat
                      on({id: "easee.0.XXXXX.status.outputCurrent", change: 'any'},  (obj) => {
                          console.log("OpenWB Fahrzeug lädt schicken: "+getState("easee.0.XXXXX.status.outputCurrent").val);
                          if (getState("easee.0.XXXXX.status.outputCurrent").val>0)
                          {
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 1});
                          } else {
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 0});
                          } 
                      });
                      
                      
                      // ##############################
                      // Ladeleistungmodul ############
                      
                      /*
                      Optional zusätzlich:
                      openWB/set/lp/1/VPhase1 Spannung Phase 1, float, Punkt als Trenner, nur positiv
                      openWB/set/lp/1/VPhase2 Spannung Phase 2, float, Punkt als Trenner, nur positiv
                      openWB/set/lp/1/VPhase3 Spannung Phase 3, float, Punkt als Trenner, nur positiv
                      openWB/set/lp/1/HzFrequenz Netzfrequenz, float, Punkt als Trenner, nur positiv
                      */
                      
                      // Ladeleistung in Watt an OpenWB senden
                      // openWB/set/lp/1/W Ladeleistung in Watt, int, positiv
                      on({id: "easee.0.XXXXX.status.totalPower", change: 'any'},  (obj) => {
                          console.log("OpenWB Ladeleistung in Watt: "+parseInt(getState("easee.0.XXXXX.status.totalPower").val));
                          sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/W', message: parseInt(getState("easee.0.XXXXX.status.totalPower").val*1000)});
                      });
                      
                      // Zählerstand in Watt an OpenWB senden
                      // openWB/set/lp/1/kWhCounter Zählerstand in kWh, float, Punkt als Trenner, nur positiv
                      on({id: "easee.0.XXXXX.status.lifetimeEnergy", change: 'any'},  (obj) => {
                          console.log("OpenWB Zählerstand in Watt: "+getState("easee.0.XXXXX.status.lifetimeEnergy").val);
                          sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/kWhCounter', message: parseFloat(getState("easee.0.XXXXX.status.lifetimeEnergy").val)});
                      });
                      
                      // Strom Phase 1 an OpenWB senden
                      // openWB/set/lp/1/APhase1 Strom Phase 1, float, Punkt als Trenner, nur positiv
                      on({id: "easee.0.XXXXX.status.inCurrentT3", change: 'any'},  (obj) => {
                          console.log("OpenWB Strom Phase 1 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT3").val);
                          sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase1', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT3").val)});
                      });
                      
                      // Strom Phase 2 an OpenWB senden
                      // openWB/set/lp/1/APhase2 Strom Phase 2, float, Punkt als Trenner, nur positiv
                      on({id: "easee.0.XXXXX.status.inCurrentT4", change: 'any'},  (obj) => {
                          console.log("OpenWB Strom Phase 2 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT4").val);
                          sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase2', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT4").val)});
                      });
                      
                      // Strom Phase 3 an OpenWB senden
                      // openWB/set/lp/1/APhase3 Strom Phase 3, float, Punkt als Trenner, nur positiv
                      on({id: "easee.0.XXXXX.status.inCurrentT5", change: 'any'},  (obj) => {
                          console.log("OpenWB Strom Phase 3 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT5").val);
                          sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase3', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT5").val)});
                      });
                      
                      
                      // ######################
                      // SOC Modul ############
                      
                      // SoC an OpenWB senden
                      on({id: "tesla-motors.0.chargeState.battery_level", change: 'any'},  (obj) => {
                          console.log("OpenWB SoC schreiben: "+getState("tesla-motors.0.chargeState.battery_level").val);
                          sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/%Soc', message: getState("tesla-motors.0.chargeState.battery_level").val});
                      });
                      
                      
                      NewanN S K 3 Replies Last reply
                      0
                      • S souhl

                        Nutze den Adapter um die Easee über ioBroker in die openWB zu bekommen. Mit der Hoffnung, die Easee dann darüber zum Überschussladen nutzen zu können. Über MQTT die Werte Richtung openWB schicken geht. Die openWB gibt eine "Stromvorgabe" in A zur Anpassung der Ladeleistung zurück. Das war es aber auch schon.

                        @stonemaan Wenn ich es richtig verstehe, dann muss ich diese an den Easee Adapter via
                        circuitMaxCurrentP1 an alle drei Phasen weitergeben. dynamicChargerCurrent scheint im Moment nicht zu funktionieren, oder?

                        Gefühlt fasst zu einfach..

                        Was noch fehlt ist die 1/3 Phasenumschaltung.

                        hier mal das script. Gebe einfach nur die Werte weiter:

                        // Anbindung ############
                        // openWB/lp/1/AConfigured - Stromvorgabe in A
                        
                        on({id: "mqtt.1.openWB.lp.1.AConfigured", change: 'any'},  (obj) => {
                            console.log("OpenWB setzt Stromvorgabe A: "+getState("mqtt.1.openWB.lp.1.AConfigured").val);
                            //setState('easee.0.XXXXX.config.dynamicChargerCurrent',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                        setState('easee.0.XXXXX.config.circuitMaxCurrentP1',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                        setState('easee.0.XXXXX.config.circuitMaxCurrentP2',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                        setState('easee.0.XXXXX.config.circuitMaxCurrentP3',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                        });
                        
                        // Fahrzeug angesteckt an openWB schicken
                        // openWB/set/lp/1/plugStat - Status, ob ein Fahrzeug angesteckt ist, nur 0 (nein) oder 1 (ja)
                        on({id: "tesla-motors.0.chargeState.charging_state", change: 'any'},  (obj) => {
                            console.log("OpenWB Fahrzeug gesteckt schicken: "+getState("tesla-motors.0.chargeState.charging_state").val);
                            switch (getState("tesla-motors.0.chargeState.charging_state").val)
                            {
                                case "Stopped":
                                    sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                    break;
                                case "Charging":
                                    sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                    break;
                                default:
                                    sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 0});
                                    break;
                            }
                        });
                        
                        // Fahrzeug wird gerade geladen an openWB schicken
                        // openWB/set/lp/1/chargeStat
                        on({id: "easee.0.XXXXX.status.outputCurrent", change: 'any'},  (obj) => {
                            console.log("OpenWB Fahrzeug lädt schicken: "+getState("easee.0.XXXXX.status.outputCurrent").val);
                            if (getState("easee.0.XXXXX.status.outputCurrent").val>0)
                            {
                                sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 1});
                            } else {
                                sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 0});
                            } 
                        });
                        
                        
                        // ##############################
                        // Ladeleistungmodul ############
                        
                        /*
                        Optional zusätzlich:
                        openWB/set/lp/1/VPhase1 Spannung Phase 1, float, Punkt als Trenner, nur positiv
                        openWB/set/lp/1/VPhase2 Spannung Phase 2, float, Punkt als Trenner, nur positiv
                        openWB/set/lp/1/VPhase3 Spannung Phase 3, float, Punkt als Trenner, nur positiv
                        openWB/set/lp/1/HzFrequenz Netzfrequenz, float, Punkt als Trenner, nur positiv
                        */
                        
                        // Ladeleistung in Watt an OpenWB senden
                        // openWB/set/lp/1/W Ladeleistung in Watt, int, positiv
                        on({id: "easee.0.XXXXX.status.totalPower", change: 'any'},  (obj) => {
                            console.log("OpenWB Ladeleistung in Watt: "+parseInt(getState("easee.0.XXXXX.status.totalPower").val));
                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/W', message: parseInt(getState("easee.0.XXXXX.status.totalPower").val*1000)});
                        });
                        
                        // Zählerstand in Watt an OpenWB senden
                        // openWB/set/lp/1/kWhCounter Zählerstand in kWh, float, Punkt als Trenner, nur positiv
                        on({id: "easee.0.XXXXX.status.lifetimeEnergy", change: 'any'},  (obj) => {
                            console.log("OpenWB Zählerstand in Watt: "+getState("easee.0.XXXXX.status.lifetimeEnergy").val);
                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/kWhCounter', message: parseFloat(getState("easee.0.XXXXX.status.lifetimeEnergy").val)});
                        });
                        
                        // Strom Phase 1 an OpenWB senden
                        // openWB/set/lp/1/APhase1 Strom Phase 1, float, Punkt als Trenner, nur positiv
                        on({id: "easee.0.XXXXX.status.inCurrentT3", change: 'any'},  (obj) => {
                            console.log("OpenWB Strom Phase 1 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT3").val);
                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase1', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT3").val)});
                        });
                        
                        // Strom Phase 2 an OpenWB senden
                        // openWB/set/lp/1/APhase2 Strom Phase 2, float, Punkt als Trenner, nur positiv
                        on({id: "easee.0.XXXXX.status.inCurrentT4", change: 'any'},  (obj) => {
                            console.log("OpenWB Strom Phase 2 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT4").val);
                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase2', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT4").val)});
                        });
                        
                        // Strom Phase 3 an OpenWB senden
                        // openWB/set/lp/1/APhase3 Strom Phase 3, float, Punkt als Trenner, nur positiv
                        on({id: "easee.0.XXXXX.status.inCurrentT5", change: 'any'},  (obj) => {
                            console.log("OpenWB Strom Phase 3 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT5").val);
                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase3', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT5").val)});
                        });
                        
                        
                        // ######################
                        // SOC Modul ############
                        
                        // SoC an OpenWB senden
                        on({id: "tesla-motors.0.chargeState.battery_level", change: 'any'},  (obj) => {
                            console.log("OpenWB SoC schreiben: "+getState("tesla-motors.0.chargeState.battery_level").val);
                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/%Soc', message: getState("tesla-motors.0.chargeState.battery_level").val});
                        });
                        
                        
                        NewanN Offline
                        NewanN Offline
                        Newan
                        wrote on last edited by
                        #160

                        @souhl Setze mal circuitMaxCurrentP1 auf den Wert den du übergeben bekommst

                        S 1 Reply Last reply
                        0
                        • S souhl

                          Nutze den Adapter um die Easee über ioBroker in die openWB zu bekommen. Mit der Hoffnung, die Easee dann darüber zum Überschussladen nutzen zu können. Über MQTT die Werte Richtung openWB schicken geht. Die openWB gibt eine "Stromvorgabe" in A zur Anpassung der Ladeleistung zurück. Das war es aber auch schon.

                          @stonemaan Wenn ich es richtig verstehe, dann muss ich diese an den Easee Adapter via
                          circuitMaxCurrentP1 an alle drei Phasen weitergeben. dynamicChargerCurrent scheint im Moment nicht zu funktionieren, oder?

                          Gefühlt fasst zu einfach..

                          Was noch fehlt ist die 1/3 Phasenumschaltung.

                          hier mal das script. Gebe einfach nur die Werte weiter:

                          // Anbindung ############
                          // openWB/lp/1/AConfigured - Stromvorgabe in A
                          
                          on({id: "mqtt.1.openWB.lp.1.AConfigured", change: 'any'},  (obj) => {
                              console.log("OpenWB setzt Stromvorgabe A: "+getState("mqtt.1.openWB.lp.1.AConfigured").val);
                              //setState('easee.0.XXXXX.config.dynamicChargerCurrent',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                          setState('easee.0.XXXXX.config.circuitMaxCurrentP1',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                          setState('easee.0.XXXXX.config.circuitMaxCurrentP2',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                          setState('easee.0.XXXXX.config.circuitMaxCurrentP3',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                          });
                          
                          // Fahrzeug angesteckt an openWB schicken
                          // openWB/set/lp/1/plugStat - Status, ob ein Fahrzeug angesteckt ist, nur 0 (nein) oder 1 (ja)
                          on({id: "tesla-motors.0.chargeState.charging_state", change: 'any'},  (obj) => {
                              console.log("OpenWB Fahrzeug gesteckt schicken: "+getState("tesla-motors.0.chargeState.charging_state").val);
                              switch (getState("tesla-motors.0.chargeState.charging_state").val)
                              {
                                  case "Stopped":
                                      sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                      break;
                                  case "Charging":
                                      sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                      break;
                                  default:
                                      sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 0});
                                      break;
                              }
                          });
                          
                          // Fahrzeug wird gerade geladen an openWB schicken
                          // openWB/set/lp/1/chargeStat
                          on({id: "easee.0.XXXXX.status.outputCurrent", change: 'any'},  (obj) => {
                              console.log("OpenWB Fahrzeug lädt schicken: "+getState("easee.0.XXXXX.status.outputCurrent").val);
                              if (getState("easee.0.XXXXX.status.outputCurrent").val>0)
                              {
                                  sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 1});
                              } else {
                                  sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 0});
                              } 
                          });
                          
                          
                          // ##############################
                          // Ladeleistungmodul ############
                          
                          /*
                          Optional zusätzlich:
                          openWB/set/lp/1/VPhase1 Spannung Phase 1, float, Punkt als Trenner, nur positiv
                          openWB/set/lp/1/VPhase2 Spannung Phase 2, float, Punkt als Trenner, nur positiv
                          openWB/set/lp/1/VPhase3 Spannung Phase 3, float, Punkt als Trenner, nur positiv
                          openWB/set/lp/1/HzFrequenz Netzfrequenz, float, Punkt als Trenner, nur positiv
                          */
                          
                          // Ladeleistung in Watt an OpenWB senden
                          // openWB/set/lp/1/W Ladeleistung in Watt, int, positiv
                          on({id: "easee.0.XXXXX.status.totalPower", change: 'any'},  (obj) => {
                              console.log("OpenWB Ladeleistung in Watt: "+parseInt(getState("easee.0.XXXXX.status.totalPower").val));
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/W', message: parseInt(getState("easee.0.XXXXX.status.totalPower").val*1000)});
                          });
                          
                          // Zählerstand in Watt an OpenWB senden
                          // openWB/set/lp/1/kWhCounter Zählerstand in kWh, float, Punkt als Trenner, nur positiv
                          on({id: "easee.0.XXXXX.status.lifetimeEnergy", change: 'any'},  (obj) => {
                              console.log("OpenWB Zählerstand in Watt: "+getState("easee.0.XXXXX.status.lifetimeEnergy").val);
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/kWhCounter', message: parseFloat(getState("easee.0.XXXXX.status.lifetimeEnergy").val)});
                          });
                          
                          // Strom Phase 1 an OpenWB senden
                          // openWB/set/lp/1/APhase1 Strom Phase 1, float, Punkt als Trenner, nur positiv
                          on({id: "easee.0.XXXXX.status.inCurrentT3", change: 'any'},  (obj) => {
                              console.log("OpenWB Strom Phase 1 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT3").val);
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase1', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT3").val)});
                          });
                          
                          // Strom Phase 2 an OpenWB senden
                          // openWB/set/lp/1/APhase2 Strom Phase 2, float, Punkt als Trenner, nur positiv
                          on({id: "easee.0.XXXXX.status.inCurrentT4", change: 'any'},  (obj) => {
                              console.log("OpenWB Strom Phase 2 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT4").val);
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase2', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT4").val)});
                          });
                          
                          // Strom Phase 3 an OpenWB senden
                          // openWB/set/lp/1/APhase3 Strom Phase 3, float, Punkt als Trenner, nur positiv
                          on({id: "easee.0.XXXXX.status.inCurrentT5", change: 'any'},  (obj) => {
                              console.log("OpenWB Strom Phase 3 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT5").val);
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase3', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT5").val)});
                          });
                          
                          
                          // ######################
                          // SOC Modul ############
                          
                          // SoC an OpenWB senden
                          on({id: "tesla-motors.0.chargeState.battery_level", change: 'any'},  (obj) => {
                              console.log("OpenWB SoC schreiben: "+getState("tesla-motors.0.chargeState.battery_level").val);
                              sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/%Soc', message: getState("tesla-motors.0.chargeState.battery_level").val});
                          });
                          
                          
                          S Offline
                          S Offline
                          stonemaan
                          wrote on last edited by
                          #161

                          @souhl
                          genau. ich nutze momentan circuitMaxCurrent. Wenn du P1 änderst, ändern sich P2 und P3 automatisch auch. Du kannst dir also sparen, sie einzeln anzusteuern. Warum Easee es nicht schafft, die dynamicChargerCurrent wieder ans laufen zu bekommen, ist mir ein Rätsel. Denn wenn man mehrere Easee nutzt, kann kommt man mit der CircuitmaxCurrent an seine Grenzen.

                          1 Reply Last reply
                          0
                          • NewanN Newan

                            @souhl Setze mal circuitMaxCurrentP1 auf den Wert den du übergeben bekommst

                            S Offline
                            S Offline
                            souhl
                            wrote on last edited by
                            #162

                            @newan Ja, super, das geht. Lediglich die Werte springen wieder auf 16 beim nächsten Refresh (bug?). Das Laden bleibt dann aber bei den z.B. 8A auf den 3 Phasen.

                            NewanN 1 Reply Last reply
                            0
                            • S souhl

                              @newan Ja, super, das geht. Lediglich die Werte springen wieder auf 16 beim nächsten Refresh (bug?). Das Laden bleibt dann aber bei den z.B. 8A auf den 3 Phasen.

                              NewanN Offline
                              NewanN Offline
                              Newan
                              wrote on last edited by
                              #163

                              @souhl Was steh dann in der App. Nehme eigentlich immer nur die livedaten von der API

                              1 Reply Last reply
                              0
                              • NewanN Newan

                                @aiouh installiere mal vom github. Die neuste stable wurde noch nicht übernommen

                                R Offline
                                R Offline
                                robson
                                wrote on last edited by
                                #164

                                @aiouh sagte in Easee Wallbox mit iobroker:

                                $ ./iobroker add easee  --host iobroker-vm
                                NPM version: 6.14.10
                                npm install iobroker.easee@0.1.2 --loglevel error --prefix "/opt/iobroker" (System call)
                                npm ERR! code ETARGET
                                npm ERR! notarget No matching version found for iobroker.easee@0.1.2.npm ERR! notarget In most cases you or one of your dependencies are requestingnpm ERR! notarget a package version that doesn't exist.npm ERR! A complete log of this run can be found in:npm ERR!     /home/iobroker/.npm/_logs/2021-04-02T13_08_25_467Z-debug.log
                                ERROR: host.iobroker-vm Cannot install iobroker.easee@0.1.2: 1
                                ERROR: process exited with code 25
                                

                                @newan sagte in Easee Wallbox mit iobroker:

                                @aiouh installiere mal vom github. Die neuste stable wurde noch nicht übernommen

                                Hallo zusammen,

                                ich scheine denselben Fehler wie @Aiouh zu haben. Ich habe versucht Version 0.1.2 zu installieren. Die Installation endete mit Code 25.
                                Daraufhin habe ich über Github die neueste Version installiert. Diese scheint auch nun installiert zu sein, jedoch sehe ich keine Instanz.

                                Daraufhin habe ich noch mal alles deinstalliert, einen Reboot durchgeführt und noch mals über Githun installiert. Wieder lief die Installation durch, aber wieder sehe ich keine Instanz.

                                Was kann ich noch tun?

                                A 1 Reply Last reply
                                0
                                • R robson

                                  @aiouh sagte in Easee Wallbox mit iobroker:

                                  $ ./iobroker add easee  --host iobroker-vm
                                  NPM version: 6.14.10
                                  npm install iobroker.easee@0.1.2 --loglevel error --prefix "/opt/iobroker" (System call)
                                  npm ERR! code ETARGET
                                  npm ERR! notarget No matching version found for iobroker.easee@0.1.2.npm ERR! notarget In most cases you or one of your dependencies are requestingnpm ERR! notarget a package version that doesn't exist.npm ERR! A complete log of this run can be found in:npm ERR!     /home/iobroker/.npm/_logs/2021-04-02T13_08_25_467Z-debug.log
                                  ERROR: host.iobroker-vm Cannot install iobroker.easee@0.1.2: 1
                                  ERROR: process exited with code 25
                                  

                                  @newan sagte in Easee Wallbox mit iobroker:

                                  @aiouh installiere mal vom github. Die neuste stable wurde noch nicht übernommen

                                  Hallo zusammen,

                                  ich scheine denselben Fehler wie @Aiouh zu haben. Ich habe versucht Version 0.1.2 zu installieren. Die Installation endete mit Code 25.
                                  Daraufhin habe ich über Github die neueste Version installiert. Diese scheint auch nun installiert zu sein, jedoch sehe ich keine Instanz.

                                  Daraufhin habe ich noch mal alles deinstalliert, einen Reboot durchgeführt und noch mals über Githun installiert. Wieder lief die Installation durch, aber wieder sehe ich keine Instanz.

                                  Was kann ich noch tun?

                                  A Offline
                                  A Offline
                                  Aiouh
                                  wrote on last edited by Aiouh
                                  #165

                                  @robson Du musst die Instanz wahrscheinlich selbst anlegen, da diese nicht automatisch angelegt wird. War zumindest bei mir auch so. Einfach aufs "+" klicken
                                  168e3403-5c1c-449e-a56f-dd755376f67c-image.png

                                  NewanN R 2 Replies Last reply
                                  1
                                  • A Aiouh

                                    @robson Du musst die Instanz wahrscheinlich selbst anlegen, da diese nicht automatisch angelegt wird. War zumindest bei mir auch so. Einfach aufs "+" klicken
                                    168e3403-5c1c-449e-a56f-dd755376f67c-image.png

                                    NewanN Offline
                                    NewanN Offline
                                    Newan
                                    wrote on last edited by
                                    #166

                                    Stable ist beantragt aber noch nicht durch. Arbeite dran. Solange die von github verwenden

                                    1 Reply Last reply
                                    1
                                    • A Aiouh

                                      @robson Du musst die Instanz wahrscheinlich selbst anlegen, da diese nicht automatisch angelegt wird. War zumindest bei mir auch so. Einfach aufs "+" klicken
                                      168e3403-5c1c-449e-a56f-dd755376f67c-image.png

                                      R Offline
                                      R Offline
                                      robson
                                      wrote on last edited by robson
                                      #167

                                      @aiouh sagte in Easee Wallbox mit iobroker:

                                      @robson Du musst die Instanz wahrscheinlich selbst anlegen, da diese nicht automatisch angelegt wird. War zumindest bei mir auch so. Einfach aufs "+" klicken
                                      168e3403-5c1c-449e-a56f-dd755376f67c-image.png

                                      Danke für den Tipp. Das kannte ich so noch nicht. Hat auf jeden Fall funktioniert :blush: :+1:

                                      1 Reply Last reply
                                      0
                                      • S souhl

                                        Nutze den Adapter um die Easee über ioBroker in die openWB zu bekommen. Mit der Hoffnung, die Easee dann darüber zum Überschussladen nutzen zu können. Über MQTT die Werte Richtung openWB schicken geht. Die openWB gibt eine "Stromvorgabe" in A zur Anpassung der Ladeleistung zurück. Das war es aber auch schon.

                                        @stonemaan Wenn ich es richtig verstehe, dann muss ich diese an den Easee Adapter via
                                        circuitMaxCurrentP1 an alle drei Phasen weitergeben. dynamicChargerCurrent scheint im Moment nicht zu funktionieren, oder?

                                        Gefühlt fasst zu einfach..

                                        Was noch fehlt ist die 1/3 Phasenumschaltung.

                                        hier mal das script. Gebe einfach nur die Werte weiter:

                                        // Anbindung ############
                                        // openWB/lp/1/AConfigured - Stromvorgabe in A
                                        
                                        on({id: "mqtt.1.openWB.lp.1.AConfigured", change: 'any'},  (obj) => {
                                            console.log("OpenWB setzt Stromvorgabe A: "+getState("mqtt.1.openWB.lp.1.AConfigured").val);
                                            //setState('easee.0.XXXXX.config.dynamicChargerCurrent',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                                        setState('easee.0.XXXXX.config.circuitMaxCurrentP1',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                                        setState('easee.0.XXXXX.config.circuitMaxCurrentP2',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                                        setState('easee.0.XXXXX.config.circuitMaxCurrentP3',getState("mqtt.1.openWB.lp.1.AConfigured").val);
                                        });
                                        
                                        // Fahrzeug angesteckt an openWB schicken
                                        // openWB/set/lp/1/plugStat - Status, ob ein Fahrzeug angesteckt ist, nur 0 (nein) oder 1 (ja)
                                        on({id: "tesla-motors.0.chargeState.charging_state", change: 'any'},  (obj) => {
                                            console.log("OpenWB Fahrzeug gesteckt schicken: "+getState("tesla-motors.0.chargeState.charging_state").val);
                                            switch (getState("tesla-motors.0.chargeState.charging_state").val)
                                            {
                                                case "Stopped":
                                                    sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                                    break;
                                                case "Charging":
                                                    sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 1});
                                                    break;
                                                default:
                                                    sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/plugStat', message: 0});
                                                    break;
                                            }
                                        });
                                        
                                        // Fahrzeug wird gerade geladen an openWB schicken
                                        // openWB/set/lp/1/chargeStat
                                        on({id: "easee.0.XXXXX.status.outputCurrent", change: 'any'},  (obj) => {
                                            console.log("OpenWB Fahrzeug lädt schicken: "+getState("easee.0.XXXXX.status.outputCurrent").val);
                                            if (getState("easee.0.XXXXX.status.outputCurrent").val>0)
                                            {
                                                sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 1});
                                            } else {
                                                sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/chargeStat', message: 0});
                                            } 
                                        });
                                        
                                        
                                        // ##############################
                                        // Ladeleistungmodul ############
                                        
                                        /*
                                        Optional zusätzlich:
                                        openWB/set/lp/1/VPhase1 Spannung Phase 1, float, Punkt als Trenner, nur positiv
                                        openWB/set/lp/1/VPhase2 Spannung Phase 2, float, Punkt als Trenner, nur positiv
                                        openWB/set/lp/1/VPhase3 Spannung Phase 3, float, Punkt als Trenner, nur positiv
                                        openWB/set/lp/1/HzFrequenz Netzfrequenz, float, Punkt als Trenner, nur positiv
                                        */
                                        
                                        // Ladeleistung in Watt an OpenWB senden
                                        // openWB/set/lp/1/W Ladeleistung in Watt, int, positiv
                                        on({id: "easee.0.XXXXX.status.totalPower", change: 'any'},  (obj) => {
                                            console.log("OpenWB Ladeleistung in Watt: "+parseInt(getState("easee.0.XXXXX.status.totalPower").val));
                                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/W', message: parseInt(getState("easee.0.XXXXX.status.totalPower").val*1000)});
                                        });
                                        
                                        // Zählerstand in Watt an OpenWB senden
                                        // openWB/set/lp/1/kWhCounter Zählerstand in kWh, float, Punkt als Trenner, nur positiv
                                        on({id: "easee.0.XXXXX.status.lifetimeEnergy", change: 'any'},  (obj) => {
                                            console.log("OpenWB Zählerstand in Watt: "+getState("easee.0.XXXXX.status.lifetimeEnergy").val);
                                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/kWhCounter', message: parseFloat(getState("easee.0.XXXXX.status.lifetimeEnergy").val)});
                                        });
                                        
                                        // Strom Phase 1 an OpenWB senden
                                        // openWB/set/lp/1/APhase1 Strom Phase 1, float, Punkt als Trenner, nur positiv
                                        on({id: "easee.0.XXXXX.status.inCurrentT3", change: 'any'},  (obj) => {
                                            console.log("OpenWB Strom Phase 1 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT3").val);
                                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase1', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT3").val)});
                                        });
                                        
                                        // Strom Phase 2 an OpenWB senden
                                        // openWB/set/lp/1/APhase2 Strom Phase 2, float, Punkt als Trenner, nur positiv
                                        on({id: "easee.0.XXXXX.status.inCurrentT4", change: 'any'},  (obj) => {
                                            console.log("OpenWB Strom Phase 2 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT4").val);
                                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase2', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT4").val)});
                                        });
                                        
                                        // Strom Phase 3 an OpenWB senden
                                        // openWB/set/lp/1/APhase3 Strom Phase 3, float, Punkt als Trenner, nur positiv
                                        on({id: "easee.0.XXXXX.status.inCurrentT5", change: 'any'},  (obj) => {
                                            console.log("OpenWB Strom Phase 3 an OpenWB senden: "+getState("easee.0.XXXXX.status.inCurrentT5").val);
                                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/APhase3', message: parseFloat(getState("easee.0.XXXXX.status.inCurrentT5").val)});
                                        });
                                        
                                        
                                        // ######################
                                        // SOC Modul ############
                                        
                                        // SoC an OpenWB senden
                                        on({id: "tesla-motors.0.chargeState.battery_level", change: 'any'},  (obj) => {
                                            console.log("OpenWB SoC schreiben: "+getState("tesla-motors.0.chargeState.battery_level").val);
                                            sendTo('mqtt.1', 'sendMessage2Client', {topic: 'openWB/set/lp/1/%Soc', message: getState("tesla-motors.0.chargeState.battery_level").val});
                                        });
                                        
                                        
                                        K Offline
                                        K Offline
                                        k_b
                                        wrote on last edited by
                                        #168

                                        @souhl
                                        Sorry, ist vielleicht eine Anfängerfrage ...:
                                        Seht Ihr eine Möglichkeit den Status "car connected" über die easee-cloud zu erhalten (und damit - wenn man auf SoC verzichten würde - von den Auto-Adaptern unabhängig zu werden)?
                                        In der Doku der easee-API habe ich nichts gefunden, aber andere "Kollegen" scheinen hier einen Weg gefunden zu haben (z.B. als Feature in einer homey-app: https://community.athom.com/t/app-easee-charger/31647 bzw. auf Github https://github.com/ricott/homey-no.easee)

                                        K 1 Reply Last reply
                                        0
                                        • K k_b

                                          @souhl
                                          Sorry, ist vielleicht eine Anfängerfrage ...:
                                          Seht Ihr eine Möglichkeit den Status "car connected" über die easee-cloud zu erhalten (und damit - wenn man auf SoC verzichten würde - von den Auto-Adaptern unabhängig zu werden)?
                                          In der Doku der easee-API habe ich nichts gefunden, aber andere "Kollegen" scheinen hier einen Weg gefunden zu haben (z.B. als Feature in einer homey-app: https://community.athom.com/t/app-easee-charger/31647 bzw. auf Github https://github.com/ricott/homey-no.easee)

                                          K Offline
                                          K Offline
                                          K_o_bold
                                          wrote on last edited by
                                          #169

                                          @k_b ,

                                          es gibt den chargerOpMode, damit kannst du erkennen ob ein Auto angeschlossen ist.

                                          1= KAbel nicht gesteckt
                                          2=Kabel gesteckt
                                          3=Ladevorgang aktiv
                                          4=Ladevorgang beendet

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          570

                                          Online

                                          32.6k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe