Environment Monitor
Personal Project — Summer 2026
A self-contained Arduino environment monitor that continuously reads temperature and humidity from a DHT11 sensor every two minutes, displays live readings on a 1602 LCD, and stores a rolling 255-sample buffer in EEPROM for offline data retrieval over serial.
The device supports three temperature units (°C, °F, K) and two humidity modes (relative humidity and dew point via the Magnus formula), toggled with a hardware button. A second button forces an immediate sensor read. A photoresistor (LDR) on an analog pin provides ambient light readings on a secondary display page. EEPROM persistence preserves the buffer index and user-selected unit preferences across power cycles. The full rolling buffer can be dumped over serial on command for analysis.
Highlights
- Continuous DHT11 sensing (temp & humidity) every 2 minutes, displayed on 1602 LCD
- Three temperature units (°C, °F, K) and dew point calculation (Magnus formula)
- 255-sample rolling EEPROM buffer with serial dump command for offline retrieval
- Ambient light sensing via photoresistor with live raw and percentage display
- Two-button interface: force-refresh and unit/page cycling with long-press detection
- Unit preferences and buffer index persist across power cycles via EEPROM