This is a simple project in development to provide a multi temperature sensor IoT device including a Fan Controller, the focus resides in providing a JSON HTTP interface for scrape and configure remotely.
A example schematic can be viewed here
The projects actual state is a working temperature fancontroller including metrics export in prometheus format.
Features:
- Control a fans speed by temp sensor of your choice
- Up to 8 temperature sensors
- Naming sensors
- Configuration is done over http
- Configuration is saved to flash memory and read on start
- Prometheus metrics export endpoint
Requriements:
- A compatible ESP8266 (i am using the ESP-12E variant)
- DS18B20 Temparatur Sensors
- PWM Controlles FAN (4wire)
Create a src/Credentials.h
with your wifi credentials, use src/Credentials.h.tpl
On remote Host:
pio remote agent start
Connect Monitor:
pio remote device monitor -b 115200
Upload Filesystem:
pio remote run -t uploadfs --force-remote
Upload and Flash remote:
pio remote run -t upload --force-remote
Check http files at http
To use the http calls provided by the test/
folder you can use vscode extension REST Client
and this config under .vscode/settings.json
:
{
"rest-client.environmentVariables": {
"$shared": {
"fanControllerHost": "1.2.3.4"
}
}
}