0
\$\begingroup\$

I have designed a custom PCB for one of my side projects. PN532 is interfaced with ESP32 over i2c. Goal is to have the system consume current in uAmps range when in deep sleep. I put ESP32 in deep sleep and before doing that, I cut off power to PN532 using NPN transistor. All is working well on a breadboard setup with breakout boards. In deep sleep, current drops to 32uA for the complete system.

But on my custom PCB, current only drops to 4mA in deep sleep. I have put the PCB under thermal camera and PN532 is the only part showing heat signature. I then proceeded to verify that there is no power applied to PN532. So, I am struggling to find why is it pulling 4mA?

I had two theories:

1- The i2c lines between PN532 and ESP32 are probably active for deep sleep mode meaning some part within PN532 is being powered from these lines. But I have checked the lines for voltage and both drop to around 0 in deep sleep.

2- The thermal pin 41 of PN532 is probably not properly grounded (PCB assembly error). I have no way to verify this since thermal pin is the pad below the IC. But could this be the reason for 4mA consumption even when no power is applied?

I am attaching screenshot from the schematic diagram:

enter image description here

\$\endgroup\$
11
  • \$\begingroup\$ You might check your 2222A if you are driving it with an ESP32 output during deep sleep. If the base-emitter has any voltage, there will be some current . Even in deep sleep, pull-up resistors (if used) will still be active. \$\endgroup\$ Commented Jun 22, 2023 at 19:53
  • \$\begingroup\$ I2C requires pull ups on both SDA and SCL, where are those? \$\endgroup\$
    – jcaron
    Commented Jun 22, 2023 at 21:15
  • \$\begingroup\$ @jcaron I am not using pull-up resistors on i2c lines. can it cause a problem like I mentioned? Pulling 4mA when there is no power applied to the IC? \$\endgroup\$
    – Hamza
    Commented Jun 23, 2023 at 8:22
  • \$\begingroup\$ @johnBirckhead Emitter of 2222A is pulled down (modified the PCB after assembly by adding pull down resistor). Base of 222A is driven by ESP32 and is pulled low before ESP32 enters deep sleep. So there is no voltage across base-emitter. There are no pull-up resistors either. \$\endgroup\$
    – Hamza
    Commented Jun 23, 2023 at 8:24
  • \$\begingroup\$ @Hamza there are necessarily pull-ups somewhere on the two I2C lines, otherwise it just can't work. If you didn't add any yourself, there must be a pair either in the ESP32 (which are configurable) or in the PN532, or both. In the ESP32 IIRC you can decide which pull-ups are kept active during deep sleep or not (depends on the pins). Don't know about the PN532. From what I gather on your diagram, the ESP32 and the PN532 are on separate boards, right? Did you check that the power draw is indeed on the PN532 board, or is it for the whole setup? \$\endgroup\$
    – jcaron
    Commented Jun 23, 2023 at 10:56

0

Browse other questions tagged or ask your own question.