This firmware allows you to use the ESP32 as SMTPv2 server to receive and publish data from digital or analog sensors, as well as from the digital inputs of the controller.
The project uses the library SNMP_Agent
Key features:
- all settings and control of the controller is carried out through the web interface,
- available ports can be configured by the user for available functionality depending on the selected interface,
- I2C support,
- 1 Wire sensors and bus support,
- support of the SNMPv2 protocol,
- web configuration, with digest authentication, no SSL support,
- OTA firmware update,
- static or dynamic IP,
- automatic OID address generation depending on the type of port and sensor.
- three firmware options are presented depending on the periphery:
a) LILYGO®TTGO T-Internet-POE - ESP32 + LAN8720A: - LAN & PoE 802.3at,
- available ports IO2, IO4, IO12, IO16, IO32, IO33, IO34, IO35, IO36, IO39.
b) WT32-ETH01 - ESP32 + LAN8720A: - LAN & PoE,
- available ports IO2, IO4, IO5, IO12, IO14, IO15, IO17, IO32, IO33, IO35, IO36, IO39.
c) ESP32-WROOM: - Wi-Fi,
- available ports IO4, IO12, IO14, IO16, IO18, IO19, IO23, IO25, IO26, IO27, IO32, IO33, IO34, IO35, IO36, IO39,
- IO13 set to factory reset, you need to connect to GND and apply power, then open the circuit.
Supported input functions:
1. digital input, the port status and the number of operations since power-up are monitored, the choice of the edge of the event latching, pressing, releasing, or both at once is supported,
2. digital output (functionality is under development, the purpose for the monitoring device has not yet been determined),
3. sensor DS18B20, connection of one digital sensor, it is possible to set the polling period of the sensor, 10-254 * 0.1 second, taking into account the multiplier (1-25 seconds),
4. sensors DHT11, DHT22, AM2302, AM2303, RHT03, connection of one digital sensor, it is possible to set the sensor polling period, 10-254 * 0.1 second, taking into account the multiplier (1-25 seconds),
5. bus sensors DS18B20 up to 10 pieces on one port. In total, up to 120 sensors can be connected to the controller with a Wi-Fi connection (in firmware without support for LAN connection).
The procedure for scanning connected sensors has been implemented. The address is assigned to the logical number of the sensor on the bus and is stored in the non-volatile memory of the controller.
6. sensors connected to the I2C bus. The following sensors BME280, HTU21D (Si7021) and BH1750 are supported. To connect sensors of this type, two ports are used, depending on the firmware, the port numbers differ, so for LILYGO®TTGO T-Internet-POE it is SDA IO33 and SCL IO32 (P5 and P4), for WT32-ETH01 it is SDA IO33 and SCL IO32 (P8 and P7), for ESP32-WROOM these are SDA IO33 and SCL IO32 (P11 and P10).
7. analog input ADC, displays the actual value from the analog-to-digital converter of the port (where available).
Web http://ip/
Example snmpwalk output OIDs
Template for Zabbix server allows dynamically detect port settings.