


Perhaps it had to do with security, and they don't want to discuss it for fear of giving out information that could be used to compromise their servers. I suspect that they have their reasons for not informing people or even admitting that they changed something on their servers. I'll try to post the complete code later, don't have time now, but yeah, changing it to "proper" GET format (which I've found is not easy to get decent documentation on online), by moving the host to its own line, adding the proper NLs & CRs (via "\n\r"), and properly closing the TCP connection, did the trick. Incidentally, I'm using an ESP8266 WiFi board to upload the readings.

Why did the first one work for a while, then stopped working? Could they have changed something in the PHP scripts on their servers, or updated some component of the server software, so that the old format no longer worked? Any idea what that might be? Here's the original GET format I used: GET HTTP/1.1Īnd here's the updated GET format that now works: GET /weatherstation/updateweatherstation.php?ID=stationid&PASSWORD=password&dateutc=+13%3A28%3A00&tempf=24.13&temp2f=24.98&humidity=41.60&dewptf=3.93&baromin=30.55&softwaretype=ArduinoCustomBuilt&action=updateraw HTTP/1.1 I tried using a different format, and voila, I was once again able to upload readings to WU, and have been ever since. So I did a little googling, and saw that I might have been using the wrong GET format (even though it worked for a while). Nor was there likely a problem with WU's servers, as other local stations continued to upload readings regularly. Then all of a sudden, the WU server stopped accepting readings, and no amount of reboots of my station, router or modem, or tweaks to the code to fix possible issues, would fix it. I followed the GET protocol as explained on WU's Wiki, and it worked fine for around a week. So I decided to start uploading the same readings to Weather Underground, so others could use them as well. My Arduino Mega-based weather station has been working reliably 24/7 for over a year now, uploading readings every minute to a MySQL DB I have set up on a Raspberry Pi on my network.
