[Media] I made a desk pet using esp32 + rust

178 points stfuandkissmyturtle 7 comments
[Media] I made a desk pet using esp32 + rust

Features

  • Environment Tracking: Monitors humidity and temperature via DHT sensor.
  • Light Sensing: Uses an LDR to determine if the cat should be awake or asleep.
  • Interactive Touch: Touch the sensor to interact with the cat (makes it purr).
  • Work Timer: Long-press the touch sensor to toggle a work timer mode.
  • Persistent Stats: Uses NVS to remember interaction counts and settings even after a reboot.

This project is built using the standard library (std). It relies on the esp-idf-svc and esp-idf-hal crates to wrap the ESP-IDF C SDK. Most of the logic happens in a main loop that polls sensors and updates a internal state machine that drives the OLED display and buzzer.