diff --git a/boards/arduino-due/include/board.h b/boards/arduino-due/include/board.h
index 05f306e7499ee2c25713cc25e771d768de1d556e..2415aa7d933b63d84a852d4e04628ce13fd69e65 100644
--- a/boards/arduino-due/include/board.h
+++ b/boards/arduino-due/include/board.h
@@ -36,7 +36,7 @@ extern "C" {
 
 #define LED0_ON             (PIOB->PIO_SODR  = PIO_PB27)
 #define LED0_OFF            (PIOB->PIO_CODR  = PIO_PB27)
-#define LED0_TOGGLE         (PIOB->PIO_ODSR ^= PIO_PB27)
+#define LED0_TOGGLE         ((PIOB->PIO_ODSR & PIO_PB27) ? LED0_OFF : LED0_ON)
 /** @} */
 
 /**
diff --git a/boards/udoo/include/board.h b/boards/udoo/include/board.h
index 958ec382f78c90cb48f89a815a85e4438524f025..f5712a7ae296b7f3845dc8d9cca154f95a4717ad 100644
--- a/boards/udoo/include/board.h
+++ b/boards/udoo/include/board.h
@@ -39,7 +39,7 @@ extern "C" {
 
 #define LED0_ON             (LED_PORT->PIO_SODR =  LED0_MASK)
 #define LED0_OFF            (LED_PORT->PIO_CODR =  LED0_MASK)
-#define LED0_TOGGLE         (LED_PORT->PIO_ODSR ^= LED0_MASK)
+#define LED0_TOGGLE         ((PIOB->PIO_ODSR & LED0_MASK) ? LED0_OFF : LED0_ON)
 /** @} */
 
 /**