Skip to content

MaartenProvo/node-red-contrib-roomba980-fw2-v2

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

node-red-contrib-roomba980-fw2

Roomba 980(v2 firmware) support for nodered

Credit goes to dorita980.

You can look up either git to find information on setup and how to get the BLID and Password for you Roomba: https://github.com/koalazak/dorita980#how-to-get-your-usernameblid-and-password

alt tag

Commands implemented from Dorita980 ( https://github.com/koalazak/dorita98 )

Succesfull response

A successfull response return an object with ok property and the internal request id:

{ ok: null, id: 2 }

Error response

An error response return an object with err property and error number:

{ err: -32600 }

Methods

getTime()

{"ok":{"d":"sat","h":13,"m":8},"id":8}

getBbrun()

{"ok":{"hr":103,"min":10,"sqft":251,"nStuck":8,"nScrubs":62,"nPicks":280,"nPanics":97,"nCliffsF":518,"nCliffsR":1005,"nMBStll":0,"nWStll":1,"nCBump":0},"id":9}

getLangs()

{ ok: { total: 5, iterIndex: 2, iterName: 'en-US' }, id: 2 }

getSys()

{ ok:
   { umi: 2,
     pid: 2,
     blid: 1,2,3,4,5,6,6,8],
     sw: 'v1.6.6',
     cfg: 0,
     boot: 3580,
     main: 4313,
     wifi: 517,
     nav: '01.09.08',
     ui: 2996,
     audio: 31,
     bat: 'lith' },
  id: 2 }

getWirelessLastStat()

{ ok: { softap: 0, station: 1, cloud: 3, strssi: 47, diagflags: 0 }, id: 2 }

getWeek()

Monday disable and every day start at 10:30am

{ ok:
   { cycle: [ 'start', 'none', 'start', 'start', 'start', 'start', 'start' ],
     h: [ 10, 10, 10, 10, 10, 10, 10 ],
     m: [ 30, 30, 30, 30, 30, 30, 30 ] },
  id: 2 }

getPreferences(autoDecodeFlags)

{ ok:
   { flags: 1024, // See Cleaning Preferences table.
     lang: 2,
     timezone: 'America/Buenos_Aires',
     name: 'myRobotName',
     cleaningPreferences: {
        carpetBoost: 'auto', // 'auto', 'performance', 'eco'
        edgeClean: true,
        cleaningPasses: '1', // '1', '2', 'auto'
        alwaysFinish: true 
      }
    },
 id: 2 }

getMission()

With this you can draw a map :)

{ ok:
   { flags: 0,
     cycle: 'none',
     phase: 'charge',
     pos: { theta: 179, point: {x: 102, y: -13} },
     batPct: 99,
     expireM: 0,
     rechrgM: 0,
     error: 0,
     notReady: 0,
     mssnM: 0,
     sqft: 0 },
  id: 2 }

getWirelessStatus()

{ ok:
   { softap: 0,
     station: 1,
     strssi: 45,
     dhcp: 1,
     addr: 1744939200,
     mask: 16777215,
     gtwy: 16885952,
     dns1: 16885952,
     dns2: 0,
     bssid: [ 123, 23, 23, 123, 23, 123 ],
     sec: 4 },
  id: 2 }

getCloudConfig()

{ ok: { cloudconfig: 'https://irobot-connect.axeda.com/ammp/' },
  id: 2 }

start()

{"ok":null,"id":293}

pause()

{"ok":null,"id":293}

stop()

{"ok":null,"id":293}

resume()

{"ok":null,"id":293}

dock()

{"ok":null,"id":293}

Simplifications to set Cleaning Preferences:

This methods use setPreferences() with the correct flags for each setting.

setCarpetBoostAuto()

{"ok":null,"id":293}

setCarpetBoostPerformance()

{"ok":null,"id":293}

setCarpetBoostEco()

{"ok":null,"id":293}

setEdgeCleanOn()

{"ok":null,"id":293}

setEdgeCleanOff()

{"ok":null,"id":293}

setCleaningPassesAuto()

{"ok":null,"id":293}

setCleaningPassesOne()

{"ok":null,"id":293}

setCleaningPassesTwo()

{"ok":null,"id":293}

setAlwaysFinishOn()

{"ok":null,"id":293}

setAlwaysFinishOff()

{"ok":null,"id":293}

About

Roomba 980(v2 firmware) support for nodered 2024

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 66.6%
  • JavaScript 33.4%