Learn · Build · Explore

Sensor Projects

Learn analog and digital sensing on ESP32 — distance, environmental, and signal processing project guides.

4 ProjectsClear difficulty labelsSensor

What this category covers

Analog, digital, ultrasonic, environmental, and threshold-based sensing projects for ESP32. A practical first build is ESP32 Distance Monitoring System.

Start here: Start with a single sensor reading in Serial Monitor, then add a display or alert once values make sense.

Skills you practice

  • ADC readings
  • voltage-divider awareness
  • digital sensors
  • threshold testing

Useful components

Related categories

Learning progression

  1. Read analog valuesStart with ADC limits, input range, and why raw numbers need context.
  2. Use real sensorsPractice calibration and smoothing before building a finished monitor.
  3. Measure distanceUse HC-SR04-style sensing with echo-voltage caution.
  4. Build environment projectsMove into BME280, DHT22, or other sensors once reading patterns are understood.

Choose the right project

  • Soil sensingChoose this for ADC calibration, wet/dry testing, and threshold behaviour.
  • Distance sensingChoose this for timing-based sensing and echo wiring checks.
  • Gesture inputChoose this for I2C events and controlled sensor placement.
  • Weather sensingChoose this for BME280-style temperature, pressure, humidity, and networking.

Technical reality and troubleshooting

Limits to understand

  • ESP32 sensor work begins with voltage compatibility and pin capability, not code.
  • GPIO34, GPIO35, GPIO36, and GPIO39 are input-only and are useful for readings, not outputs.
  • ADC sensors, I2C sensors, and pulse-timing sensors fail in different ways, so troubleshooting must match the interface.

Common failure checks

  • ADC readings are noisy: check input voltage range, ground, wire length, sampling interval, and whether averaging hides real changes.
  • I2C sensor missing: scan the bus, check SDA/SCL, and verify the module voltage and address.
  • Digital sensor never changes: check pull-up/pull-down behaviour and confirm the pin is configured as input.

Privacy boundary

← Browse all ESP32 projects