Skip to content

Latest commit

 

History

History
70 lines (49 loc) · 2.77 KB

README.md

File metadata and controls

70 lines (49 loc) · 2.77 KB

Prometheus ESP8266 DHT Exporter

GitHub release

An IoT Prometheus exporter for measuring temperature and humidity, using an ESP8266 (Arduino-compatible) with a Wi-Fi module and a DHT (temperature + humidity) sensor.

Metrics

Metric Description Unit
iot_info Metadata about the device.
iot_air_humidity_percent Air humidity. %
iot_air_temperature_celsius Air temperature. °C
iot_air_heat_index_celsius Apparent air temperature, based on temperature and humidity. °C

Requirements

Hardware

  • ESP8266-based board (or some other appropriate Arduino-based board).
    • Tested with "Adafruit Feather HUZZAH ESP8266" and "WEMOS D1 Mini".
    • Tested with ESP8266 Mini from Jaycar (XC3802)
  • DHT sensor.
    • Tested with Jaycar DHT11 HAT (XC3856 w/ XC3802, set DHT_PIN to 11)
    • Tested with a cheap DHT11 from eBay and "Wemos DHT Shield" (using pin 2).
    • DHT11 supports a maximum of 1Hz polling while DHT22 supports a maximum of 2Hz polling.
    • Both DHT11 and DHT22 support both 3V and 5V at 2.5mA max current.

Software

Building

Hardware

  • Adafruit Feather HUZZAH ESP8266

    • Wire the DHT sensor power to the 3.3V and any GND on the ESP and wire the data output to e.g. pin 14 (aka D5).
  • Jaycar ESP8266 Mini

    • Set DHT_PIN to 11
    • Set board to LOLIN(WEMOS) D1 R2 & Mini in Tools -> Board.

Software

Using the Arduino IDE.

  1. Copy config.default.h to config.h and fill inn the details.
  2. Open src/src.ino in the Arduino IDE.
  3. Set the correct settings for the board.
    • WEMOS D1 Mini uses board "WeMoS D1 R2 & mini".
    • Adafruit Feather HUZZAH ESP8266 uses "Adafruit Feather HUZZAH ESP8266".
    • Jarcar ESP8266 Mini uses WeMoS D1 R2 & Mini
  4. Build and upload using the Arduino IDE.

Version

See src/version.h.

It's set manually since no build tools (or CI) other than the Arduino IDE is used.

License

GNU General Public License version 3 (GPLv3).