diff --git a/MySensors.h b/MySensors.h index 8ef11988d..295888a7f 100644 --- a/MySensors.h +++ b/MySensors.h @@ -388,7 +388,6 @@ MY_DEFAULT_RX_LED_PIN in your sketch instead to enable LEDs #include "core/MySensorsCore.cpp" // HW mains -#if !defined(MY_CORE_ONLY) #if defined(ARDUINO_ARCH_AVR) #include "hal/architecture/AVR/MyMainAVR.cpp" #elif defined(ARDUINO_ARCH_SAMD) @@ -404,7 +403,6 @@ MY_DEFAULT_RX_LED_PIN in your sketch instead to enable LEDs #elif defined(TEENSYDUINO) #include "hal/architecture/Teensy3/MyMainTeensy3.cpp" #endif -#endif #endif diff --git a/core/MySensorsCore.cpp b/core/MySensorsCore.cpp index 5412e87b9..fcb69398d 100644 --- a/core/MySensorsCore.cpp +++ b/core/MySensorsCore.cpp @@ -88,6 +88,14 @@ void _infiniteLoop(void) void _begin(void) { +#if defined(MY_CORE_ONLY) + // initialize HW and run setup if present + (void)hwInit(); + if (setup) { + setup(); + } + return; +#endif // reset wdt hwWatchdogReset(); diff --git a/examples/SecurityPersonalizer/SecurityPersonalizer.ino b/examples/SecurityPersonalizer/SecurityPersonalizer.ino index 882d52366..58ae7593e 100644 --- a/examples/SecurityPersonalizer/SecurityPersonalizer.ino +++ b/examples/SecurityPersonalizer/SecurityPersonalizer.ino @@ -439,9 +439,7 @@ void setup() hwRandomNumberInit(); #endif - Serial.begin(MY_BAUD_RATE); while(!Serial); // For USB enabled devices, wait for USB enumeration before continuing - hwInit(); print_greeting();