October 10, 2022 at 1:13 pm #74096
Ray, recently my AC2.2 controllers seem to be having problems getting weather and also the sunset and sunrise times appear to be off sometimes Causing my lights to come on late then turn off late. eg. I took a snap shop. These controllers are running fw 2.17 as it is the max they can run.
Sunrise: 06:30 Sunset: 19:12
Sunrise: 06:50 Sunset: 18:23
Sunrise: 06:50 Sunset: 18:21October 13, 2022 at 5:04 pm #74131
I opened a ticket as well and the response I got does not help at all. I am not seeing any weather forecast on these units. My 2.3 and 3.0 units are all working. I need some assistance on this as I have large areas of lights not working in a high foot traffic areas.
Sent: Thursday, October 13, 2022 7:25 AM
Subject: Re: ACOS2.2 fw 2.17
Sorry, I don’t know what’s causing this. The sunrise/sunset times you see in the forecast are not the actual sunrise/sunset times used by the firmware, the firmware get these times from the weather script.
On Wed, 12 Oct at 5:57 PM ,
Help Desk powered by Freshdesk Support Desk 12016:146282October 14, 2022 at 7:42 pm #74142
While debugging this, I found the root cause of the issue: weather.opensprinkler.com is now proxied by Cloudflare (CF), and as a result, the return of the weather script has additional header data added by Cloudflare. This makes the result (including header) larger than 512 bytes. The EtherCard library used in early firmwares such as 2.1.7 apparently has a limitation which does not allow it to handle received packet larger than 512 bytes, therefore the weather query fails. We are looking into how to address this issue, one possibility is to see whether the additional headers added by Cloudflare can be reduced or removed; if that’s not possible, the only viable option is to launch a weather service elsewhere (you can set up a weather server yourself, using a raspberry pi for example), and change OpenSprinkler settings to point to your new server which is not proxied by CF. This should be able to solve the problem.
Coincidentally, the larger result data might also affect OpenSprinkler 2.3 and 3.0 running 2.1.9(9) or (10) — what happens here is that although the Ethernet library is able to handle any size incoming data, it still splits the packet into chunks of no more than 512 bytes each. When I wrote the firmware, I did not anticipate the weather query result can be larger than just a few hundred bytes, so the current code will result in later chunks overwriting earlier chunks. So what it’s getting is not the complete weather query result, rather it’s the last chunk. Fortunately because most of the data is header data, the actual weather data needed by the firmware is in the last chunk, so after peeling away header, in most cases it still has the correct weather data. However, there is clearly a problem in that this leaves the firmware vulnerable to variations in the header data or weather query result, in some cases it can lead to failure of parsing the weather result. In any case, I have fixed this issue and will shortly make minor revision 2.1.9(11) available. If you are observing your OpenSprinkler getting weather status ‘Offline’ it is very likely due to this bug, whether you are using WiFi or wired Ethernet. I will make a separate post shortly.January 16, 2023 at 2:43 pm #74732
As you know I was an early adopter of your OS controllers with over 25 deployed. Fortunately only 5 are 2.2 and the one 2.1 I had I replaced long ago. While the majority are 3.0 I do have quite a few that are 2.3 and seem to be functioning well. It is now January 2023 I have not seen an update to this thread. I need to find a solution. Please let me know my options. I am going to test the new firmware on my 2.2 and 3.0.
- You must be logged in to reply to this topic.