No description
Find a file
Moritz Hofmann 2378c44c68 Initial ESP8266 DHT22+DS18B20 MQTT/HA autodiscovery firmware
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-31 13:31:51 +02:00
include Initial ESP8266 DHT22+DS18B20 MQTT/HA autodiscovery firmware 2026-07-31 13:31:51 +02:00
src Initial ESP8266 DHT22+DS18B20 MQTT/HA autodiscovery firmware 2026-07-31 13:31:51 +02:00
.gitignore Initial ESP8266 DHT22+DS18B20 MQTT/HA autodiscovery firmware 2026-07-31 13:31:51 +02:00
platformio.ini Initial ESP8266 DHT22+DS18B20 MQTT/HA autodiscovery firmware 2026-07-31 13:31:51 +02:00
README.md Initial ESP8266 DHT22+DS18B20 MQTT/HA autodiscovery firmware 2026-07-31 13:31:51 +02:00

esp8266-TempAndHumid

PlatformIO project for ESP8266 (Wemos D1 Mini) reading DHT22 (temp/humidity) and DS18B20 (temp), publishing over MQTT with Home Assistant MQTT Discovery.

Wiring

  • DHT22 data → D4 (GPIO2), needs 10k pull-up to 3V3
  • DS18B20 data → D5 (GPIO14), needs 4.7k pull-up to 3V3

Pins configurable in include/config.h.

Setup

  1. cp include/config.h.example include/config.h
  2. Edit include/config.h — WiFi SSID/password, MQTT broker host/port/credentials, device name.
  3. pio run -t upload

Behavior

  • Connects WiFi, connects MQTT with LWT on <device>/status (online/offline).
  • Publishes HA discovery configs to homeassistant/sensor/<device>_<sensor>/config on connect.
  • Publishes sensor state every PUBLISH_INTERVAL_MS (default 30s) to <device>/sensor/<sensor>/state.
  • Sensors auto-appear in Home Assistant under a device named <device> — no manual YAML needed.

Board

Default env d1_mini in platformio.ini. Change board = for other ESP8266 modules (e.g. nodemcuv2, esp01_1m).