Roomba 980 Scripts

Ask questions about integrating other services (internet and otherwise) and applications with Indigo.
Bollar
Posts: 528
Joined: Sun Aug 11, 2013 3:14 pm

Re: Roomba 980 Scripts

Post by Bollar »

The "NotReady" codes don't appear to be documented anywhere, but they have important info. I don't know if these are some binary code like the flags are, but I have found:

7 - bin missing
15 - (is possibly) low battery
16 - bin full

It's interesting that when the bin is full, Roomba just goes and parks itself without giving a warning. Seems like a design flaw (that I have now fixed by sending a message when that happens).
Last edited by Bollar on Thu Dec 01, 2016 2:51 pm, edited 1 time in total.
Insteon / Z-Wave / Bryant Evolution Connex /Tesla / Roomba / Elk M1 / SiteSage / Enphase Enlighten / NOAA Alerts
User avatar
FlyingDiver
Posts: 7830
Joined: Sat Jun 07, 2014 10:36 am
Location: Southwest Florida, USA

Re: Roomba 980 Scripts

Post by FlyingDiver »

The plugin is pretty much done, based on the code you posted. My new Roomba will be here tomorrow so I can start testing.
joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177
Bollar
Posts: 528
Joined: Sun Aug 11, 2013 3:14 pm

Re: Roomba 980 Scripts

Post by Bollar »

FlyingDiver wrote:The plugin is pretty much done, based on the code you posted. My new Roomba will be here tomorrow so I can start testing.
Great - I look forward to seeing it.
Insteon / Z-Wave / Bryant Evolution Connex /Tesla / Roomba / Elk M1 / SiteSage / Enphase Enlighten / NOAA Alerts
Bollar
Posts: 528
Joined: Sun Aug 11, 2013 3:14 pm

Re: Roomba 980 Scripts

Post by Bollar »

Someone might find this list of error codes helpful. They appear to be accompanied by a Phase: Stuck variable.

Code: Select all

roombaError = str(indigo.variables['roombaError'].value)

if roombaError == '0':
	indigo.variable.updateValue('roombaErrorText', value=str('0: No Error'))
elif roombaError == '1':
	indigo.variable.updateValue('roombaErrorText', value=str('1: Place Roomba on a flat surface then press CLEAN to restart.'))
elif roombaError == '2':
	indigo.variable.updateValue('roombaErrorText', value=str('2: Clear Roombas debris extractors, then press CLEAN to restart.'))
elif roombaError == '5':
	indigo.variable.updateValue('roombaErrorText', value=str('5: Left/Right. Clear Roombas wheel, then press CLEAN to restart.”'))
elif roombaError == '6':
	indigo.variable.updateValue('roombaErrorText', value=str('6: Move Roomba to a new location then press CLEAN to restart. The cliff sensors are dirty, it is hanging over a drop, or it is stuck on a dark surface.'))
elif roombaError == '8':
	indigo.variable.updateValue('roombaErrorText', value=str('8: The fan is stuck or its filter is clogged.'))
elif roombaError == '9':
	indigo.variable.updateValue('roombaErrorText', value=str('9: Tap Roombas bumper, then press CLEAN to restart.'))
elif roombaError == '10':
	indigo.variable.updateValue('roombaErrorText', value=str('10: The left or right wheel is not moving.'))
elif roombaError == '11':
	indigo.variable.updateValue('roombaErrorText', value=str('11: Roomba has an internal error.'))
elif roombaError == '14':
	indigo.variable.updateValue('roombaErrorText', value=str('14: Re-install Roomba’s bin then press CLEAN to restart. The bin has a bad connection to the robot.'))
elif roombaError == '15':
	indigo.variable.updateValue('roombaErrorText', value=str('15: Press CLEAN to restart. Roomba has an internal error'))
elif roombaError == '16':
	indigo.variable.updateValue('roombaErrorText', value=str('16: Place Roomba on a flat surface then press CLEAN to restart. Roomba has started while moving or at an angle, or was bumped while running.'))
elif roombaError == '17':
	indigo.variable.updateValue('roombaErrorText', value=str('17: The cleaning job is incomplete.'))
elif roombaError == '18':
	indigo.variable.updateValue('roombaErrorText', value=str('18: Roomba cannot return to the Home Base or starting position.'))
else:
	indigo.variable.updateValue('roombaErrorText', value=str('xx: Undocumented Error.'))
Insteon / Z-Wave / Bryant Evolution Connex /Tesla / Roomba / Elk M1 / SiteSage / Enphase Enlighten / NOAA Alerts
User avatar
FlyingDiver
Posts: 7830
Joined: Sat Jun 07, 2014 10:36 am
Location: Southwest Florida, USA

Re: Roomba 980 Scripts

Post by FlyingDiver »

Roomba arrived a couple hours ago. I can successfully retrieve the password and blid, but that's as far as I've gotten so far. Need to make dinner soon.
joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177
User avatar
GlennNZ
Posts: 1873
Joined: Sun Dec 07, 2014 3:33 pm
Location: Central Coast, Australia

Re: Roomba 980 Scripts

Post by GlennNZ »

Thanks for the ongoing work on this - following with interest!
Bollar
Posts: 528
Joined: Sun Aug 11, 2013 3:14 pm

Re: Roomba 980 Scripts

Post by Bollar »

FlyingDiver wrote:I can successfully retrieve the password and blid...
Hopefully using my script!
Insteon / Z-Wave / Bryant Evolution Connex /Tesla / Roomba / Elk M1 / SiteSage / Enphase Enlighten / NOAA Alerts
User avatar
FlyingDiver
Posts: 7830
Joined: Sat Jun 07, 2014 10:36 am
Location: Southwest Florida, USA

Re: Roomba 980 Scripts

Post by FlyingDiver »

Well, a derivative of your script. :)
joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177
User avatar
FlyingDiver
Posts: 7830
Joined: Sat Jun 07, 2014 10:36 am
Location: Southwest Florida, USA

Re: Roomba 980 Scripts

Post by FlyingDiver »

Roomba plugin is ready for brave testers. ;)

http://forums.indigodomo.com/viewtopic. ... 16&t=17347
joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177
Bollar
Posts: 528
Joined: Sun Aug 11, 2013 3:14 pm

Re: Roomba 980 Scripts

Post by Bollar »

Well, the Roomba didn't pass the wife test, so it was returned on the 30th day. We'll try again in a couple of years.
Insteon / Z-Wave / Bryant Evolution Connex /Tesla / Roomba / Elk M1 / SiteSage / Enphase Enlighten / NOAA Alerts
User avatar
FlyingDiver
Posts: 7830
Joined: Sat Jun 07, 2014 10:36 am
Location: Southwest Florida, USA

Re: Roomba 980 Scripts

Post by FlyingDiver »

Bollar wrote:Well, the Roomba didn't pass the wife test, so it was returned on the 30th day. We'll try again in a couple of years.
Really? We like our 980 a lot. But then we've used an 880 for almost a year now.
joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177
Post Reply

Return to “Integrating Services/Applications”