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

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Neato Botvac Connected Adapter

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

Neato Botvac Connected Adapter

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
152 Beiträge 39 Kommentatoren 38.3k Aufrufe 7 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.
  • E Offline
    E Offline
    esche
    schrieb am zuletzt editiert von
    #4

    Hallo Pman,

    vielen Dank für diesen Adapter. Installation und Einrichtung haben ohne Probleme bei mir funktioniert.

    Leider ist für mich die Handhabung nicht ganz selbsterklärend. Vielleicht könntest du mir hierbei weiterhelfen?

    Wenn ich den Zustand von "botvac.0.<name>.commands.clean" auf "true" stelle, beginnt der Botvac wie erwartet mit der Reinigung.

    Welche Befehle bzw. Zustände müsste ich jetzt ändern, wenn ich den Reinigungsvorgang abbrechen und dien Roboter wieder zurück zur Ladestation schicken möchte?

    Müssen hierbei mehrere Zustände nacheinander verändert werden?

    Danke und Gruß

    Esche</name>

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      Pman
      schrieb am zuletzt editiert von
      #5

      @esche:

      Wenn ich den Zustand von "botvac.0.<name>.commands.clean" auf "true" stelle, beginnt der Botvac wie erwartet mit der Reinigung.

      Welche Befehle bzw. Zustände müsste ich jetzt ändern, wenn ich den Reinigungsvorgang abbrechen und dien Roboter wieder zurück zur Ladestation schicken möchte?</name> `

      Ob man direkt aus Reinigungsmodus zurück zur Base fahren kann weiß ich grade garnicht so genau (status.canGoToBase). Auf jeden Fall müsste ein commands.pause oder commands.stop, gefolgt von commands.gotoBase funktionieren. Welche Commands aktuell möglich sind kannst du jeweils unter status (canPause, canStop, canGoToBase usw.) sehen, andere Commands nimmer er nicht an. Diese Logik habe ich nicht erfunden, die ist fest im Botvac verankert und kann nicht umgangen werden. Grundvorraussetzung für ein goToBase ist, dass dockHasBeenSeen auf true steht. Der Botvac muss immer erst etwas im Raum rumfahren bevor die Base wieder "sieht", danach merkt er sich die Position der Base für diesen Reinigungsvorgang.

      Bugs in meiner Implementierung sind natürlich auch möglich, falls also etwas nicht funktioniert einfach nochmal die Situation genau schildern und dann versuche ich das bei mir nachzustellen.

      1 Antwort Letzte Antwort
      0
      • J Offline
        J Offline
        jack77
        schrieb am zuletzt editiert von
        #6

        Ich habe eine Frage zum Datenpunkt Error.

        Hier werden Werte wie ui_alert_invalid und ui_error_dust_bin_full ausgespuckt. Den für Bürste reinigen kenne ich gerade nicht.

        Kann man mit einem Widget (welches?) oder in javascript (wie sollte da aussehen?) daraus z.B. Kein Fehler bzw. Filter und Staubbehälter reinigen ausgeben lassen?

        1 Antwort Letzte Antwort
        0
        • P Offline
          P Offline
          Pman
          schrieb am zuletzt editiert von
          #7

          @jack77:

          Ich habe eine Frage zum Datenpunkt Error.

          Hier werden Werte wie ui_alert_invalid und ui_error_dust_bin_full ausgespuckt. Den für Bürste reinigen kenne ich gerade nicht.

          Kann man mit einem Widget (welches?) oder in javascript (wie sollte da aussehen?) daraus z.B. Kein Fehler bzw. Filter und Staubbehälter reinigen ausgeben lassen? `
          Das sind die Codes, wie sie von der Botvac API ausgegeben werden. Ich weiß nicht welche Fehlercodes es alle gibt und unter welchen Umständen diese auftreten können, daher ist es im Moment noch nicht sinnvoll einen entsprechenden Datenpunkt zu machen.

          Du kannst dir ein einfaches Script machen:

          createState('BotvacError', 'kein Fehler');
          
          var codesToMessage = {
            'ui_alert_invalid': 'kein Fehler',
            'ui_error_dust_bin_full': 'Staubbehälter voll',
          };
          
          on('botvac.0.Rick.status.error', function (obj) {
            if (codesToMessage.hasOwnProperty(obj.state.val)) {
              setState('BotvacError', codesToMessage[obj.state.val], true);
            }  else {
              setState('BotvacError', obj.state.val);
            }
          });
          
          

          Vorsicht: nicht getestet!

          1 Antwort Letzte Antwort
          0
          • J Offline
            J Offline
            jack77
            schrieb am zuletzt editiert von
            #8

            Geht nicht. Ich war mir sicher, dass Dein Script funktioniert. Muss ich das Script dem Widget zuweisen, eigentlich nicht, oder? Habe die ID im Script mit mener Ersetzt.

            1 Antwort Letzte Antwort
            0
            • P Offline
              P Offline
              Pman
              schrieb am zuletzt editiert von
              #9

              Du erstellst das Skript unter "Skripte" im Adminadapter? Den Datenpunkte findest du dann unter "javascript.0.BotvacError".

              1 Antwort Letzte Antwort
              0
              • J Offline
                J Offline
                jack77
                schrieb am zuletzt editiert von
                #10

                Hab ich gemacht.

                Mein Script:

                createState('BotvacError', 'Kein Fehler');
                
                var codesToMessage = {
                  'ui_alert_invalid': 'Alles in Ordnung',
                  'ui_error_dust_bin_full': 'Staubbehälter voll',
                };
                
                on('botvac.0.Sam.status.error', function (obj) {
                  if (codesToMessage.hasOwnProperty(obj.state.val)) {
                    setState('BotvacError', codesToMessage[obj.state.val], true);
                  }  else {
                    setState('BotvacError', obj.state.val);
                  }
                });
                

                Nur zeigt mir das Script immer "ui_error_brush_stuck" an obwohl der error status "ui_alert_invalid" ist. (siehe Foto)

                1220_2016-08-30_10_00_33-iobroker.admin.png

                1 Antwort Letzte Antwort
                0
                • P Offline
                  P Offline
                  Pman
                  schrieb am zuletzt editiert von
                  #11

                  Vielleicht ist das Skript nicht an? Oder es war beim letzten update des Fehlercodes nicht an? Log mal ein wenig mit:

                  createState('BotvacError', 'Kein Fehler');
                  
                  var codesToMessage = {
                    'ui_alert_invalid': 'Alles in Ordnung',
                    'ui_error_dust_bin_full': 'Staubbehälter voll',
                  };
                  
                  on('botvac.0.Sam.status.error', function (obj) {
                    log(obj.state.val);
                    if (codesToMessage.hasOwnProperty(obj.state.val)) {
                      log('->' + codesToMessage[obj.state.val]); 
                      setState('BotvacError', codesToMessage[obj.state.val], true);
                    }  else {
                      setState('BotvacError', obj.state.val);
                    }
                  });
                  
                  1 Antwort Letzte Antwort
                  0
                  • J Offline
                    J Offline
                    jack77
                    schrieb am zuletzt editiert von
                    #12

                    Hab das Log eingetragen. Wo sehe ich das Log, im Admin unter Log Tab?

                    Ich hätte erwartet, dass durch das Script in botvac.0.Sam.status.error und javascript.0.BotvacError das selbe steht.

                    createState('BotvacError', 'Kein Fehler');
                    
                    var codesToMessage = {
                      'ui_alert_invalid': 'Alles in Ordnung',
                      'ui_error_dust_bin_full': 'Staubbehälter voll',
                      'ui_error_brush_stuck': 'Bürste verklemmt',
                    };
                    
                    on('botvac.0.Sam.status.error', function (obj) {
                        log(obj.state.val);
                      if (codesToMessage.hasOwnProperty(obj.state.val)) {
                          log('->' + codesToMessage[obj.state.val]); 
                        setState('BotvacError', codesToMessage[obj.state.val], true);
                      }  else {
                        setState('BotvacError', obj.state.val);
                      }
                    });
                    
                    1 Antwort Letzte Antwort
                    0
                    • P Offline
                      P Offline
                      Pman
                      schrieb am zuletzt editiert von
                      #13

                      Ja unter Log im Admin Tab oder direkt im Skripttab.

                      Das Skript reagiert aber nur auf Änderung des Error States, du kannst das testen, indem du einfach manuell etwas in botvac.0.Sam.status.error einträgst.

                      1 Antwort Letzte Antwort
                      0
                      • J Offline
                        J Offline
                        jack77
                        schrieb am zuletzt editiert von
                        #14

                        @Pman:

                        indem du einfach manuell etwas in botvac.0.Sam.status.error einträgst. `
                        …das war ein guter Tip. Scheint zu funktionieren:

                        Log:

                        javascript-0	2016-08-30 13:19:56.645	info	script.js.Test.Neato: ->Alles in Ordnung
                        javascript-0	2016-08-30 13:19:56.643	info	script.js.Test.Neato: ui_alert_invalid
                        javascript-0	2016-08-30 13:19:31.034	info	script.js.Test.Neato: ->Bürste verklemmt
                        javascript-0	2016-08-30 13:19:31.032	info	script.js.Test.Neato: ui_error_brush_stuck
                        botvac-0	2016-08-30 13:19:31.030	warn	state change in unknown channel: status
                        javascript-0	2016-08-30 13:19:25.627	info	script.js.Test.Neato: ->Alles in Ordnung
                        javascript-0	2016-08-30 13:19:25.625	info	script.js.Test.Neato: ui_alert_invalid
                        javascript-0	2016-08-30 13:19:22.982	info	script.js.Test.Neato: ->Staubbehälter voll
                        javascript-0	2016-08-30 13:19:22.981	info	script.js.Test.Neato: ui_error_dust_bin_full
                        

                        was hat "botvac-0 2016-08-30 13:19:31.030 warn state change in unknown channel: status" zu bedeuten?

                        1 Antwort Letzte Antwort
                        0
                        • P Offline
                          P Offline
                          Pman
                          schrieb am zuletzt editiert von
                          #15

                          Das ist die Standardausgabe für nicht unterstützte Stateänderungen, eigentlich sind die Status-States read-only.

                          Check mal dein pollInterval in den Adaptersettings, das habe ich von Millisekunden auf Sekunden geändert, vielleicht steht bei dir noch 60000 drin?

                          1 Antwort Letzte Antwort
                          0
                          • J Offline
                            J Offline
                            jack77
                            schrieb am zuletzt editiert von
                            #16

                            1220_2016-08-30_13_48_29-iobroker.admin.png

                            das sind aber 30000ms, wenn ich nämlich was in error manuell rein schreibe, ändert sich der Wert nach 30 Sekunden zurück.

                            Ich lass das mal so. Im Roboter Forum hat einer geschrieben, dass er in OpenHAB das Intervall runter gesetzt hat und vom Neato Server gesperrt wurde.

                            1 Antwort Letzte Antwort
                            0
                            • P Offline
                              P Offline
                              Pman
                              schrieb am zuletzt editiert von
                              #17

                              Dann hast du noch nicht die aktuelle Version, da wird in Sekunden gemessen :lol:

                              Außerdem wurden die Anfragen an die Api reduziert.

                              1 Antwort Letzte Antwort
                              0
                              • J Offline
                                J Offline
                                jack77
                                schrieb am zuletzt editiert von
                                #18

                                Bin jetzt auf 0.5.0.

                                da steht immer noch Poll Interval (ms) 30000

                                1 Antwort Letzte Antwort
                                0
                                • S Offline
                                  S Offline
                                  Schatn
                                  schrieb am zuletzt editiert von
                                  #19

                                  Hallo! Bei mir werden im ioBroker.admin die Werte alle korrekt angezeigt aber im VIS wird nur "null" oder "false" angezeigt. Habe den Adapter schon deinstalliert und neu installiert, iobroker neu gestartet, aber leider hat sich dadurch nichts geändert. Woran könnte das liegen? Danke

                                  1 Antwort Letzte Antwort
                                  0
                                  • M Offline
                                    M Offline
                                    Matzes
                                    schrieb am zuletzt editiert von
                                    #20

                                    Hallo Pman,

                                    wäre klasse wenn du den Adapter um den Vorwerk VR200 erweitern könntest.

                                    Für FHEM wurde dies schon vorgenommen. Als Basis hat ebenfalls die Arbeit vn Kangguru gedient.

                                    https://raw.githubusercontent.com/vuffi … _BOTVAC.pm

                                    Gruß,

                                    Matze

                                    1 Antwort Letzte Antwort
                                    0
                                    • eric2905E Offline
                                      eric2905E Offline
                                      eric2905
                                      schrieb am zuletzt editiert von
                                      #21

                                      Moin,

                                      mein Neato Botvac Connected ist heute gekommen und lädt gerade :D

                                      Adapter ließ sich ohne Probleme installieren und bekommt auch die Daten vom Staubsauger.

                                      Werde berichten, wie es damit klappt.

                                      Gruß,

                                      Eric

                                      Roses are red, violets are blue,

                                      if I listen to metal, my neighbours do too

                                      1 Antwort Letzte Antwort
                                      0
                                      • eric2905E Offline
                                        eric2905E Offline
                                        eric2905
                                        schrieb am zuletzt editiert von
                                        #22

                                        Hi ho,

                                        der Neato gefällt mir bis dato sehr gut.

                                        Ich habe mir die Scripte in diesem Thread mal angesehen und ein wenig die angegebenen Links ausgekundschaftet … und noch einige Infos gefunden.

                                        Daraus habe ich zwei modifizierte Scripte gebaut, die einmal die Fehler auslesen, in "sinnige" Angaben übersetzen und in einem neuen Datenpunkt ablegen (quasi hier geklaut und um weitere Fehlermeldungen erweitert).

                                        Dann habe ich noch eine Liste mit Codes gefunden, die den action-Datenpunkt erklären (keine Garantie auf Richtigkeit - wie gesagt, gefunden). Daraus habe ich ein zweites Script gebaut, welches die Actions als "sinnige" Angabe in einem weiteren Datenpunkt ablegt.

                                        Hier die beiden Scripte:

                                        <u>NeatoBotvacErrors</u>

                                        ! createState('Neato.BotvacError', 'Kein Fehler'); ! var codesToMessage = { 'ui_alert_invalid': 'Alles in Ordnung', 'ui_error_dust_bin_full': 'Staubbehälter voll', 'ui_error_brush_stuck': 'Bürste verklemmt', 'ui_alert_recovering_location' : 'Ermittle meinen Standort', 'ui_error_picked_up' : 'Wurde angehoben!', 'ui_error_stuck' : 'Ich hänge fest!', 'ui_error_dust_bin_emptied' : 'Staubbehälter wurde geleert!', 'ui_error_dust_bin_missing' : 'Staubbehälter fehlt!', 'ui_error_navigation_falling' : 'Bitte Weg freiräumen!', 'ui_error_navigation_noprogress' : 'Bitte Weg freiräumen!' }; ! on("botvac.0.flusi.status.error"/*error*/, function (obj) { log(obj.state.val); if (codesToMessage.hasOwnProperty(obj.state.val)) { log('->' + codesToMessage[obj.state.val]); setState('Neato.BotvacError', codesToMessage[obj.state.val], true); } else { setState('Neato.BotvacError', obj.state.val); } }); !

                                        <u>NeatoBotvacAction</u>

                                        ! createState('Neato.BotvacAction', 'Nichts'); ! var codesToMessage = { '0' : "Keine Aktion", '1' : "Haus-Reinigung", '2' : "Spot-Reinigung", '3' : "Manuelle Reinigung", '4' : "Docking", '5' : "User Menu aktiv", '6' : "Reinigung ausgesetzt", '7' : "Updating", '8' : "Logs kopieren", '9' : "Position ermitteln", '10' : "IEC Test", }; ! on("botvac.0.flusi.status.action"/*action*/, function (obj) { log(obj.state.val); if (codesToMessage.hasOwnProperty(obj.state.val)) { log('->' + codesToMessage[obj.state.val]); setState('Neato.BotvacAction', codesToMessage[obj.state.val], true); } else { setState('Neato.BotvacAction', obj.state.val); } }); !

                                        Vielleicht kann es ja jemand gebrauchen.

                                        Gruß,

                                        Eric

                                        Roses are red, violets are blue,

                                        if I listen to metal, my neighbours do too

                                        stephan1827S 1 Antwort Letzte Antwort
                                        0
                                        • P Offline
                                          P Offline
                                          Phteven
                                          schrieb am zuletzt editiert von
                                          #23

                                          Hallo,

                                          habe auch einen VR200 und seit er ins wlan integrierbar ist den Wunsch ihn über iobroker zu steuern.

                                          Da der Adapter von Pman den VR200 noch nicht integriert, habe ich die Funktionalität auf den Vendor Vorwerk für meine Zwecke modifiziert.

                                          Hier für die, die es interessiert was man tun kann damit der Adapter für Vorwerk VR200 funktioniert:

                                          In "client.js", line 6 modifizieren zu: this._baseUrl = 'https://vorwerk-beehive-production.herokuapp.com';

                                          In "robot.js", line 5 modifizieren zu: this._baseUrl = 'https://nucleo.ksecosys.com/vendors/vorwerk/robots/';

                                          Ich habe ein cert für den VR200 in anderen Foren gefunden und habe es im Adapter in den Ordner cert mit dem Inhalt des dort existierenden ersetzt. (Das cert ist anbei)

                                          Habe dann eine Fehlermeldung über "Hostname/IP doesn't match certificate's altnames" bekommen.

                                          Diese lies sich für mich beheben indem ich, in "api.js" das rot markeirte hinzugefügt habe.

                                          var options = {

                                          method: method === 'GET' ? 'GET' : 'POST',

                                          url: url,

                                          rejectUnauthorized: false, headers: {

                                          'Accept': 'application/vnd.neato.nucleo.v1'

                                          }

                                          };

                                          Das Ganze sollte natürlich besser und direkt im Adapter gelöst werden, z.B. mit einer zusätzlichen Eingabe "Vendor". Vielleicht hat Pman ja Zeit dafür, dass für uns zu tun :)

                                          Trotzdem wollte ich die Info mit euch teilen und hoffe es hilft jemandem.

                                          Gruß
                                          1073_neatocloud.com.crt.7z

                                          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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          305

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe