# ESP8266 reduce power consumption caused by extra ICs/components on board during deep sleep

I need to reduce the power consumed by a circuit based on ESP8266 and extra circuitry (I2C sensors, light resistor based sensor, etc.). By now when I set ESP8266 in deep sleep I still have a relevant power consumption caused by extra components. Not all ICs have a 'deep sleep' mode that can be set to reduce power, so I tried to disconnect VCC line that power all extra components on the breadboard and the current drop enough to allow running the entire circuit by battery.

So my idea is to manage the sensors VCC line with a mosfet driven by the ESP8266, something like:

• on ESP8266 power up (Arduino setup() method), as first thing I switch ON the mosfet to power all sensors
• small pause to allow all ICs to init and stabilize
• perform all operation (read sensor, calculation, etc.)
• turn mosfet OFF
• turn ESP8266 to deepsleep

1. is a feasible way or can led to any kind of issue?
2. if I use an N-channel mosfet the result is a low-side-switch, that leave GND floating. This seems bad to me, correct?
3. if I use a high-side-switch (P-channel mosfet) is a pull-up resistor enough to assure mosfet is full-close when micro going to deep sleep?

The entire circuit VCC is 3.3v

• You will also need to ensure that the peripheral devices have any inputs that are driven by the ESP at low or you will have current draw and possibly electrical overstress. i.e. The ESP will need to have those outputs low prior to powering the peripherals down. – Peter Smith Dec 29 '20 at 13:39