diff --git a/lib/vendor/Maxim/MAX86150/max86150.c b/lib/vendor/Maxim/MAX86150/max86150.c
index 685dae5afb64cc4df77152d90d8e2a1f20f239ef..4bbd68389f9f3822922ae52787a0207ba53f8243 100644
--- a/lib/vendor/Maxim/MAX86150/max86150.c
+++ b/lib/vendor/Maxim/MAX86150/max86150.c
@@ -535,7 +535,11 @@ void max86150_setup(const uint8_t ppg_sample_rate)
 
 	max86150_fifo_enable_slot(1, MAX86150_SLOT_RED_LED);
 	max86150_fifo_enable_slot(2, MAX86150_SLOT_IR_LED);
-	max86150_fifo_enable_slot(3, MAX86150_SLOT_ECG);
+	// ECG is disabled for now as the FIFO code does not
+	// manage the increased FIFO rate correctly.
+	// E.g. instead of providging PPG data at 100 sps, the
+	// code provides PPG data at 200 sps
+	//max86150_fifo_enable_slot(3, MAX86150_SLOT_ECG);
 	//max86150_fifo_enable_slot(4, MAX86150_SLOT_NONE);
 
 	max86150_set_ppg_adc_range(MAX86150_ADCRANGE_16384);
@@ -662,14 +666,15 @@ uint8_t max86150_get_sample(uint32_t *red, uint32_t *ir, int32_t *ecg)
 				MXC_I2C1_BUS0,
 				MAX86150_ADDRESS << 1,
 				data,
-				3 * 3,
+				3 * 2,
 				0
 			);
 
 			// According to datasheet MS bits of PPG have to be masked
 			*red = ((data[0] << 16) | (data[1] << 8) | (data[2])) & 0x7FFFF;
 			*ir  = ((data[3] << 16) | (data[4] << 8) | (data[5])) & 0x7FFFF;
-			*ecg = (data[6] << 16) | (data[7] << 8) | (data[8]);
+			//*ecg = (data[6] << 16) | (data[7] << 8) | (data[8]);
+			*ecg = 0;
 		}
 
 	}                         //End readPtr != writePtr