ESP32 - Touch Sensor - Relay
This tutorial instructs you how to use ESP32 to control LED based on the state of the touch sensor. In detail:
- If a touch sensor is being touched, ESP32 activates a relay
- If a touch sensor is NOT being touched, ESP32 deactivates a relay
We also have another tutorial: ESP32 - Touch Sensor Toggles Relay, which toggle relay's state between ON and OFF when the touch sensor is touched.
We can extend this tutorial to use the touch sensor to control a led strip, siren, light bulb, or motor... by connnecting them to the relay.
Hardware Used In This Tutorial
Or you can buy the following sensor kit:
1 | × | DIYables Sensor Kit 30 types, 69 units |
Introduction to Relay and Touch Sensor
We have specific tutorials about relay and touch 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
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

- Touch and keep touching the touch sensor several seconds
- See the change of relay's state
Line-by-line Code Explanation
The above ESP32 code contains line-by-line explanation. Please read the comments in the 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.