Library for time zone conversions and automatic DST adjustments

Mitch

WiFi101 is just a WiFi shield for Arduino and will run time.h just fine
MKR1000 a Cortex-M0 MCU, this i have used time.h on this core

Time.h will run on almost any Atmel chip and most other processors. I have even used time.h on the attiny13 and thats not much memory.

i should note i have used time.h on ST Cortex-M0, 80C52, several Atmel, ESP8266, ESP32 and TI 430 processors with good results. only the 80C52 needed a special #ifdef to compile

i expect your library should run on all of these since it is really just an interface to the time.h in the first place.

The ONLY chip specific code I see are the EEPROM read/write functions and fortunately you already have the #ifdefs in place to deal with this.

only the "#include <WProgram.h> " is questionable for other IDEs than Arduino since WProgram.h is part of Arduino. "else if ARDUINO < 100" will catch lesser Arduino versions and remove the Arduino headers in NON-Arduino IDEs.

Something like this should remove the Arduino headers if used outside of the Arduino IDE.

   #if ARDUINO >= 100
   #include <Arduino.h> 
   #else if ARDUINO < 100
   #include <WProgram.h> 
   #endif

Excellent work.