Supported features:
- ESP8266 or ESP32 based with an ATH20 I2C sensor
- Built-in web server with UI for sensor reading and configuration
- WiFi with both self-hosted or joining existing access points
- MQTT support for transmitting data
- OTA firmware update using ElegantOTA at
/update
- 3D printed case for clean and seamless mounting
On first boot the device creates a self-hosted WiFi access point (AP) with SSID starting with ESP8266CLSEN
or ESP32CLSEN
and WPA2 password password123
In self-hosted AP mode, the device gives itself 192.168.4.1
IP address.
The device can be connected to an existing AP using the /wifi
option
The device will reset itself to default configuration and self-hosted AP if unable to complete its boot sequence within 2 seconds (smooth boot) 3 times in a row. This can be forced by power-cycling the device several times. Powered up durations should be about 1 second (less than 2 second, but enough for the CPU to start).
Compile and upload the project using USB. After the resistors are removed (see below), future updates will have to be made using OTA.
Access to OTA is at /update
path at the device's IP. See Initial boot below on how to connect to the self-hosted AP.
Schematic and PCB available online
STL files:
Example configuration for exposing a local network device via Apache proxy. Strong advise to use SSL/HTTPS and appropriate authentication and authorization controls to reduce risk of bad actors.
<Location /ac>
AuthType Basic
Authname "Password Required"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
</Location>
ProxyPass /ac/roomname http://192.168.x.y disablereuse=On
ProxyPassReverse /ac/roomname http://192.168.x.y