I have an RFID reader that sends a high 5V logic level when it is triggered (RFID tag is seen by the antenna).

I want to then use this 5V output to trigger an ESP32 to turn on an LED and also send an SMS. I know the ESP32 is only 3.3V so sending a 5V signal will damage the GPIO pins. Hence since this 5V signal from the reader is not a periodic signal, at most the reader will be triggered 5 times per day. is it then okay to just use a voltage divider instead of a more complicated MOSFET level shifter?

enter image description here

  • 1
    \$\begingroup\$ Yes, that'll be fine. \$\endgroup\$
    – Andy aka
    Oct 2, 2021 at 12:20
  • \$\begingroup\$ Only good if you can guarantee that the 5V and 3.3V are generated from the same DC source. If not then you should use a FET or transistor to level shift the signal. \$\endgroup\$ Oct 2, 2021 at 17:16

1 Answer 1


The resistor divider will work fine. You can use higher value resistors, since the input impedance of ESP32 is quite high.

The pin labeled "3.3V" on the ESP should be a GPIO used as input (don't try that trick to switch the power supply of ESP32, it won't work). Also you can use Pin Change Interrupts (aka GPIO interrupts) to put the micro to sleep and only wake it up when the pin changes level.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.