Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By eriksl
#88904 Within CMOS chips pull-ups (or pull-downs) are not used, exactly for this reason, it consumes power part of the time. The proper solution would be to use a totempole aka push-pull driver for the signal. Where one transistor (usually FET) is connected to V+, one to GND and the gates are connected with an inverter in between. The outputs (source/drain) would be joined and connected to CE with a resistor, to prevent direct connection of the signal to V+ or GND.

In the datasheet of the IR4426 it's shown very clearly how it works (this MOSFET driver also has a totempole output).
User avatar
By btidey
#88905 On 'wrong' polarity driving rst. If signal is low in passive state then you get extra current drain but the wake up can work when the level becomes active. If signal is high in its passive state then you need a pulse input to rst (like a GPIO16 timed wake up). The external signal may not naturally be like this and can requires extra circuitry.

Totem pole driving either EN or rst is good if there is circuitry already to provide this.

The benefit of using EN is that is high impedance and an active high wake up can be used to interface to items like reed switches or PIRs very simply and with minimal external components.
User avatar
By eriksl
#88908 I'd be very reluctant to use a mechanical switch like a reed relay as an "interrupt" signal. Even though I know a reed relay is supposed to be "bounce free", I would not trust it. I'd add a debouncing circuit + schmitt trigger. They're available ready made in a very cheap IC, recommended!
User avatar
By btidey
#88914 I don't use them as an interrupt but as a means to wake up.

I have built lots of these battery powered devices from raw esp-12f modules and I try to avoid extraneous circuitry so I can build them very small so they are easier to deploy. They have been in continuous operation for years now without issues.