[RELEASE] Rachio Community (dashboard + hose timers)

Thanks for the reply. More often. Polling can occur every minute and stay within their limits.

In my instance, I have 4 control valves on opposite ends of the main controller. So I have those connected to Zooz relay controls. I have a roof when Rachio reports those zones are watering, it triggers the relays and shuts them off accordingly.

The issue is the API doesn't update the zone status unless until polling occurs, therefore watering for those zones maybe missed.

Since I only water in the morning for now,I created a rule to poll every minute only in the morning. If I did all day, that in conjunction with the current every 15 minute polling would put me over the threshold of polling. If we can manually select how often natively in the app, then we can stay under that threshold.

Hope that makes sense.

Rachio's documentation says you get 1700 API calls per day. With 1440 minutes per day, you could in fact make a little more than 1 API call per minute. However, since the API divides the data over multiple API calls, each "poll" event in this app makes multiple API calls. How many depends on how many devices and how many zones you have, but at a minimum you'd be looking at 5 API calls per poll. I've tried to minimize the number of API calls with this version, but they are still going to add up quick. I suspect the minimum poll rate would be every 5 minutes for a small system, but I have not tested this.

Perhaps your setup suggests having the ability to pause and resume polling on demand would be useful. That would allow you to specify a low polling rate (e.g., every 1 minute) but to pause polling after you know your watering is done for the day.

This isn't entirely true, or at least it's not the intended functionality of the app. Rachio provides so-called webhooks for the irrigation controllers (not yet for the hose timers). This means Rachio pushes events to the app upon their occurrence, so it should be catching intermediate events between polls. If the app gets an event, it re-polls on demand.

If you are having issues with events between polls, it may warrant investigating whether the webhooks are working as intended for you.

Interesting. I haven't been able to get a zone to trigger without a poll.

What/where exactly would I be looking for the issue?

Tia

Press "Done" in the App while you have the log open. See if. you get any errors, especially as it relates to the web hook subscriptions.

This is what I get when I hit "Done"

app:11622023-10-15 01:26:04.024 PMinfoRachio Community -- Polling API for Latest Data -- Last Update was (31.084 seconds ago)

app:11622023-10-15 01:26:04.021 PMerrorwebhookHttp Exception Error: status code: 412

app:11622023-10-15 01:25:57.715 PMtraceinitialized...

v3.0.0 is ready for beta testing. See the dedicated beta testing thread here.

@bigstevep

(1) full support for Rachio Hose Timers
(2) update the dashboard to allow the user to visually differentiate different schedules/programs
(3) improve user control over logging
(4) Manually configure polling interval
(5) fix webhook bugs @bigstevep

I'll definitely check it out. Do you think it will resolve the webhook error I posted above?

Thanks!

Yes

1 Like

I have Rachio Community Rachio Community v2.1.12 on a C5 (firmware 2.2.3.119 ) with a 8-Zone (Gen 3 Lite) unit (EC2B7A)

The curZoneDuration is set (by default) to 600 seconds.

Is it possible to change that value ? I use my Rachio exclusively manually and don't want to follow automatic schedules. But I want to increase (if necessary) the duration of the opening of some valves.

on each valve (ZoneX),
I have zoneWaterTime : 10
on main unit (Controller),
I have curZoneDuration : 600

The "Set Zone Water Time" command should do what you want.

Indeed, it works !
I set few tiles to manage how it should works for me.
Thank you for your fast reply and your nice work on this

Can anyone confirm if you're able to run the hose controller simultaneously with a regular zone on the irrigation controller?

Yes you can do that. To be clear, the hose timers are not available in this release, but should be available soon once beta testing is done. You are of course welcome to beta test.

1 Like

I'm beta testing and yes indeed you can run both at the same time. At least I can, LOL

2 Likes

Is it possible to change the "null" (2 parameters) values for 0 when the Rachio valves are not running ?

I had errors when I try to creates rules that check the value of the elapsed time and the value becomes null

Trigger event :
Rachio - Zone 1 reports zoneElapsed(null) increased

and the rule itself crashed (unrecoverable).

Is it a reason for such a value ?

Rachio - null values - 2 parameters

I'll consider it for the next release. The reason that the original developer coded it that way is so that you can tell the difference between there not being any data and there being a true 0 for the data. From a technical standpoint, it's incorrect to say that there is an event where the data = 0 when in fact there is no data at all.

In your rules, are you able to check if zoneDuration has a non-null value to avoid the error, but just would prefer not to have to take that extra step in your rules?

IMPORTANT:
v3.0.0 has now been released on github and via HPM. This is a major update that will require everyone to re-initialize their integrations after installing the new code. After installing the new code, go into the app and re-initialize (make selections and press DONE). This will also change the dashboard URL, so it will break existing uses of that. Apologies for the one-time inconvenience, but it was necessary to add support for hose timers.

(1) full support for Rachio Hose Timers
(2) update the dashboard to allow the user to color code different schedules/programs
(3) improve user control over logging
(4) Manually configure polling interval
(5) fix webhook bugs
(6) tentatively sets zoneDuraiton and zoneElapsed to 0 instead of null (subject to revert back if there's objection to this)

The default dashboard settings preserve the existing dashboard look. Check out the new dashboard settings when you are re-initializing, in order to take advantage of the new dashboard options. To color code different schedules, uncheck “Show Single Watering/Skip Icon”, so that you can use multiple icons for multiple respective schedules/programs. Color coding options will then appear. To have enough space for multiple icons, icons will now appear at the top of the dashboard rather than to the side of the day text. As a result, the overall dashboard got slightly taller, so you may need to adjust how your Rachio dashboard is sized into your overall smart home dashboard.

Polling interval warning: Rachio gives you 1700 API calls per day. Setting the polling interval to less than 15 minutes risks going over this limit, as each poll takes up multiple API calls, with the number depending on the size of your system. If you see warnings or errors in your log that the API limit is near or exceeded, increase the poll interval. You can see today’s API call count in the state of the Rachio Community app for reference. Note, too, that the irrigation controllers have webhooks, so a short poll interval isn’t really needed for them as changes should be picked up quickly even with a long poll interval. At the moment, though, hose timers do not yet have webhooks, so changes on the hose timer side will only be picked up at the polling rate. Hopefully Rachio will add webhooks for hose timers soon.

For anyone who wishes NOT to upgrade, you may continue to use the v2.2.12 branch which I have preserved on gitHub. However, I will no longer maintain that branch.

3 Likes

After upgrading, the hi | lo temperatures are switched for all days on my dashboard.

Screenshot_20231025_083910_Chrome

Yeah, that was an intentional change. I really don't know why I had it the other way around to begin with. I mean, naturally it makes more sense to have the low on the left and the high on the right, doesn't it? If that's just me, maybe it should be configurable....

EDIT: Hmm. Ok well after looking at various weather websites, it appears as though high on the left is fairly common. I'll make this configurable, with the default being what it used to be with high on the left. Hang tight.

2 Likes

v3.0.1 reverts temp order to previous order; adds temp order configurability to dashboard settings

2 Likes