 /*
  Oregon Scientific Weather Station and Manchester Decoding, (reading by delay rather than interrupt)
- Author: Rob Ward 
+ Rob Ward 2015
  This example code is in the public domain.
  Use at your own risk, I will take no responsibility for any loss whatsoever for its deployment.
  Visit https://github.com/robwlakes/ArduinoWeatherOS for the latest version and
  documentation. Filename: MainWeather_09.ino
 
- Main_Weather_09, 22 March 2017  (works with Python3)
+ Main_Weather, 24 Dec 2017  (works with Protocol Version 3.0)
 
  The aim of this version is use the new Manchester decoding routine and incorporate detection
  of a Oregon compatible sensor built to cover novel environmental sensors.

// Temperature 24.9799995422 degC Humidity 40.0000000000 % rel
void thermom() {
  temperature = (double)((nyb(11) * 100) + (nyb(10) * 10) + nyb(9)) / 10; //accuracy to 0.1 degree seems unlikely
  if (nyb(12) == 1) { //  Trigger a negative temperature
    temperature = -1.0 * temperature;
  }
  humidity = (nyb(14) * 10) + nyb(13);

 I was not able to protect the circuit.
 SI1145 Digital UV Index / IR / Visible Light Sensor could also be useful as it reports SPI 
 and can actually give predicted UV levels by measuring Visible light and IR.

 Special thanks to Darko in Italy who corrected an error when decoding negative temperatures. Grazie ragazzi!!!
 
 The Future:
 The Solar Power sensor (a silicon cell's open voltage under sunlight) has been added
