65 lines
2.2 KiB
Markdown
65 lines
2.2 KiB
Markdown
# Prometheus ESP8266 DHT Exporter
|
|
|
|
[![GitHub release](https://img.shields.io/github/v/release/HON95/prometheus-esp8266-dht-exporter?label=Version)](https://github.com/HON95/prometheus-esp8266-dht-exporter/releases)
|
|
|
|
A Prometheus exporter for IoT temperature and humidity measurements, 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".
|
|
- DHT sensor.
|
|
- Tested with a cheap DHT11 eBay and "Wemos DHT Shield".
|
|
- 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
|
|
|
|
- [Arduino IDE](https://www.arduino.cc/en/Main/Software)
|
|
- Download and install.
|
|
- [esp8266 library for Arduino](https://github.com/esp8266/Arduino#installing-with-boards-manager)
|
|
- See the instructions on the page.
|
|
- [DHT sensor library for ESPx](https://github.com/beegee-tokyo/DHTesp)
|
|
- Install using the Arduino library manager.
|
|
- You can also try the Adafruit one, but that one didn't work for me.
|
|
|
|
## Building
|
|
|
|
### Hardware
|
|
|
|
Using the "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).
|
|
|
|
### Software
|
|
|
|
Using the Arduino IDE.
|
|
|
|
1. Copy `config.default.h` to `config.h` and fill inn the details.
|
|
1. Open `src/src.ino` in the Arduino IDE.
|
|
1. 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".
|
|
1. 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).
|