SenseMate32 is a compact, standalone ESP32 DIY board that can be used to hosts an internal web UI for real-time presence detection and environmental monitoring. It reads distance/presence data from an LD2420 module and temperature/humidity from an AHT20 sensor, serves a modern dashboard from the board itself (no external server needed), and updates automatically in the browser.
Below I’ll walk through the hardware and software, explain important code parts, show how to use the dashboard, and suggest improvements.
What you need1. SenseMate32 - A custom ESP32 dev board with onboard AHT20 and LD2420 connector.
2. USB Type-C Cable
3. PC/Laptop for programming
Install Required SoftwareInstall Arduino IDE
Download from: https://www.arduino.cc/en/software
Install ESP32 Board Package
In Arduino IDE:
Go to File → Preferences
- Go to File → Preferences
- Add this URL to Additional Boards Manager URLs:
https://espressif.github.io/arduino-esp32/package_esp32_index.json - Go to Tools → Board → Boards Manager
- Search ESP32 → Install esp32 by Espressif Systems
Install Libraries
Go to Sketch → Include Library → Manage Libraries, then install:
- ArduinoJson
- Adafruit AHTX0
- Adafruit Unified Sensor
- WebServer.h (comes with ESP32 core)
- Open the complete code (provided above) in Arduino IDE.
- Select your board:Tools → Board → ESP32 Dev Module
- Select the right COM port:Tools → Port → COMx
- Click Upload.
After upload, open serial monitor at baud 115200, you should see:
SenseMate32 Web Interface
AHT20 found
AP IP Address: 192.168.4.1
SSID: SenseMate32
Web server startedConnect to the SenseMate32 Wi-Fi
After programming:
- On your phone or laptop → open Wi-Fi.
- Find network:SSID:
SenseMate32Password:123456789 - Connect to it. This ESP32 is now acting as a hotspot (SoftAP mode).
Open any browser:
http://192.168.4.1/You will see the SenseMate32 Dashboard with:
- Presence Detection
- Distance
- Temperature
- Humidity
- System Status
- Last Update Time
The UI auto-refreshes every 2 seconds.






Comments