Hi folks,
Quite a significant update on my progress with the Oregon Scientific weather station, and how to make further use of a good system by intercepting the signals with an Arduino Uno and a basic 433MHz Receiver. Put the LCD receiver on the kitchen bench and Arduino in the garage carrying out your ultimate instructions.
There are a few improvements (eg the checksum routine is now correct), a few discoveries (eg bit 7 on rolling code is "new device"), the timing has been double checked (how do we really know for sure though?) , some things remain problematical (ie rain calibration, not so easy), other things are still unknown (eg low battery indication, amongst others), and some things are the same (eg 433+Uno, humidity and atmospheric pressure sensors, and delays, not counting interrupts).
The format of the program has been altered considerably to gather the readings as the sensors send them, and then combine the readings into a single CSV line output every minute on the serial port. This was how my previous Bios/Thermor unit did it, and it made logging in the www server's Python program simple but effective.
There is also plenty of comments on all things to to do with the protocol, and a few left over debugging routines, that others may find useful if adapting this code to another situation, or just useful in general, so I will leave them there for people to use as they see fit.
As I have indicated above I still have quite a few questions to answer, and even if what I reckon I know is OK, it still deserves scrutiny so please tell me gently if there are any glaring errors or suggestions for improvement, otherwise enjoy!
Rob
Latest Version: my_Origo_24.ino
my_Origo_24.ino (24.7 KB)