OpenSprinkler Forums OpenSprinkler Unified Firmware OS says “empty response” from local weather service (after update)

Viewing 12 posts - 1 through 12 (of 12 total)
  • Author
    Posts
  • #71225

    bekesizl
    Participant

    My PWS powered local weather service was working happily with my OS through the summer months.
    Last weekend I updated to firmware version 2.1.9 (9) from 2.1.9 (7) and made some tests to change the wifi access point.

    I am not sure if it is connected to the update, but OS is not getting data from the local weather service.
    I don’t know, where the problem is.

    PWS sends data, it is received my Meteobridge running on a RPi. -> checked, it is working
    Meteobridge sends data to the local weather service running on another RPi. -> checked, it is working
    For test purposes, NodeRed queries OS to calculate watering percentage with the call
    `http://192.168.1.OSIP/jc?pw=pwhash
    -> it has a plausible data
    System diagnostics at OS Web Interface says “Weather service: offline” and “Empty response” and it is not updating the watering percentage.

    I made a settings export before the update and reloaded the settings after the update.

    Field “weather” was filled with 192.168.1.25, the IP address of the local weather service at http://<your OS IP>:80/su

    What might have gone wrong?

    I switched back to DarkSky temporarily, but their rain data was extremely unreliable last summer.

    #71249

    franzstein
    Participant

    I encountered the same issue with often getting the OpenSprinkler “Empty Response” from my local weather service installed on a Raspberry PI. I encountered this issue with OpenSprinkler Firmware 2.1.9 (4), 2.1.9 (7) and actual with 2.1.9 (9). I think it’s not caused by the recent firmware update. The “Empty Response” isn’t always reported. Most of the time the weather service is requested successfully.

    I’ve done some investigations in June with OpenSprinkler Firmware 2.1.9 (4), and it is maybe worth to share my findings. My WiFi setup consists of a Fritz!Box 7590, a WiFi Repeater Fritz!WLANRepeater 310 and two PowerLines Fritz!PowerLine 1240E, Fritz!Powerline 1260E; all organized as a Mesh System. The Fritz!Box allows for monitoring and analyzing the intranet and internet traffic via WireShark. The OpenSprinkler installed in my garage connects to the WiFi Repeater as this is the nearest local network access. What I can see from the WireShark reports is, that there is no response data missing at all. Please have a look at the attached log files.

    Please note that I used a private firmware compilation that requests the weather service every 20 minutes to get this log files. I only changed the CHECK_WEATHER_TIMEOUT parameter in this compilation. Everything remains unattached.

    However, I’m not sure if the Fritz!Box capture feature really monitors the intranet traffic between the WiFi repeater and the OpenSprinkler? The data traffic logged is more likely what is captured in or close to the Fritz!Box? It might be interesting to move the OpenSprinkler next to the Fritz!Box, to see if the issue still exists, if no WiFi repeater is involved. I think I will investigate this during the winter season. I don’t need the OpenSprinkler garage installation during this time of the year.

    I can still think of let’s say an OpenSprinkler runtime error or some overload problem causing this “Empty Response” – issue. Let’s see if the OpenSprinkler team has some ideas what to do?

    #71254

    franzstein
    Participant

    @bekesizl: If you haven’t had any issues with your old WiFi setup, it’s maybe worth to use your previous WiFi setup again. Maybe everything is working with the old setup? It might be interesting to know if this solves the issue!

    #71259

    franzstein
    Participant

    Some additional information. For the above investigation I used a value of about 20 minutes (1201 seconds) for the CHECK_WEATHER_TIMEOUT parameter. With the OpenSprinkler firmware update to 2.1.9 (9) I’m using a value of about 60 minutes (3601 seconds) polling the weather service every hour.

    With firmware version 2.1.9 (9) the issue with the “Empty Response” occurs once twice sometimes three times a day. Please see the attached system status report. Looking at the Fritz!Box or Fritz!Repeater status reports there are no outages or other problems reported for the given weather service request times.

    #71263

    bekesizl
    Participant

    I didn’t had time during the week for experiments, Wifi is using the old “Access Point”.
    I didn’t manage to set up the Mikrotik AP until now.

    Today I changed back the used weather service from DarkSky to PersonalWeatherStation this afternoon.
    This evening the scale was updated. I will observe how it behaves in the future.

    I am pretty sure that the weather service script is working alright, as I built myself a flow in NodeRed, that queries Opensprinkler for the data for the query of the weather service, then queries the weather service and exports the scale. It was working alright through the whole week.
    I need this to be able to observe the weathering scale without using Opensprinkler webapp or anything OS related, as neither the OS API queries, nor the MQTT interface includes this value.

    How bad is the compilation of the firmware?
    Sometimes I would also like OS to update the scale more often, especially after a rain in the night.

    #71277

    bekesizl
    Participant

    Nothing changed in the settings or wifi setup since yesterday.
    Weather service report is understand by Nodered and scale displayed by HomeAssistant.
    Opensprinkler is online.
    Again “Empty response” and scale changed to 100%. I am switching temporarily to manual scale.

    #71286

    franzstein
    Participant

    bekesizl: Compiling the OpenSprinkler isn’t to complicated. You have to follow the instructions given in the OpenSprinkler Support section. Some hints are also given in the forum thread: Error building firmware from source.

    If you change the CHECK_WEATHER_TIMEOUT parameter in main.cpp to 1 hour as described above there is a good chance that you see the “Empty Response” answer only once or twice per day. In this way you can probably use your own local weather service for the OpenSprinkler Water% calculation.

    I’m not sure what causes the issue. I’s maybe some timing problem due to the longer data travel time if WiFi repeaters are in use. Maybe the OpenSprinkler team can give some hints on what causes the “Empty Response” in detail.

    #72072

    franzstein
    Participant

    I don’t need to water the garden during the winter season, so I started the “Empty Response” investigations again.

    As I described already, I have a Fritz!Box 7590 router with the latest FRITZ!OS: 07.29 in use. My OpenSprinkler is a v3.0 hardware model. The “About” feature of the OpenSprinkler App reports: App Version: 2.2.4, Firmware: 2.1.9(9), Hardware Version:3.1-DC. This means everything is updated to the newest releases!

    I have temporarily installed the OpenSprinkler indoors with a direct WiFi connection to the Fritz!Box 7590 router. No repeaters or powerlines are in use for the WiFi connection. I’ve also switched off my local PWS weather server installation using the default OpenSprinler Weather Service: http://weather.opensprinkler.com.

    Unfortunately the OpenSprinkler doesn’t receive the requested Weather Service Details from the OpenSprinkler Weather Service. The answer listed is “Empty Response” and the Weather Service is marked as “Offline” after power on. The weather forecast given by the OpenSprinkler App works and lists “Dark Sky” as the weather provider.

    The strange thing is that if I’m monitoring the intranet and internet traffic via the build in Fritz!Box capture feature and analyzing it via WireShark everything works fine. The Weather Service is marked “Online”, the last answer listed is “Success” and the Weather Provider is given as “Dark Sky”.

    I really don’t know what went wrong? Is there a possibility to debug the OpenSrinkler request/response messages exchanged with the Weather Service? I think OpenSprinkler receives an error message and it might be worth to look at the error code. If it isn’t a WiFi issue, is it possible to attach an ethernet module to my OpenSprinkler v3.0 hardware model and use a wired connection, instead. Any help would be appreciated.

    Thank and regards

    Franz

    #72086

    franzstein
    Participant

    I’ve continued troubleshooting my OpenSprinkler setup. The OpenSprinkler App uses the Get Controller Variables /jc?pw=xxx command to receive the OpenSprinkler information. Please see Firmware 2.1.9 API Document for details. Executing it within a web browser results in:

    {“devt”:1642771880,”nbrd”:1,”en”:1,”sn1″:0,”sn2″:0,”rd”:1,”rdst”:1642778976,”sunrise”:483,”sunset”:1014,”eip”:1469124457,”lwc”:1642771835,”lswc”:1642771835,”lupt”:1642771832,”lrbtc”:99,”lrun”:[0,0,0,0],”RSSI”:-49,”mac”:”60:01:94:70:87:60″,”loc”:”49.47432,10.94365″,”jsp”:”https://ui.opensprinkler.com/js&#8221;,”wsp”:”weather.opensprinkler.com”,”wto”:{“h”:100,”t”:100,”r”:100,”bh”:65,”bt”:69.8,”br”:0,”pws”:”IFRTH65″,”key”:””},”ifkey”:”bu9J7THcINuUAoUYzayc77″,”mqtt”:{},”wtdata”:{“wp”:”DS”,”h”:82,”p”:0.1,”t”:34.8,”raining”:1},”wterr”:0,”curr”:0,”sbits”:[0,0],”ps”:[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]}

    if running the Fritz!Box capture feature.

    or in:

    {“devt”:1642760267,”nbrd”:1,”en”:0,”sn1″:0,”sn2″:0,”rd”:0,”rdst”:0,”sunrise”:483,”sunset”:1014,”eip”:3232281121,”lwc”:1642760237,”lswc”:0,”lupt”:1642760239,”lrbtc”:99,”lrun”:[0,0,0,0],”RSSI”:-45,”mac”:”60:01:94:70:87:60″,”loc”:”49.47432,10.94365″,”jsp”:”https://ui.opensprinkler.com/js&#8221;,”wsp”:”weather.opensprinkler.com”,”wto”:{“h”:100,”t”:100,”r”:100,”bh”:65,”bt”:69.8,”br”:0,”pws”:”IFRTH65″,”key”:””},”ifkey”:”bu9J7THcINuUAoUYzayc77″,”mqtt”:{},”wtdata”:{},”wterr”:-4,”curr”:0,”sbits”:[0,0],”ps”:[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]}

    if not running the Fritz!Box 7590 capture feature.

    The error code of the last response from the weather server “wterr”: -4 describes the network problem as “received empty return”. The “wtdata”: {} is not populated if compared to the successful result. However, there are also cases where the “wtdata”: {} is populated correctly and the last response from the weather server is “wterr”: -4, especially if interfacing my Local PWS weather server!

    {“devt”:1642833002,”nbrd”:1,”en”:1,”sn1″:0,”sn2″:0,”rd”:1,”rdst”:1642843770,”sunrise”:481,”sunset”:1015,”eip”:3232281121,”lwc”:1642830714,”lswc”:1642827112,”lupt”:1642791088,”lrbtc”:4,”lrun”:[0,0,0,0],”RSSI”:-52,”mac”:”60:01:94:70:87:60″,”loc”:”49.47432,10.94365″,”jsp”:”https://ui.opensprinkler.com/js&#8221;,”wsp”:”192.168.178.39:3000″,”wto”:{“h”:100,”t”:100,”r”:100,”bh”:65,”bt”:69.8,”br”:0,”pws”:”IFRTH65″,”key”:””},”ifkey”:”bu9J7THcINuUAoUYzayc77″,”mqtt”:{},”wtdata”:{“wp”:”local”,”h”:97.26,”p”:0.05,”t”:32.1,”raining”:0},”wterr”:-4,”curr”:0,”sbits”:[0,0],”ps”:[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]}

    This is somehow strange and not understandable? I have also performed a factory reset of the OpenSprinkler and the Fritz!Box router without any success in solving the issue.

    Any ideas what went wrong or how to go on with the investgation?

    #72263

    bekesizl
    Participant

    I guess I will take another more drastical route for this problem.
    I don’t think our problem is wifi related, at least not related to our home network.
    But I don’t really have the time to start investigating in the Arduino code.

    I am logging my weather station data with several methods into Home Assistant and InfluxDB. I can also reach the data from Node-Red.
    My best idea at the moment is to revert to manually setting the watering percentage and this will be done regularly over the API from Node-Red.
    Maybe I can use the output of the original weather service or simply recreate average values via InlfuxDB queries and override them in case of rain.

    I already have a Node-Red flow that calculates the percentage every 30 minute from data from the OS and the weather service for display.
    I hope I will be able to find the possibility to change watering level within the API documentation.

    It is strange, that only we two are having this kind of problem and as long it is not getting reported by many users, there is no change to get it solved.
    You already came a long way with your investigation.

    #72441

    franzstein
    Participant

    @bekesizl: It’s still freezing at night times in Germany and I’m not running OpenSprinkler right now to water the garden. It might be interesting, if the issue still exists with a wired Ethernet connection. Unfortunately, my OpenSprinkler V3.0 hardware model doesn‘t allow to attach an Ethernet module.

    I‘ve also a backup system consisting of an ESP32 module, using Weather Underground weather reports to calculate the water level according to the Zimmerman method. The calculating result is send to the OpenSprinkler, running in manual mode. So, it’s a good idea to use such a workaround.

    What I can think about is, that the “Empty Response”- issue is caused by some timing problem within the Arduino WiFi library function. I don’t know if this is the case and how to continue with the investigation?

    However, for the time being my Local Weather Service runs with three or four data losses per day and can be well used to control the OpenSprinkler garden watering.

    #72448

    bekesizl
    Participant

    I started my system this Monday as the morning freezes were gone and the lawn needed watering.
    At the moment I am running with manually setted percentage, set from Node-Red via querying the Weather Service runnning on an RPi and I also monitor the actual percentage on a graph.

    I used to run OS with a wired Ethernet connection, but I had some issue and switched over to wireless. The gateway for my Froggit/Ecowitt weather station is also located in the same room and needs wifi anyway.

    I also don’t know where to start with the investigation.
    I guess I will leave it this way and hope to have reliable operation this summer.

Viewing 12 posts - 1 through 12 (of 12 total)
  • You must be logged in to reply to this topic.

OpenSprinkler Forums OpenSprinkler Unified Firmware OS says “empty response” from local weather service (after update)