ESP32 - Door Sensor Toggle LED
This tutorial instructs you how to use ESP32 to toggle LED each time door is closed.
Hardware Used In This Tutorial
1 | × | ESP-WROOM-32 Dev Module | |
1 | × | Micro USB Cable | |
1 | × | Door Sensor | |
1 | × | LED | |
1 | × | 220 ohm resistor | |
1 | × | Jumper Wires | |
1 | × | (Optional) 5V Power Adapter | |
1 | × | (Optional) DC Power Jack | |
1 | × | (Optional) ESP32 Screw Terminal Adapter |
One of the following breadboard:
1 | × | Full-sized 830-Point Breadboard | |
1 | × | Half-sized 400-point Breadboard | |
1 | × | Mini-sized 170-point Breadboard | |
1 | × | All-sized Breadboard Kit |
Introduction to LED and Door Sensor
We have specific tutorials about LED and door sensor. Each tutorial contains detailed information and step-by-step instructions about hardware pinout, working principle, wiring connection to ESP32, ESP32 code... Learn more about them at the following links:
Wiring Diagram

This image is created using Fritzing. Click to enlarge image
ESP32 Code - Door Sensor Toggles LED
Quick Instructions
- If this is the first time you use ESP32, see how to setup environment for ESP32 on Arduino IDE.
- Do the wiring as above image.
- Connect the ESP32 board to your PC via a micro USB cable
- Open Arduino IDE on your PC.
- Select the right ESP32 board (e.g. ESP32 Dev Module) and COM port.
- Copy the above code and paste it to Arduino IDE.
- Compile and upload code to ESP32 board by clicking Upload button on Arduino IDE
- Move the magnet close to the reed switch and them move it far from the reed switch. Repeat this several times
- See the change of LED's state
Line-by-line Code Explanation
The above ESP32 code contains line-by-line explanation. Please read the comments in the code!
In the code, ledState = !ledState is equivalent to the following code:
Video Tutorial
Making video is a time-consuming work. If the video tutorial is necessary for your learning, please let us know by subscribing to our YouTube channel , If the demand for video is high, we will make the video tutorial.