Due to high demand, expect some shipping delays at this time - orders may not ship for up to 2-3 business days.
0

POWER_SWITCH pin HIGH during deep sleep in circuitpython CPB
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

POWER_SWITCH pin HIGH during deep sleep in circuitpython CPB

by gus7av on Tue Jan 18, 2022 4:19 pm

Hi All

Is it possible to turn of the power to the sensors during deep sleep by keeping the POWER_SWITCH pin HIGH?
It's seems like the board is using less power while running normally with no power to the sensors, than during deep sleep, which makes deep sleep a bit useless on the CPB. I would be amazing to get the deep sleep current even lower!

Gustav

gus7av
 
Posts: 5
Joined: Sat Oct 24, 2020 2:37 am

Re: POWER_SWITCH pin HIGH during deep sleep in circuitpython

by mikeysklar on Thu Jan 20, 2022 6:16 pm

Gustav,

Pin D35 is the control pin to turn off most of the sensors and LEDs. I believe just the accelerometer will still be active.

D35 - Sensor + NeoPixel power pin, default is pulled LOW (to enable power to sensors and NeoPixel). Set to output and HIGH to turn off power to NeoPixels and light/thermistor/microphone. Accelerometer does not get turned off (so you can do shake-to-wake). Speaker shutdown pin is different as well


https://learn.adafruit.com/adafruit-cir ... -3039295-9

The deep sleep on the nRF52 CPX Bluefruit offers a limited power savings on it’s own, but you can try our suggested code for spacing out the advertisements which reduces BLE power consumption. That is about it in terms of power savings options.

https://learn.adafruit.com/deep-sleep-w ... 3097743-16

mikeysklar
 
Posts: 7492
Joined: Mon Aug 01, 2016 8:10 pm

Re: POWER_SWITCH pin HIGH during deep sleep in circuitpython

by adafruit2 on Fri Jan 28, 2022 5:01 pm

we got pretty low power with code something like this

Code: Select all | TOGGLE FULL SIZE
#include <Adafruit_SleepyDog.h>
#include <Adafruit_LIS3DH.h>

Adafruit_LIS3DH lis = Adafruit_LIS3DH(&Wire);
#define PWR_PIN 35
#define SPK_EN  11

// the setup function runs once when you press reset or power the board
void setup() {
  Serial.begin(115200);
  //while (!Serial);

  // turn off neopixels and sensors
  pinMode(PWR_PIN, OUTPUT);
  digitalWrite(PWR_PIN, HIGH);

  // turn off speaker amp
  pinMode(SPK_EN, OUTPUT);
  digitalWrite(SPK_EN, LOW);
}

void loop() {
  //return;
  Watchdog.sleep(100);
  delay(100);
  digitalWrite(PWR_PIN, LOW);
  delay(10);
  digitalWrite(PWR_PIN, HIGH);
}

adafruit2
Site Admin
 
Posts: 20847
Joined: Fri Mar 11, 2005 7:36 pm

Please be positive and constructive with your questions and comments.