 9cd8acab43
			
		
	
	9cd8acab43
	
	
	
		
			
			* added first version (work in progress) * added some sensors to publish * typo * added dependency * mqtt si7021_* names + don't retain * timer to 60 s * some changes to HA auto discovery * added config entries (no function yet) * renaming * made configs work * added getId() * refactoring + wrong mqtt topics fixed * retain HA auto discovery * do not spam serial console on each sensor update * added readme * add update interval info Co-authored-by: Christian Schwinne <dev.aircoookie@gmail.com>
		
			
				
	
	
		
			69 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Si7021 to MQTT (with Home Assistant Auto Discovery) usermod
 | |
| 
 | |
| This usermod implements support for [Si7021 I²C temperature and humidity sensors](https://www.silabs.com/documents/public/data-sheets/Si7021-A20.pdf).
 | |
| 
 | |
| The sensor data will *not* be shown on the WLED UI (so far) but published via MQTT to WLED's "build in" MQTT device topic. 
 | |
| 
 | |
| ```
 | |
| temperature: $mqttDeviceTopic/si7021_temperature
 | |
| humidity: $mqttDeviceTopic/si7021_humidity
 | |
| ```
 | |
| 
 | |
| Additionally the following sensors can be published:
 | |
| 
 | |
| ```
 | |
| heat_index: $mqttDeviceTopic/si7021_heat_index
 | |
| dew_point: $mqttDeviceTopic/si7021_dew_point
 | |
| absolute_humidity: $mqttDeviceTopic/si7021_absolute_humidity
 | |
| ```
 | |
| 
 | |
| Sensor data will be updated/send every 60 seconds.
 | |
| 
 | |
| This usermod also supports Home Assistant Auto Discovery.
 | |
| 
 | |
| ## Settings via Usermod Setup
 | |
| 
 | |
| - `enabled`: Enables this usermod
 | |
| - `Send Dew Point, Abs. Humidity and Heat Index`: Enables additional sensors
 | |
| - `Home Assistant MQTT Auto-Discovery`: Enables Home Assistant Auto Discovery
 | |
| 
 | |
| # Installation
 | |
| 
 | |
| ## Hardware
 | |
| 
 | |
| Attach the Si7021 sensor to the I²C interface.
 | |
| 
 | |
| Default PINs ESP32:
 | |
| 
 | |
| ```
 | |
| SCL_PIN = 22;
 | |
| SDA_PIN = 21;
 | |
| ```
 | |
| 
 | |
| Default PINs ESP8266:
 | |
| 
 | |
| ```
 | |
| SCL_PIN = 5;
 | |
| SDA_PIN = 4;
 | |
| ```
 | |
| 
 | |
| ## Software
 | |
| 
 | |
| Add to `build_flags` in platformio.ini:
 | |
| 
 | |
| ```
 | |
|    -D USERMOD_SI7021_MQTT_HA
 | |
| ```
 | |
| 
 | |
| Add to `lib_deps` in platformio.ini:
 | |
| 
 | |
| ```
 | |
|    adafruit/Adafruit Si7021 Library @ 1.4.0
 | |
|    BME280@~3.0.0
 | |
| ```
 | |
| 
 | |
| # Credits
 | |
| 
 | |
| - Aircoookie for making WLED
 | |
| - Other usermod creators for example code (`sensors_to_mqtt` and `multi_relay` especially)
 | |
| - You, for reading this |