Inspired from a cartoon with a "press it when you miss me button". I created this project to realize it.
The project is built around ESP32-C3 using ESP-IDF framework. By utilizing the deep sleep mode of ESP32-C3 we can achieve very good battery life.
- The first time it boots the devices will generate a QR code on the serial console which can be scan by user to start wifi provisioning process.
- Once the wifi is connected the devices will send a message through webhook.
- A GPIO pin which the physical button is connected will be set as the weakup pin. In my case it is GPIO16.
- The device goes to deep sleep mode.
- Once the button is pressed the device weaks up and execute from step 2.
All components are off-the-shelf and you can change them to fit your needs.
- Push button box
- Momentary Push button Not a Latching push button
- ESP32-C3 devboard
- Any Li-ion battey
- Change the webhook url and your payload(message) in
src/main.c
- Install PlatformIO
- Clone this repo. Add it as a PlatformIO project.
- Connect the board to your computer through a usb cable
- Build, Flash and Monitor using PlatformIO.