diff --git a/variants/arduino_zero/variant.h b/variants/arduino_zero/variant.h
index d961b495e44ef2d32f3ee693d5c0c6a99cc53c79..eb38fcd4e690af029b7105da9d39c83ec827d3ff 100644
--- a/variants/arduino_zero/variant.h
+++ b/variants/arduino_zero/variant.h
@@ -57,6 +57,7 @@ extern "C"
 #define NUM_DIGITAL_PINS     (14u)
 #define NUM_ANALOG_INPUTS    (6u)
 #define NUM_ANALOG_OUTPUTS   (1u)
+#define analogInputToDigitalPin(p)  ((p < NUM_ANALOG_INPUTS) ? (p) + NUM_DIGITAL_PINS : -1)
 
 #define digitalPinToPort(P)        ( &(PORT->Group[g_APinDescription[P].ulPort]) )
 #define digitalPinToBitMask(P)     ( 1 << g_APinDescription[P].ulPin )
diff --git a/variants/mkr1000/variant.h b/variants/mkr1000/variant.h
index 0f306bf3944c3463be920621e67b68442811d78f..673337331d175846fa813d19888c3bb268283f79 100644
--- a/variants/mkr1000/variant.h
+++ b/variants/mkr1000/variant.h
@@ -40,6 +40,7 @@
 #define NUM_DIGITAL_PINS     (15u)
 #define NUM_ANALOG_INPUTS    (7u)
 #define NUM_ANALOG_OUTPUTS   (1u)
+#define analogInputToDigitalPin(p)  ((p < NUM_ANALOG_INPUTS) ? (p) + NUM_DIGITAL_PINS : -1)
 
 // Low-level pin register query macros
 // -----------------------------------