iRoomba iRobot Plugin

Posted on
Wed Aug 04, 2021 5:01 pm
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: iRoomba iRobot Plugin

Mark wrote:
If it wasn't for stackoverflow.com none of my stuff would work!! :lol:


That statement is pretty universal!

Some of the states may/may-not update depending on iRoomba model. X/Y I believe is supported by all, Sq Ft - only by some I have since realised.

Glenn


Sent from my iPad using Tapatalk

Posted on
Wed Aug 04, 2021 6:29 pm
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

X,Y filled in after it started moving. No SqFt so far.

All commands seem to be working.

It is my understanding that i6 = i7 and that i6 is the model sold at discount by Amazon (similar to how there is a Costco model (i8 I think)).

Any possibility that there could be device commands that would initiate Favorites? That would really be something. I don't have much use for the "Everything" mode. I want to be able to do just a few sections of the house at a time, for which I plan to use Favorites. Or control over individual rooms, perhaps?

Posted on
Wed Aug 04, 2021 6:44 pm
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

iRoomba iRobot Plugin

Should already be able to access these by using the ‘save last command’ action group, usage in the release notes.

This was added in most recent version - usage should be hopefully straightforward.

Basically run the command from within the iOS iRoomba app. Then go to the plugin and use save last command to create a duplicate of the last command run as an action group.

This enables, room-by-room cleaning etc for models that support it (s9) and should also support favourites I would guess


Sent from my iPad using Tapatalk

Posted on
Wed Aug 04, 2021 9:07 pm
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

Holy guacamole! That appears to be working! I can save an Action Group to clean a room. I'll try a Favorite tomorrow and let you know how it goes.

Really great job on the plug-in, Glenn!

Posted on
Wed Aug 04, 2021 9:09 pm
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: iRoomba iRobot Plugin

No problem.

The only caveat will be if you change your map a lot, add rooms, details etc. - it will not longer work as intended.

Basically set everything up as you would like and then worry about saving the last command to indigo.

Glenn


Sent from my iPad using Tapatalk

Posted on
Wed Aug 04, 2021 9:49 pm
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

Ha! That fits with my normal MO. Geek it all out perfectly right away, then make a bunch of changes and start over and do it all over again.

So far, I'm quite pleased with the i6 and the ability to run it from Indigo makes it all the more convenient.

Is the plug-in storing config data somewhere? Just want to make sure it's in my backup paths...

Posted on
Wed Aug 04, 2021 10:33 pm
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

iRoomba iRobot Plugin

Hi

Saves password details to a config file within a Indigo-iRoomba folder in Documents folder.

I should really move it to within Indigo main folders (as recommended)

Went in this direction as means can delete indigo device, or create multiple and as along as IP address remains the same do not need to get new password. (Which as I’m sure we will all agree is a pain to do)

Glenn

Sent from my iPad using Tapatalk

Posted on
Thu Sep 16, 2021 6:27 pm
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

Hey Glenn,

Just wanted to give you an update. As mentioned, I have the Roomba i6, running software "lewis+3.14.16+lewis-release-121+21."

Your plug-in is working great for me. Thanks again for creating it. The most important function, "save last command run" seems to be working well. I think you know every remembered command gets wiped when the map gets updated, or seemingly if I mess with any aspect of the mapping, but you warned me about that, so while unfortunate, it was expected.

Also, all the custom states, save two, seem to be reporting correctly. Which is great.

The two that seem to be missing are "SqFt" and "RechargeM." I don't really have any need for SqFt. Not sure if that's total square feet of my map, or the SqFt of what last got vacuumed. No matter, it has no practical purpose for me. But the missing RechargeM state is a bummer. That I really could use, as I sometimes need to know what the Roomba is doing during or after its runs, and how long it might take for it to be able to get back to work.

So if you ever get inspired to address that, let me know if I can help. I presume you had it working at some point for one of the models, and it either stopped working with some software update, or maybe it just doesn't work for i6. If I can offer any testing or troubleshoot for that state for the i6, I'd be happy to...

Thanks again for the great plug-in.

Cheers, Mark

Posted on
Thu Sep 16, 2021 8:24 pm
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: iRoomba iRobot Plugin

Good to hear

When the maps has major updates or I believe you add aspects, the save last command needs to be redone. Doesn’t appear there is anyway around that - I haven’t changed my Map for 6 months and all still working

The sqFt - is not reported in the new models like yours

The rechargeM - I’ll check out and see if can restore

Thanks

Glenn

Posted on
Fri Sep 17, 2021 1:26 am
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

iRoomba iRobot Plugin

Mark wrote:
Hey Glenn,
Just wanted to give you an update. As mentioned, I have the Roomba i6, running software "lewis+3.14.16+lewis-release-121+21."

Your plug-in is working great for me. Thanks again for creating it.

But the missing RechargeM state is a bummer. That I really could use, as I sometimes need to know what the Roomba is doing during or after its runs, and how long it might take for it to be able to get back to work.

Cheers, Mark


Hi Mark,

Had a bit of time to fiddle.

Have a look at 0.8.9+
https://github.com/Ghawken/Indigo-iRobotRoomba

Fixed the RechargeM - the later models appear to report this always as zero. Instead they report a timestamp of when charging will be done. Ideally you would think would calculate and fill this field onboard iroomba - but no matter. Should be working now as minutes remaining as a indigo state number so can trigger on less than/greater than etc.

Have also added:
Mission Start time - local datetime of time of mission start. Hopefully becomes blank after mission finish.
RechargeFinish - timestamp of when recharge will finish
LifetimeRuntime - Hrs and minutes of total runtime of roombas

Give it a whirl

Thanks

Glenn

Posted on
Mon Sep 20, 2021 3:18 pm
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

OK, thanks for the quick look-see! It all sounds very promising and useful for my setup. I'm jammed up this week, but I'll give this a thorough test later this week and report back....

Posted on
Thu Sep 23, 2021 1:13 pm
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

Installation of updated plug-in went well.

All of the new states appear as expected in the Indigo interface.

Replacing the plug-in so far has not affected my "remembered" commands (whew!).

I vacuumed a couple rooms to drive the battery down to about 81%. Roomba returned to base at mission's end. The RechargeM remained at 0. RechargeFinish remained blank. Perhaps they only kick in when the Roomba can't finish a task without recharging in-between?

So I vacuumed some more rooms...

I see a currentState_Statement state, which I don't remember from the previous plugin. While running a task it reported "Running, Mission duration 5 minutes", which I might be able to make good use of (so thanks, if that's new).

The MissionStarted state reads "Thu Sep 23 09:43:12 2021", so that appears to be working correctly.

The MissionDuration state reads "8", so that's filling in, too, though I haven't yet actually timed anything to see how accurate that is. If it is, that will be very helpful. I'll double check this, but it seemed like the the duration updated during the run. It seemed to go from 5 minutes to 8 minutes.

OK, yes, it now reads 13 minutes (same run), so it is updating in real time. Not sure what is driving that: how it estimates beforehand, and then what occurs to change the estimate during the run.

Now reads 15 minutes.

Oops, I guess I misunderstood. My bad, it's not reporting how long the mission will take, it must be reporting how long the mission has been running.

All the Lifetime[xxx] states are filled in. So the new one(s) are working.

So I vacuumed enough to cause the Roomba to return to the base mid-mission, for a recharge, and that's when the other states lit up. Perfect! RechargeM filled in, as did RechargeFinish. And currentState_Statement reflected what was going on, too. All good!

It looks like once the Roomba has enough charge to complete the mission-in-progress, the RechargeM goes back to 0 and RechargeFinish goes blank. So RechargeM is tracking charge minutes remaining necessary to complete the current mission, not time remaining to charge back to 100%. Which is fine for my use.

So thanks for fixing the "broken" states and adding the others. I'll be able to make great use of them.

If I can offer any other reporting let me know!

Posted on
Fri Sep 24, 2021 2:41 am
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: iRoomba iRobot Plugin

Thanks

I kept adding a few new fields as you have discovered….

Yes the RechargeM - reports how much time left to recharge if currently in middle of job. With the Datetime equivalent reporting when this will be finished.

The currentstate_Statement - was an attempt to report what is happening, incorporating mainly recharge time, running time etc in a statement for control page. Mainly because the recharge time is often empty - so hard to put in control page and most of the time not needed.

If other thoughts come to mind let me know

Thanks

Glenn

Posted on
Fri Sep 24, 2021 4:13 am
Mark offline
User avatar
Posts: 262
Joined: Apr 21, 2005
Location: California

Re: iRoomba iRobot Plugin

I'm finding the currentstate_Statement very handy! I did something similar, too, using python to fill a variable with various states, modifying and combining the text to suit my preferences.

I find the currentstate_Statement lingers on the "Running..." and duration states when the Roomba is actually returning, emptying, cancelled, etc. Which is why I supplemented it with my updating variable (I'm using yours and mine in my pages). That would be my only critique... The more currentstate_Statement reflects what the Roomba is actually currently doing the better.

Regarding the dates/times, are those formatted by the Roomba, or does the Roomba supply a date object and then your plug-in formats it? The reason I ask, I found the format a bit odd, in that the time is sandwiched in between the date. I think it goes day, month, date, time, year, or something like that. I worked around that, by extracting the time out of the middle (I only needed the time for what I was using that for, so I used python's split), so it's fine for me as is... just curious...

Posted on
Fri Sep 24, 2021 4:21 am
GlennNZ offline
User avatar
Posts: 1552
Joined: Dec 07, 2014
Location: Central Coast, Australia

iRoomba iRobot Plugin

No problem

The currentstate very much work in progress

The date time given UK and US users should be formatted in whatever is standard for your install - the so called %c for python. But can potentially make user adjustable as have done with other plugins …


Sent from my iPhone using Tapatalk

Who is online

Users browsing this forum: No registered users and 1 guest