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. Blockly
  5. Roomba Adapter --> homematic steuern

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    201

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

Roomba Adapter --> homematic steuern

Geplant Angeheftet Gesperrt Verschoben Blockly
7 Beiträge 2 Kommentatoren 442 Aufrufe 1 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.
  • H Offline
    H Offline
    Hugo Oberstein
    schrieb am zuletzt editiert von
    #1

    Hallo Zusammen,
    ich bin absoluter Neuling in Iobroker und versuche mich gerade mit den Blocky scripten.
    Nur leider scheitere ich an den Blocky scripten.

    Ich habe zwei Roomba Roboter zu Hause, die lustig vor sich hin saugen. Nur lösen sie dabei durch die Bewegungsmelder die Alarmanlage aus.

    Alarmanlage wird über die Homematic gesteuert, der Roomba über die App. Ich habe beides im Iobroker eingebunden und sehe unter Objekte meine beiden Dinge..
    iobroker roomba.PNG

    {
      "common": {
        "name": "Current status of the robot",
        "role": "text",
        "type": "string",
        "write": false,
        "custom": {
          "influxdb.0": {
            "enabled": true,
            "storageType": "",
            "aliasId": "Otto-OG",
            "changesOnly": true,
            "debounce": 0,
            "changesRelogInterval": 0,
            "changesMinDelta": 0
          }
        }
      },
      "type": "state",
      "native": {},
      "_id": "roomba.0.states.status",
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      },
      "from": "system.adapter.admin.0",
      "user": "system.user.su",
      "ts": 1653495922399
    }
    

    Alarm iobroker.PNG

    Was ich erreichen möchte:
    Wenn einer der Roboter läuft , dann ändert sich dessen Status auf "run". Wenn das passiert, soll die Alarmanlage deaktiviert werden. Sobald einen anderen Wert als "run" haben, soll sie wieder reaktiviert werden , aber NUR DANN, wenn sie vorher auch aktiviert war.

    Bei Homematic wüsste ich, wie ich das zu programmieren hätte, nur leider bekomme ich den Status des Roomba nicht in eine Systemvariable geschrieben.

    Der einfachste Weg wäre, wenn ich für jeden Roboter eine Systemvariable mir in Homematic anlege, und Blocky die dann beschreibt, wenn sich der Status ändert.

    Nur da wirds für mich schon schwierig. Ich scheitere am Auslösetrigger. Kann mir jemand da vielleicht helfen ? Er müsste ja den Text des Roomba Status mit dem "Text" vergleichen, oder wie sehe ich das???

    iobroker script 1.PNG

    VIelen Dank

    Hugo

    paul53P 1 Antwort Letzte Antwort
    0
    • H Hugo Oberstein

      Hallo Zusammen,
      ich bin absoluter Neuling in Iobroker und versuche mich gerade mit den Blocky scripten.
      Nur leider scheitere ich an den Blocky scripten.

      Ich habe zwei Roomba Roboter zu Hause, die lustig vor sich hin saugen. Nur lösen sie dabei durch die Bewegungsmelder die Alarmanlage aus.

      Alarmanlage wird über die Homematic gesteuert, der Roomba über die App. Ich habe beides im Iobroker eingebunden und sehe unter Objekte meine beiden Dinge..
      iobroker roomba.PNG

      {
        "common": {
          "name": "Current status of the robot",
          "role": "text",
          "type": "string",
          "write": false,
          "custom": {
            "influxdb.0": {
              "enabled": true,
              "storageType": "",
              "aliasId": "Otto-OG",
              "changesOnly": true,
              "debounce": 0,
              "changesRelogInterval": 0,
              "changesMinDelta": 0
            }
          }
        },
        "type": "state",
        "native": {},
        "_id": "roomba.0.states.status",
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        },
        "from": "system.adapter.admin.0",
        "user": "system.user.su",
        "ts": 1653495922399
      }
      

      Alarm iobroker.PNG

      Was ich erreichen möchte:
      Wenn einer der Roboter läuft , dann ändert sich dessen Status auf "run". Wenn das passiert, soll die Alarmanlage deaktiviert werden. Sobald einen anderen Wert als "run" haben, soll sie wieder reaktiviert werden , aber NUR DANN, wenn sie vorher auch aktiviert war.

      Bei Homematic wüsste ich, wie ich das zu programmieren hätte, nur leider bekomme ich den Status des Roomba nicht in eine Systemvariable geschrieben.

      Der einfachste Weg wäre, wenn ich für jeden Roboter eine Systemvariable mir in Homematic anlege, und Blocky die dann beschreibt, wenn sich der Status ändert.

      Nur da wirds für mich schon schwierig. Ich scheitere am Auslösetrigger. Kann mir jemand da vielleicht helfen ? Er müsste ja den Text des Roomba Status mit dem "Text" vergleichen, oder wie sehe ich das???

      iobroker script 1.PNG

      VIelen Dank

      Hugo

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @hugo-oberstein sagte: soll die Alarmanlage deaktiviert werden. Sobald einen anderen Wert als "run" haben, soll sie wieder reaktiviert werden, aber NUR DANN, wenn sie vorher auch aktiviert war.

      Prinzip:

      Blockly_temp.JPG

      Wert (unter "Trigger"):

      Blockly_DP_Props.JPG

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      0
      • H Offline
        H Offline
        Hugo Oberstein
        schrieb am zuletzt editiert von Hugo Oberstein
        #3

        @paul53
        Hallo Paul,
        vielen lieben Dank für Deine Mühe.
        Ich versuche das mal - die logik der Homematic ist mir ein wenig vertrauter. Ich habe mir noch mal Gedanken gemacht und - sorry wenn ich noch mal so dreist bin und Dich um Hilfe bitte - ich habe eine für mich sinnvollere Realisierung ausgedacht, weil ich damit dann im Homematic System besser die für mich wichtigen Fälle abbilden kann.

        Ich habe mir im Homematic System eine Systemvariable ("Otto OG") angelegt (als Wertevariable). Diese kann aktuell nur die Werte "stop" und "runs" annehmen, aber es könnte ja in Zukunft sein, dass ich noch weitere Status Anzeigen da rein nehmen will - daher als Wertevariable.

        {
          "_id": "hm-rega.0.25426",
          "type": "state",
          "common": {
            "name": "Otto OG",
            "type": "number",
            "read": true,
            "write": true,
            "role": "state",
            "desc": "Roomba ",
            "states": {
              "0": "run",
              "1": "stop"
            },
            "min": 0,
            "max": 1
          },
          "native": {
            "Name": "Otto OG",
            "TypeName": "VARDP",
            "DPInfo": "Roomba ",
            "ValueMin": null,
            "ValueMax": null,
            "ValueUnit": "",
            "ValueType": 16,
            "ValueSubType": 29,
            "ValueList": "run;stop"
          },
        

        Nun soll iobroker nichts anderes machen, wenn der Roomba Status auf "run" steht, setze die Variable ebenfalls auf "run", sonst setze sie auf "stop".

        Ich schaffe es aber nicht, dass er den Wert "run" oder "stop" in die Systemvariable schreibt. Irgendwie finde ich den passenden Baustein nicht. Ich müsste doch den Wert auf 0 für run und auf 1 für Stop setzen , richtig ? Aber das skript läuft nicht.

        otto 2.PNG

        Hast Du noch eine Idee? Vielen lieben Dank - für Deine Hilfe.

        Hugo

        paul53P 1 Antwort Letzte Antwort
        0
        • H Hugo Oberstein

          @paul53
          Hallo Paul,
          vielen lieben Dank für Deine Mühe.
          Ich versuche das mal - die logik der Homematic ist mir ein wenig vertrauter. Ich habe mir noch mal Gedanken gemacht und - sorry wenn ich noch mal so dreist bin und Dich um Hilfe bitte - ich habe eine für mich sinnvollere Realisierung ausgedacht, weil ich damit dann im Homematic System besser die für mich wichtigen Fälle abbilden kann.

          Ich habe mir im Homematic System eine Systemvariable ("Otto OG") angelegt (als Wertevariable). Diese kann aktuell nur die Werte "stop" und "runs" annehmen, aber es könnte ja in Zukunft sein, dass ich noch weitere Status Anzeigen da rein nehmen will - daher als Wertevariable.

          {
            "_id": "hm-rega.0.25426",
            "type": "state",
            "common": {
              "name": "Otto OG",
              "type": "number",
              "read": true,
              "write": true,
              "role": "state",
              "desc": "Roomba ",
              "states": {
                "0": "run",
                "1": "stop"
              },
              "min": 0,
              "max": 1
            },
            "native": {
              "Name": "Otto OG",
              "TypeName": "VARDP",
              "DPInfo": "Roomba ",
              "ValueMin": null,
              "ValueMax": null,
              "ValueUnit": "",
              "ValueType": 16,
              "ValueSubType": 29,
              "ValueList": "run;stop"
            },
          

          Nun soll iobroker nichts anderes machen, wenn der Roomba Status auf "run" steht, setze die Variable ebenfalls auf "run", sonst setze sie auf "stop".

          Ich schaffe es aber nicht, dass er den Wert "run" oder "stop" in die Systemvariable schreibt. Irgendwie finde ich den passenden Baustein nicht. Ich müsste doch den Wert auf 0 für run und auf 1 für Stop setzen , richtig ? Aber das skript läuft nicht.

          otto 2.PNG

          Hast Du noch eine Idee? Vielen lieben Dank - für Deine Hilfe.

          Hugo

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @hugo-oberstein
          Block "steuere" anstelle von "aktualisiere" verwenden!

          Bild_2022-05-26_130047725.png

          Oder kürzer:

          Bild_2022-05-26_130404593.png

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          H 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @hugo-oberstein
            Block "steuere" anstelle von "aktualisiere" verwenden!

            Bild_2022-05-26_130047725.png

            Oder kürzer:

            Bild_2022-05-26_130404593.png

            H Offline
            H Offline
            Hugo Oberstein
            schrieb am zuletzt editiert von
            #5

            @paul53
            Vielen Dank für die Hilfe Paul,
            ich habe alles so gemacht, jedoch als Trigger auf aktualisieren geändert, so dass er eigentlich jedes Mal den Status in die Systemvariable schreiben sollte.

            Leider funktioniert es nicht , die Systemvariable bleibt bei "0" obwohl er auf "1" gehen sollte.

            otto 3.PNG

            otto 4.PNG

            otto 5.PNG

            Irgendetwas mache ich noch falsch......

            paul53P 1 Antwort Letzte Antwort
            0
            • H Hugo Oberstein

              @paul53
              Vielen Dank für die Hilfe Paul,
              ich habe alles so gemacht, jedoch als Trigger auf aktualisieren geändert, so dass er eigentlich jedes Mal den Status in die Systemvariable schreiben sollte.

              Leider funktioniert es nicht , die Systemvariable bleibt bei "0" obwohl er auf "1" gehen sollte.

              otto 3.PNG

              otto 4.PNG

              otto 5.PNG

              Irgendetwas mache ich noch falsch......

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von
              #6

              @hugo-oberstein
              Wurde der Datenpunkt "status" seit Skriptstart aktualisiert, damit getriggert wird?

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              H 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @hugo-oberstein
                Wurde der Datenpunkt "status" seit Skriptstart aktualisiert, damit getriggert wird?

                H Offline
                H Offline
                Hugo Oberstein
                schrieb am zuletzt editiert von Hugo Oberstein
                #7

                @paul53
                Hallo Paul,
                daran lag es wohl. Aktuell funktioniert es. Vielen lieben Dank für deine Hilfe!!!

                So habe noch eine Kleinigkeit bemerkt. Ich musste STOP und RUN in den Variablen umdrehen und dann damit auch den Zustand 0 und 1 vertauschen.
                Sobald der Roboter in "Standby" geht, schaltet er offensichtlich den Status auf "0". Und damit führte es zu dem Fall, dass die Systemvariable zwar von run --> stop geschaltet wurde, dann aber nach einer Zeit wieder zu --> run verändert wurde.
                Ich habe das jetzt umgedreht und hoffe, es funktioniert so.

                Vielen Dank nochmal Paul!

                Hugo

                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

                970

                Online

                32.5k

                Benutzer

                81.8k

                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