One problem I have had with the Ambient Weather system in the past was the lag time from the start of a rain shower until I actually saw any indication on my system that it was accumulating. The reason for this was that the weather station had to register a count, which got sent to the console about every 16 seconds. The console then would send this info to the Ambientweather.net system online once a minute at the most. Then my system had to get this info from the online account about once a minute before I would see the it was raining on my rain gauge display. The total delay could be as much as two to three minutes.
I found that the console recently had a feature added by which it could send data immediately after getting it from the outside system and send it to a local http client. I worked on getting this to work for me for some time. At first, I tried to get it to send to my Windows computer but was unable to get an app on the computer to collect this data. I then tried to get the data sent to an Arduino set up as an http server and it took a lot of work before I was finally able to get this to work.
This was great but I had a lot of trouble getting the address programmed into the console. Then I had trouble keeping the console connected to my local router. It seems they have trouble with 5ghz systems or mesh routers that provide both 5G and 2.4G signals. When it did work, it would average about 24 seconds to get the rain data, because many of the transfers took 31 seconds instead of 16.
With a little digging, I found a radio receiver that was supposed to work on the 915Mhz band the console worked on and I would be able to intercept the signal straight from the outside device. It took a lot of work, first to get the radio attached to the correct data ports on the ESP32 device I was using. Then I had to get the device to recognize the data packets and reject all of the extra noise the radio was picking up.
Slowly I was able to get the radio working reliably and get a steady flow of data. However, I found that the outside device only sent a count of tips of the rain sensor and that the console was keeping the totals. I had to develop code to read the data and convert it into a rain rate. That signal was more close to the 16 second rate that was supposed to come from the console. I worked this device into my overall system with my wall rain gauge display and my watch rain gauge.
I had used MQTT for a lot of the intra-device communications but with this new device, I switched over to using HTTP for data transfers within my home system, only using MQTT when I traveled with my phone and my watch. Since I'm using a free, serverless service from HiveMQ, I am limited in the number of bytes of data I can move so I have cut that way back.
Now, if a rain storm starts, I get a notification within less than a minute. I also cut back the rate calculations from the standard 10 minute average that AW uses to only 5 minutes. The rain storms we get here in Florida are usually on and off within minutes and taking 10 minutes after the rain has stopped for the rate to drop to zero was too long. I also changed the alarm to only come on when the rate exceeds 0.1 inch per hour. Little drizzles were turning it on and off too much.





