33  Assignment 3

33.1 Goal

Build an ESP32 clock & weather station that:

  • shows time and temperatures on an OLED
  • measures indoor temperature (SHT31) and outdoor temperature (DS18B20)
  • uploads data to ThingSpeak

33.2 Hardware (minimum)

  • ESP32
  • SHT31 temperature & humidity sensor (indoor)
  • DS18B20 / DS18x20 temperature sensor (outdoor)
  • I2C OLED

33.3 What your project must do

  1. Display on the OLED
    • current time (HH:MM, with seconds optional)
    • indoor temperature (from SHT31)
    • outdoor temperature (from DS18B20)
    • temperature difference (for example: ΔT = Tout − Tin)
  2. Upload to ThingSpeak
    • use your own ThingSpeak channel
    • send at least:
      • field 1: indoor temperature
      • field 2: outdoor temperature
      • field 3: temperature difference
  3. Use real sensor readings
    • no fake / random values
    • both sensors must be wired and working

33.4 Bonus ideas (optional)

  • show a weather forecast (for example, today’s max temperature from an online API)
  • add controls (buttons or web server) to change display mode or update rate
  • add alarms if ΔT is larger than some threshold
  • recommendations - open window or turn on/off AC
  • log extra variables to ThingSpeak (humidity, min/max, etc.)
  • be creative

33.5 What to submit

  • link to your ThingSpeak channel
  • short video showing the project
  • your code (.ino or project folder)
  • schematics in .pdf format