Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. ioBroker Allgemein
  4. Ecovacs Bereiche auswählen und ansteuern

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    11
    1
    330

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.9k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    793

Ecovacs Bereiche auswählen und ansteuern

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
6 Beiträge 2 Kommentatoren 506 Aufrufe 4 Beobachtet
  • Ä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
    Hans_M
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich möchte mit einzelne Bereiche zuerst anwählen und anschließend die Reinigung starten.
    Habe das Thema in letzter Zeit aufgeschoben, da ich immer wieder in der Luft hänge, aber jetzt möchte ich es angreifen ;-)

    Habe mal für jeden Raum einen Datenpunkt (boolean) erstellt, wenn ich diesen anwähle wird der Button Grün.
    Ich möchte also zuerst jeden Raum anwählen (diese werden Grün) und anschließend die Reinigung in diesen ausgewählten Räumen starten (Buttons sollten wieder grau werden).

    Kann mir dabei eventuell jemand weiterhelfen?
    Brauche ich dazu etwa ein Blockly?

    staubsauger.png

    C 1 Antwort Letzte Antwort
    0
    • H Hans_M

      Hallo,

      ich möchte mit einzelne Bereiche zuerst anwählen und anschließend die Reinigung starten.
      Habe das Thema in letzter Zeit aufgeschoben, da ich immer wieder in der Luft hänge, aber jetzt möchte ich es angreifen ;-)

      Habe mal für jeden Raum einen Datenpunkt (boolean) erstellt, wenn ich diesen anwähle wird der Button Grün.
      Ich möchte also zuerst jeden Raum anwählen (diese werden Grün) und anschließend die Reinigung in diesen ausgewählten Räumen starten (Buttons sollten wieder grau werden).

      Kann mir dabei eventuell jemand weiterhelfen?
      Brauche ich dazu etwa ein Blockly?

      staubsauger.png

      C Offline
      C Offline
      Chrunchy
      schrieb am zuletzt editiert von
      #2

      @hans_m Ja, Blockly oder JavaScript.

      Vorgehen: Die Bereiche als Toggle-Button, damit du den Datenpunkt schalten kannst.

      Zusätzlich brauchst du einen Start-Button, womit du mitteilst, dass deine Auswahl fertig ist und der Bot losfahren soll.

      Wenn Startbutton gedrückt wird, dann suchst du dir alle Datenpunkte der Bereiche mit True zusammen und schreibst die IDs der Bereiche in die Reinigungsliste.

      Noch ein Tip: Ich lösche die Bereichsliste, sobald der Bot in die Ladestation zurück fährt.

      Gruß Chrunchy

      H 1 Antwort Letzte Antwort
      0
      • C Chrunchy

        @hans_m Ja, Blockly oder JavaScript.

        Vorgehen: Die Bereiche als Toggle-Button, damit du den Datenpunkt schalten kannst.

        Zusätzlich brauchst du einen Start-Button, womit du mitteilst, dass deine Auswahl fertig ist und der Bot losfahren soll.

        Wenn Startbutton gedrückt wird, dann suchst du dir alle Datenpunkte der Bereiche mit True zusammen und schreibst die IDs der Bereiche in die Reinigungsliste.

        Noch ein Tip: Ich lösche die Bereichsliste, sobald der Bot in die Ladestation zurück fährt.

        H Offline
        H Offline
        Hans_M
        schrieb am zuletzt editiert von
        #3

        @chrunchy habe mich jetzt mal an einem Blockly versucht, leider funktioniert es nicht so richtig...
        staubsauger.png staubsauger 2.png

        C 1 Antwort Letzte Antwort
        0
        • H Hans_M

          @chrunchy habe mich jetzt mal an einem Blockly versucht, leider funktioniert es nicht so richtig...
          staubsauger.png staubsauger 2.png

          C Offline
          C Offline
          Chrunchy
          schrieb am zuletzt editiert von
          #4

          @hans_m ich kenne mich mit Blockly nicht wirklich aus.

          Du reagierst aber auf die Änderung deiner Datenpunkte sofort... Soweit ich weiß, fährt der Bot los, sobald der Datenpunkt spotArea sich ändert.

          Du schreibst den ersten Wert rein, sobald sich der Zustand deines Objekts ändert und, sobald der Bot auf Status cleaning springt, setzt du alle eigenen IDs, wieder zurück. Damit lässt sich keine Liste abarbeiten.

          Nochmal zur Erklärung, wie ich es bei mir nutze.
          Ich habe folgende eigene Datenpunkte erstellt:

          • Typ Bool für jeden "Bereich" einen
          • Typ Bool für meinen "Start" nach erfolgter Bereichauswahl
          • Typ String für "Liste der zu reinigenden Bereiche"

          In der Vis wähle ich meine "Bereiche" aus, setzte also z.B. meine Datenpunkte für Flur und Küche jeweils auf TRUE.
          Anschließend setzte ich meinen Datenpunkt für Start auf TRUE.

          Mein Script triggert, sobald mein eigener Datenpunkt für Start auf True springt.
          Dann gucke ich die einzelnen Datenpunkte für die "Bereiche" nacheinander durch. Ist der aktuell geprüfte Datenpunkt TRUE, schreibe ich die ID in den String von meinem Datenpunkt "Liste der zu reinigenden Bereiche". Vorher ist zu prüfen, ob bereits etwas in "Liste der zu reinigenden Bereiche" drinsteht, dann muss vor die ID noch ein Komma gesetzt werden. Dasselbe für den nächsten Datenpunkt meiner Bereiche.
          Nachdem dann die ID-Liste mit Kommata getrennt in meinem Datenpunkt "Liste der zu bereinigenden Bereiche" steht, übergebe ich den String an den Bot-Datenpunkt spotArea.

          Sobald sich der Datenpunkt beim Bot ändert, startet dieser das Cleaning ohne weiteres zutun.

          Wenn der Status des Bot sich auf returning ändert, setzte ich meine eigenen Datenpunkte wieder auf False. Auch dies geschieht über den Trigger auf den Datenpunkt vom Bot.

          Gruß Chrunchy

          H 1 Antwort Letzte Antwort
          0
          • C Chrunchy

            @hans_m ich kenne mich mit Blockly nicht wirklich aus.

            Du reagierst aber auf die Änderung deiner Datenpunkte sofort... Soweit ich weiß, fährt der Bot los, sobald der Datenpunkt spotArea sich ändert.

            Du schreibst den ersten Wert rein, sobald sich der Zustand deines Objekts ändert und, sobald der Bot auf Status cleaning springt, setzt du alle eigenen IDs, wieder zurück. Damit lässt sich keine Liste abarbeiten.

            Nochmal zur Erklärung, wie ich es bei mir nutze.
            Ich habe folgende eigene Datenpunkte erstellt:

            • Typ Bool für jeden "Bereich" einen
            • Typ Bool für meinen "Start" nach erfolgter Bereichauswahl
            • Typ String für "Liste der zu reinigenden Bereiche"

            In der Vis wähle ich meine "Bereiche" aus, setzte also z.B. meine Datenpunkte für Flur und Küche jeweils auf TRUE.
            Anschließend setzte ich meinen Datenpunkt für Start auf TRUE.

            Mein Script triggert, sobald mein eigener Datenpunkt für Start auf True springt.
            Dann gucke ich die einzelnen Datenpunkte für die "Bereiche" nacheinander durch. Ist der aktuell geprüfte Datenpunkt TRUE, schreibe ich die ID in den String von meinem Datenpunkt "Liste der zu reinigenden Bereiche". Vorher ist zu prüfen, ob bereits etwas in "Liste der zu reinigenden Bereiche" drinsteht, dann muss vor die ID noch ein Komma gesetzt werden. Dasselbe für den nächsten Datenpunkt meiner Bereiche.
            Nachdem dann die ID-Liste mit Kommata getrennt in meinem Datenpunkt "Liste der zu bereinigenden Bereiche" steht, übergebe ich den String an den Bot-Datenpunkt spotArea.

            Sobald sich der Datenpunkt beim Bot ändert, startet dieser das Cleaning ohne weiteres zutun.

            Wenn der Status des Bot sich auf returning ändert, setzte ich meine eigenen Datenpunkte wieder auf False. Auch dies geschieht über den Trigger auf den Datenpunkt vom Bot.

            H Offline
            H Offline
            Hans_M
            schrieb am zuletzt editiert von
            #5

            @chrunchy habe jetzt nach mehreren Stunden Tüfteln ein funktionierendes Blocky gebaut...auch dank deiner Hilfe habe ich es geschafft.
            Einziges Problem ist, dass der device Status manchmal nicht von "charging" zu "cleaning" wechselt. Ebenso bleibt dann die Position auf "unkown". Scheint ein Bug zu sein?!

            Hier noch das Blockly für Nachahmer:

            staubsauger.png
            staubsauger 2.png

            C 1 Antwort Letzte Antwort
            0
            • H Hans_M

              @chrunchy habe jetzt nach mehreren Stunden Tüfteln ein funktionierendes Blocky gebaut...auch dank deiner Hilfe habe ich es geschafft.
              Einziges Problem ist, dass der device Status manchmal nicht von "charging" zu "cleaning" wechselt. Ebenso bleibt dann die Position auf "unkown". Scheint ein Bug zu sein?!

              Hier noch das Blockly für Nachahmer:

              staubsauger.png
              staubsauger 2.png

              C Offline
              C Offline
              Chrunchy
              schrieb am zuletzt editiert von
              #6

              @hans_m freut mich, dass ich dir helfen konnte einen Schritt weiter zu kommen.

              Ich glaube mich zu erinnern, dass es ein Problem ist, wenn die Zeichenkette für den Datenpunkt start cleaning multiple spot area mit einem Komma endet.

              Verbesserungsvorschlag:
              Die erste falls... mache Reihe kannst du dir sparen. Die Zahlen (bzw. IDs) für die Räume ändern sich nicht, die kannst du in Variablen oder Konstanten einmal definieren.
              Zusätzlich definierst du eine Variable Raumliste o.ä. vom Typ String mit leerem DEFAULT.
              Nun passen wir noch deine Oder-Verschachtelung an.
              Dazu erstellst du pro Raum folgenden Ablauf:
              (Beispiel erfolgt anhand von Speis)
              Falls Wert von ObjectID Speis = wahr
              mache
              Falls Länge von Variable Raumliste > 1, setzte Wert von Raumliste mit Wert von Raumliste + "," (Hier bitte gucken wie Blockly eine String-Verkettung braucht)
              Setzte Wert von Raumliste mit Wert von Raumliste + Wert von Variable/Kostante für Speis
              (Ende Beispiel)
              Das o.g. dann für jeden Raum.
              Zum eigentlichen Starten:
              Steuere start multiple clean area mit Wert von Raumliste

              Zum Ende hin, würde ich dann alle wahr-Datenpunkte wieder auf false setzten, das machst du schon und zusätzlich die Variable Raumliste wieder leeren.

              Gruß Chrunchy

              1 Antwort Letzte Antwort
              0

              Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

              Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

              Mit deinem Input könnte dieser Beitrag noch besser werden 💗

              Registrieren Anmelden
              Antworten
              • In einem neuen Thema antworten
              Anmelden zum Antworten
              • Älteste zuerst
              • Neuste zuerst
              • Meiste Stimmen


              Support us

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

              473

              Online

              32.9k

              Benutzer

              83.0k

              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