Not sure exactly what I am doing with github, but any assistance would be appreciated if so deemed to be required.
I have published the latest version on github (on my son's advice)https://github.com/robwlakes/ArduinoWeatherOS
And the main upgrade is very simple but hugely important.
Up until now I have programmed the Rx algorithm to find a minimum of 20 Header Hits before accepting any bit stream as legitimate. I have since become aware that my program would "flat line" the anemometer for hours on end (when the Temperature and Rainfall which both use about 90% of the same code happily continued on, and what was different was trivial).
I believe at the moment the expectation of at least 20 clear Header Hits was too much and the 433Mhz Receiver may have been stabilizing its AGC quicker on some days than others (and therefore changed the number of header hits the Arduino saw as legit) and this lead to the headers on the Anemometer signal being accepted for days on end, but suddenly, at other times, the Anemometer was "dropping out", ie digitally filtered out!!
After a while, if the RF reception got better, the AGC settled quicker, and the anemometer header bits once again exceeded 20, all was fine. No flat spots, "signal" back to normal. However it would seem that expecting 20 hits all the time was just too close to the cut off point, so I have changed the 20 to 15 and so far all is looking good (25% change). This will give a better margin for error, and maybe even a lower number such as 10 may be even better. I would be interested to hear of your experiences in this area, as I have spent many long hours chasing this problem. It seem so obvious now!!!!
There are a few other improvements I intend to add once this major upgrade is proven to be correct. Stay Tuned