Skip to content

Commit 09f690a

Browse files
authored
Nano33BLE r2: fix for bmi150 power line (#821)
This allows to set the 3v3 vddio/vdd pin for bmi150 in order to correctly power the bmi avoiding voltage drop in the begin()
1 parent 600a830 commit 09f690a

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

variants/ARDUINO_NANO33BLE/variant.cpp

+10
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,18 @@ void initVariant() {
156156
pinMode(PIN_ENABLE_I2C_PULLUP, OUTPUT);
157157

158158
digitalWrite(PIN_ENABLE_SENSORS_3V3, HIGH);
159+
delay(10);
159160
digitalWrite(PIN_ENABLE_I2C_PULLUP, HIGH);
160161

162+
// Set high drive pin to properly power the bmi150
163+
nrf_gpio_cfg(
164+
digitalPinToPinName(PIN_ENABLE_SENSORS_3V3),
165+
NRF_GPIO_PIN_DIR_OUTPUT,
166+
NRF_GPIO_PIN_INPUT_DISCONNECT,
167+
NRF_GPIO_PIN_NOPULL,
168+
NRF_GPIO_PIN_H0H1,
169+
NRF_GPIO_PIN_NOSENSE);
170+
161171
// Disable UARTE0 which is initially enabled by the bootloader
162172
nrf_uarte_task_trigger(NRF_UARTE0, NRF_UARTE_TASK_STOPRX);
163173
while (!nrf_uarte_event_check(NRF_UARTE0, NRF_UARTE_EVENT_RXTO)) ;

0 commit comments

Comments
 (0)