OpenSprinkler Forums OpenSprinkler Unified Firmware Some issues and question Reply To: Some issues and question

#82043

robohack
Participant

You still need to do the simulation!

The last known good timestamp in NVRAM would just allow you to more easily calculate the exact start time for the simulation run — it would be the start time of the longest running program before the last timestamp.

But, yes, as you say if the NVRAM can’t handle too many writes, then it can’t be used for such a timestamp, even if it’s only once per minute.

So, the easy and sure good time to start the simulation is just before two runs of the longest running program. The simulation will have to run through more steps, but it will be impossible for it to miss scheduling any programs that would have been running at the reboot time or started during the downtime.

You probably know very well how futile it would be to try to convince any commercial controller manufacturer to change their feature set in any way no matter how interesting or valuable such a proposal might be — they’ve designed their firmware as much as a decade ago or more and have planned it to run unchanged in their product line for as many years to come as they can possibly manage while still making enough sales to justify manufacturing. Even most of the WiFi connected ones are not yet offering OTA updates so far as I know. There may be a kickstarter project or similar startup that’ll try do better, but if they try to go head to head with the big guys without also being open source, well they’ll die. An open source project like OpenSprinkler is the only niche where one can hope for a more proactive approach to firmware upgrades with new features and fixes.

If you’re doing well enough now in ongoing sales to keep supporting the project, imagine how much better you might do by being able to offer additional key features that the commercial controllers already offer. I’ve found in software-only open source projects that word-of-mouth is the primary driver for increasing user counts. You already support OTA updates, and if you can reach out to existing customers, help them update their firmware, then I’m sure you can get most of them to convince at least one of their neighbours to buy a unit as well. As is though the people I’ve talked to would be unwilling to give up their current controllers for one that can’t maintain operation for up to 24 hours after an unattended reboot, no matter how clunky and old their current controller is. I’m obviously not the best sales person when I point out a flaw in the product I’m trying to sell, but what else can you do when you know about such a problem?