diff --git a/epicardium/modules/bhi.c b/epicardium/modules/bhi.c
index 7d3689502e07c3de554744b1f10684d9d0af256b..54b157aed1a272c85cbdb904a2c8313c18228b3f 100644
--- a/epicardium/modules/bhi.c
+++ b/epicardium/modules/bhi.c
@@ -412,6 +412,11 @@ void vBhi160Task(void *pvParameters)
 	bhi160_task_id = xTaskGetCurrentTaskHandle();
 	bhi160_mutex   = xSemaphoreCreateMutexStatic(&bhi160_mutex_data);
 
+	/*
+	 * Wait a little before initializing BHI160.
+	 */
+	vTaskDelay(pdMS_TO_TICKS(500));
+
 	int lockret = hwlock_acquire(HWLOCK_I2C, pdMS_TO_TICKS(100));
 	if (lockret < 0) {
 		LOG_CRIT("bhi160", "Failed to acquire I2C lock!");
diff --git a/epicardium/modules/pmic.c b/epicardium/modules/pmic.c
index 89365ffbf3fa587f53d00207905eb0942b3eb607..4df12ea91d49aaf666e73e609160a0bd5e3024e4 100644
--- a/epicardium/modules/pmic.c
+++ b/epicardium/modules/pmic.c
@@ -18,6 +18,8 @@
 #include <stdio.h>
 #include <string.h>
 
+#define LOCK_WAIT pdMS_TO_TICKS(1000)
+
 /* Task ID for the pmic handler */
 static TaskHandle_t pmic_task_id = NULL;
 
@@ -51,12 +53,12 @@ int pmic_read_amux(enum pmic_amux_signal sig, float *result)
 		return -EINVAL;
 	}
 
-	int adc_ret = hwlock_acquire(HWLOCK_ADC, pdMS_TO_TICKS(100));
+	int adc_ret = hwlock_acquire(HWLOCK_ADC, LOCK_WAIT);
 	if (adc_ret < 0) {
 		ret = adc_ret;
 		goto done;
 	}
-	i2c_ret = hwlock_acquire(HWLOCK_I2C, pdMS_TO_TICKS(100));
+	i2c_ret = hwlock_acquire(HWLOCK_I2C, LOCK_WAIT);
 	if (i2c_ret < 0) {
 		ret = i2c_ret;
 		goto done;
@@ -71,10 +73,9 @@ int pmic_read_amux(enum pmic_amux_signal sig, float *result)
 	 * release the I2C mutex.
 	 */
 	hwlock_release(HWLOCK_I2C);
-	i2c_ret = 0;
 
 	vTaskDelay(pdMS_TO_TICKS(5));
-	i2c_ret = hwlock_acquire(HWLOCK_I2C, pdMS_TO_TICKS(100));
+	i2c_ret = hwlock_acquire(HWLOCK_I2C, LOCK_WAIT);
 	if (i2c_ret < 0) {
 		ret = i2c_ret;
 		goto done;
@@ -138,7 +139,7 @@ done:
 static void
 pmic_poll_interrupts(TickType_t *button_start_tick, TickType_t duration)
 {
-	while (hwlock_acquire(HWLOCK_I2C, pdMS_TO_TICKS(500)) < 0) {
+	while (hwlock_acquire(HWLOCK_I2C, LOCK_WAIT) < 0) {
 		LOG_WARN("pmic", "Failed to acquire I2C. Retrying ...");
 		xTaskNotify(pmic_task_id, PMIC_NOTIFY_IRQ, eSetBits);
 		return;