Shutting Down Peripherals To Permit Deep Sleep - Nano 33 BLE Sense Home » Arduino Nano 33 Ble Sleep Mode » Shutting Down Peripherals To Permit Deep Sleep - Nano 33 BLE Sense Maybe your like Arduino Nano 33 Ble Spi Example Arduino Nano 33 Ble Tx Power Arduino Nano 33 Ble Wifi Example Arduino Nano 33 Iot Ble Example Arduino Nano Alimentation Arduino Nano 33 BLE Sense: Shutting down peripherals to permit Deep Sleep Official Hardware Nano Family Nano 33 BLE Sense rwmckellar May 24, 2022, 2:56pm 1 Hi I am new to embedded coding so don't be to surprised if my questions don't make sense to you experienced forum members. I have an Arduino Nano 33 BLE Sense which I would like to put into deep sleep mode, waking periodically to read the IMU acceleration and advertise that over BLE. To start with, though, I'd like to just get the board to deep sleep and wake to toggle an LED. I know that mbed OS will not permit the nRF to enter deep sleep mode if there are any peripheral drivers active which are using high speed clocks (timer, ticker, timeout, SPI, I2C, CAN, PWM, Serial, USB). I managed to write a sketch which puts the board to deep sleep by editing the main.cpp file to comment out the PluggableUSBD().begin(); and _SerialUSB.begin(115200); lines of code. I also had to edit wiring.cpp to comment out timer.start(); from void init(). What I would really like to do, however, is to turn those peripherals off from the Arduino IDE loop() before I call thread_sleep_for(). Can someone explain to me how I turn off peripherals from within the Arduino IDE loop()? My test sketch is as follows: #include <mbed.h> static mbed::LowPowerTicker lpticker; bool canDeepSleep; uint32_t sleep_time_ms = 60000; void blink() { digitalWrite(LED_PWR, !digitalRead(LED_PWR) ); } void setup() { // turn off sensor power supply and I2C pullups enable digitalWrite(PIN_PDM_PWR, LOW); digitalWrite(PIN_ENABLE_SENSORS_3V3, LOW); digitalWrite(PIN_ENABLE_I2C_PULLUP, LOW); // turn on both LED_PWR and LED_BUILTIN for 1 sec digitalWrite(LED_PWR, HIGH); digitalWrite(LED_BUILTIN, HIGH); delay(1000); // turn off LED_BUILTIN if deep sleep is permitted canDeepSleep = sleep_manager_can_deep_sleep(); digitalWrite(LED_BUILTIN, !canDeepSleep); // wake from sleep every 10 sec and toggle LED_PWR state lpticker.attach(&blink, 10.0f); } void loop() { thread_sleep_for(sleep_time_ms); } Thanks in advance Bob system Closed November 20, 2022, 2:57pm 2 This topic was automatically closed 180 days after the last reply. New replies are no longer allowed. Related topics Topic Replies Views Activity Nano 33 BLE low power operation Nano 33 BLE 2 4152 June 23, 2021 BLE Low Power example Nano 33 BLE 2 4446 May 7, 2021 DeepSleep Modus Deutsch 3 494 June 8, 2022 Put Nano 33 BLE into power ON sleep mode Nano 33 BLE 5 2529 March 27, 2024 Nano 33 BLE - low power and wake up on interrupt Nano 33 BLE 2 2197 December 19, 2022 Tag » Arduino Nano 33 Ble Sleep Mode Nano33 Ble - How Should I Go About Reducing Current Draw Nano 33 BLE Low Power Operation - Arduino Forum How To Reduce Power Consumption On The Nano 33 BLE Nano 33 BLE Sense System ON/OFF Minimum Power Consumption Arduino Nano BLE 33 How To Set NANO 33 BLE (Sense) To Standby Mode? - Arduino Forum Arduino-Nano-33-IoT-Ultimate-Guide/ No Low Power Mode Possible · Issue #22 - GitHub Arduino Nano 33 BLE Sense Overview Waking The NRF52840 From SYSTEMOFF - Arduino Nano 33 Board Sleeping At 0.3mA Perfect For Batteries (Arduino Nano Deep Sleep) [PDF] Power Consumption Optimization And Measurement - Theseus Analyze Power Consumption In Embedded ML Solutions