A different perspective, FWIW.
I’m using the Arduino OS with 24 zones. I run an automation app that talks to the OS 24/7. It polls OS at the rate of 17 messages every 5 minutes. Since I’m still tinkering with capability I keep stats on the message activity. Looking at total messages sent and # of messages that failed to get a response in the most recent uptime period:
Up 8.5days. 41616 poll messages sent. 26 message failures.
During this period of time I also used the phone app and the browser GUI to make programming changes so there was even more message traffic at times.
Yup, I think the OS makes server calls more frequently than needed (once an hour)
Yup, I wish that OS had an async notification method to let me know when to request updates. This would cut down drastically on polling.
However, the message failure rate is still very low and hasn’t caused any issues in sprinkler operation or my ability to monitor and control the device.