diff --git a/libraries/AP_ADC/AP_ADC_ADS7844.cpp b/libraries/AP_ADC/AP_ADC_ADS7844.cpp
index 7a925e63519679ba7550f2deada2681a86116913..a5f048772f1a1dde54c4a188dd04e2e8889c0bd6 100644
--- a/libraries/AP_ADC/AP_ADC_ADS7844.cpp
+++ b/libraries/AP_ADC/AP_ADC_ADS7844.cpp
@@ -133,6 +133,7 @@ AP_ADC_ADS7844::AP_ADC_ADS7844()
 // Public Methods //////////////////////////////////////////////////////////////
 void AP_ADC_ADS7844::Init( AP_PeriodicProcess * scheduler )
 {
+    scheduler->suspend_timer();
 	pinMode(ADC_CHIP_SELECT, OUTPUT);
 
 	digitalWrite(ADC_CHIP_SELECT, HIGH);  // Disable device (Chip select is active low)
@@ -159,6 +160,7 @@ void AP_ADC_ADS7844::Init( AP_PeriodicProcess * scheduler )
 
 	last_ch6_micros = micros();
 
+    scheduler->resume_timer();
     scheduler->register_process( AP_ADC_ADS7844::read );
 
 }