AceTimeClock  1.0.3
Clock classes for Arduino that can synchronize from an NTP server or an RTC chip
AceTimeClock.h
1 /*
2  * MIT License
3  * Copyright (c) 2021 Brian T. Park
4  */
5 
17 #ifndef ACE_TIME_CLOCK_ACE_TIME_CLOCK_H
18 #define ACE_TIME_CLOCK_ACE_TIME_CLOCK_H
19 
20 // Blacklist boards using new Arduino API due to incompatibilities. This
21 // currently includes all megaAVR boards and SAMD21 boards using arduino::samd
22 // >= 1.8.10. Boards using arduino:samd <= 1.8.9 or SparkFun:samd are fine.
23 #if defined(ARDUINO_ARCH_MEGAAVR)
24 #error MegaAVR not supported, https://github.com/bxparks/AceTime/issues/44
25 
26 #elif defined(ARDUINO_ARCH_SAMD) && defined(ARDUINO_API_VERSION)
27 #error SAMD21 with arduino:samd >= 1.8.10 not supported, https://github.com/bxparks/AceTime/issues/45
28 
29 #elif defined(ARDUINO_API_VERSION)
30 #error Platforms using ArduinoCore-API not supported
31 #endif
32 
33 #include "ace_time/clock/Clock.h"
34 #include "ace_time/clock/NtpClock.h"
35 #include "ace_time/clock/DS3231Clock.h"
36 #include "ace_time/clock/UnixClock.h"
37 #include "ace_time/clock/SystemClock.h"
38 #include "ace_time/clock/SystemClockLoop.h"
39 #include "ace_time/clock/SystemClockCoroutine.h"
40 
41 #if defined(ARDUINO_ARCH_STM32)
42 #include "ace_time/clock/StmRtcClock.h"
43 #include "ace_time/clock/Stm32F1Clock.h"
44 #endif // #if defined(ARDUINO_ARCH_STM32)
45 
46 
47 // Version format: xxyyzz == "xx.yy.zz"
48 #define ACE_TIME_CLOCK_VERSION 10003
49 #define ACE_TIME_CLOCK_VERSION_STRING "1.0.3"
50 
51 #endif