Skip to content
  • 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
Logo
  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.0k

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

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

Neato Botvac Connected Adapter

Neato Botvac Connected Adapter

Scheduled Pinned Locked Moved ioBroker Allgemein
152 Posts 39 Posters 38.1k Views 7 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.
  • P Offline
    P Offline
    Pman
    wrote on last edited by
    #1

    Habe seit kurzem einen Neato Botvac Connected:

    https://neatorobotics.com/de/robot-vacu … connected/

    Wieder so ein Gerät mit eigener APP zur Steuerung, jedoch ohne öffentlich zugängliche API. Zum Glück hat kangguru schon super Vorarbeit geleistet: https://github.com/kangguru/botvac

    Darauf basierend habe ich ein Node-Module und einen passenden Adapter erstellt:

    https://github.com/Pmant/ioBroker.botvac

    Falls jemand so ein Gerät besitzt kann gerne getestet werden.

    1 Reply Last reply
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      wrote on last edited by
      #2

      @Pman:

      Habe seit kurzem einen Neato Botvac Connected:

      https://neatorobotics.com/de/robot-vacu … connected/

      Wieder so ein Gerät mit eigener APP zur Steuerung, jedoch ohne öffentlich zugängliche API. Zum Glück hat kangguru schon super Vorarbeit geleistet: https://github.com/kangguru/botvac

      Darauf basierend habe ich ein Node-Module und einen passenden Adapter erstellt:

      https://github.com/Pmant/ioBroker.botvac

      Falls jemand so ein Gerät besitzt kann gerne getestet werden. `
      Pman, wenn Adapter von dir commt, dann kann ich gleich den ins Repo nehmen, oder? 😄

      1 Reply Last reply
      0
      • P Offline
        P Offline
        Pman
        wrote on last edited by
        #3

        Er funktioniert bei mir schon, ich mache aber noch keine Dokumentation falls ich noch was ändere. Es gibt aber nur wenige Funktionen, die sind eigentlich selbsterklärend :lol:

        1 Reply Last reply
        0
        • E Offline
          E Offline
          esche
          wrote on last edited by
          #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 Reply Last reply
          0
          • P Offline
            P Offline
            Pman
            wrote on last edited by
            #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 Reply Last reply
            0
            • J Offline
              J Offline
              jack77
              wrote on last edited by
              #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 Reply Last reply
              0
              • P Offline
                P Offline
                Pman
                wrote on last edited by
                #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 Reply Last reply
                0
                • J Offline
                  J Offline
                  jack77
                  wrote on last edited by
                  #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 Reply Last reply
                  0
                  • P Offline
                    P Offline
                    Pman
                    wrote on last edited by
                    #9

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

                    1 Reply Last reply
                    0
                    • J Offline
                      J Offline
                      jack77
                      wrote on last edited by
                      #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 Reply Last reply
                      0
                      • P Offline
                        P Offline
                        Pman
                        wrote on last edited by
                        #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 Reply Last reply
                        0
                        • J Offline
                          J Offline
                          jack77
                          wrote on last edited by
                          #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 Reply Last reply
                          0
                          • P Offline
                            P Offline
                            Pman
                            wrote on last edited by
                            #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 Reply Last reply
                            0
                            • J Offline
                              J Offline
                              jack77
                              wrote on last edited by
                              #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 Reply Last reply
                              0
                              • P Offline
                                P Offline
                                Pman
                                wrote on last edited by
                                #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 Reply Last reply
                                0
                                • J Offline
                                  J Offline
                                  jack77
                                  wrote on last edited by
                                  #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 Reply Last reply
                                  0
                                  • P Offline
                                    P Offline
                                    Pman
                                    wrote on last edited by
                                    #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 Reply Last reply
                                    0
                                    • J Offline
                                      J Offline
                                      jack77
                                      wrote on last edited by
                                      #18

                                      Bin jetzt auf 0.5.0.

                                      da steht immer noch Poll Interval (ms) 30000

                                      1 Reply Last reply
                                      0
                                      • S Offline
                                        S Offline
                                        Schatn
                                        wrote on last edited by
                                        #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 Reply Last reply
                                        0
                                        • M Offline
                                          M Offline
                                          Matzes
                                          wrote on last edited by
                                          #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 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

                                          476

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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