WIP
This commit is contained in:
5
.gitmodules
vendored
5
.gitmodules
vendored
@ -21,4 +21,7 @@
|
||||
url = https://github.com/aZholtikov/zh_vector
|
||||
[submodule "components/zh_bh1750"]
|
||||
path = components/zh_bh1750
|
||||
url = https://github.com/aZholtikov/zh_bh1750
|
||||
url = https://github.com/aZholtikov/zh_bh1750
|
||||
[submodule "components/zh_aht"]
|
||||
path = components/zh_aht
|
||||
url = https://github.com/aZholtikov/zh_aht
|
11
README.md
11
README.md
@ -10,11 +10,12 @@ ESP-NOW based sensor for ESP32 ESP-IDF and ESP8266 RTOS SDK.
|
||||
## Features
|
||||
|
||||
1. Supported 1-wire sensors:
|
||||
1. DS18B20
|
||||
2. DHT11/DHT22/AM2302/AM2320
|
||||
1. [DS18B20](https://github.com/aZholtikov/zh_ds18b20)
|
||||
2. [DHT11/DHT22/AM2302/AM2320](https://github.com/aZholtikov/zh_dht)
|
||||
2. Supported I2C sensors:
|
||||
1. AM2320
|
||||
2. BH1750
|
||||
1. [AM2320](https://github.com/aZholtikov/zh_dht)
|
||||
2. [BH1750](https://github.com/aZholtikov/zh_bh1750)
|
||||
3. [AHT20/AHT21](https://github.com/aZholtikov/zh_aht)
|
||||
3. Optional support sensor power management (for 1-wire sensors only).
|
||||
4. Automatically adds sensor configuration to Home Assistan via MQTT discovery as a sensor.
|
||||
5. Update firmware from HTTPS server via ESP-NOW.
|
||||
@ -33,7 +34,7 @@ ESP-NOW based sensor for ESP32 ESP-IDF and ESP8266 RTOS SDK.
|
||||
|
||||
MQTT configuration message should filled according to the template "X1,X2,X3,X4,X5,X6". Where:
|
||||
|
||||
1. X1 - Sensor type. 1 for DS18B20, 8 for DHT, 9 for BH1750.
|
||||
1. X1 - Sensor type. 1 for DS18B20, 2 for AHT, 8 for DHT, 9 for BH1750.
|
||||
2. X2 - Sensor GPIO number 1 (main pin for 1-wire sensors, SDA pin for I2C sensors). 0 - 48 (according to the module used), 255 if not used.
|
||||
3. X3 - Sensor GPIO number 2 (SCL pin for I2C sensors). 0 - 48 (according to the module used), 255 if not used.
|
||||
4. X4 - Power GPIO number (if using sensor power control). 0 - 48 (according to the module used), 255 if not used.
|
||||
|
1
components/zh_aht
Submodule
1
components/zh_aht
Submodule
Submodule components/zh_aht added at 735dda94d3
@ -30,19 +30,21 @@ menu "ZH ESP-NOW Sensor Configuration"
|
||||
bool "DS18B20"
|
||||
config SENSOR_TYPE_DHT
|
||||
bool "DHT"
|
||||
config SENSOR_TYPE_AHT
|
||||
bool "AHT"
|
||||
config SENSOR_TYPE_BH1750
|
||||
bool "BH1750"
|
||||
endchoice
|
||||
|
||||
choice CONNECTION_TYPE
|
||||
depends on SENSOR_TYPE_DS18B20 || SENSOR_TYPE_DHT || SENSOR_TYPE_BH1750
|
||||
depends on SENSOR_TYPE_DS18B20 || SENSOR_TYPE_DHT || SENSOR_TYPE_BH1750 || SENSOR_TYPE_AHT
|
||||
prompt "Connection type"
|
||||
default CONNECTION_TYPE_ONEWIRE
|
||||
config CONNECTION_TYPE_ONEWIRE
|
||||
depends on SENSOR_TYPE_DS18B20 || SENSOR_TYPE_DHT
|
||||
bool "ONE WIRE"
|
||||
config CONNECTION_TYPE_I2C
|
||||
depends on SENSOR_TYPE_DHT || SENSOR_TYPE_BH1750
|
||||
depends on SENSOR_TYPE_DHT || SENSOR_TYPE_BH1750 || SENSOR_TYPE_AHT
|
||||
bool "I2C"
|
||||
endchoice
|
||||
|
||||
@ -63,7 +65,7 @@ menu "ZH ESP-NOW Sensor Configuration"
|
||||
Sensor GPIO (SCL pin for I2C sensors).
|
||||
|
||||
config MEASUREMENT_FREQUENCY
|
||||
depends on SENSOR_TYPE_DS18B20 || SENSOR_TYPE_DHT || SENSOR_TYPE_BH1750
|
||||
depends on CONNECTION_TYPE_ONEWIRE || CONNECTION_TYPE_I2C
|
||||
int "Measurement frequency"
|
||||
range 1 65536
|
||||
default 300
|
||||
|
@ -76,6 +76,8 @@ void zh_load_config(sensor_config_t *sensor_config)
|
||||
sensor_config->hardware_config.sensor_type = HAST_DS18B20;
|
||||
#elif CONFIG_SENSOR_TYPE_DHT
|
||||
sensor_config->hardware_config.sensor_type = HAST_DHT;
|
||||
#elif CONFIG_SENSOR_TYPE_AHT
|
||||
sensor_config->hardware_config.sensor_type = HAST_AHT;
|
||||
#elif CONFIG_SENSOR_TYPE_BH1750
|
||||
sensor_config->hardware_config.sensor_type = HAST_BH1750;
|
||||
#else
|
||||
@ -254,7 +256,17 @@ void zh_sensor_init(sensor_config_t *sensor_config)
|
||||
break;
|
||||
case HAST_BME680: // For future development.
|
||||
break;
|
||||
case HAST_AHT: // For future development.
|
||||
case HAST_AHT:;
|
||||
zh_aht_init_config_t aht_init_config = ZH_AHT_INIT_CONFIG_DEFAULT();
|
||||
#ifdef CONFIG_IDF_TARGET_ESP8266
|
||||
aht_init_config.i2c_port = I2C_PORT;
|
||||
#else
|
||||
aht_init_config.i2c_handle = sensor_config->i2c_bus_handle;
|
||||
#endif
|
||||
if (zh_aht_init(&aht_init_config) != ESP_OK)
|
||||
{
|
||||
goto ZH_SENSOR_ERROR;
|
||||
}
|
||||
break;
|
||||
case HAST_SHT: // For future development.
|
||||
break;
|
||||
@ -371,7 +383,7 @@ uint8_t zh_send_sensor_config_message(const sensor_config_t *sensor_config)
|
||||
++messages_quantity;
|
||||
break;
|
||||
case HAST_DHT:
|
||||
case HAST_AHT: // For future development.
|
||||
case HAST_AHT:
|
||||
case HAST_SHT: // For future development.
|
||||
case HAST_HTU21D: // For future development.
|
||||
case HAST_HDC1080: // For future development.
|
||||
@ -470,7 +482,14 @@ void zh_send_sensor_status_message_task(void *pvParameter)
|
||||
break;
|
||||
case HAST_BME680: // For future development.
|
||||
break;
|
||||
case HAST_AHT: // For future development.
|
||||
case HAST_AHT:
|
||||
err = zh_aht_read(&humidity, &temperature);
|
||||
if (err == ESP_OK)
|
||||
{
|
||||
data.payload_data.status_message.sensor_status_message.humidity = humidity;
|
||||
data.payload_data.status_message.sensor_status_message.temperature = temperature;
|
||||
data.payload_data.status_message.sensor_status_message.voltage = 3.3; // For future development.
|
||||
}
|
||||
break;
|
||||
case HAST_SHT: // For future development.
|
||||
break;
|
||||
|
@ -12,6 +12,7 @@
|
||||
#include "zh_ds18b20.h"
|
||||
#include "zh_dht.h"
|
||||
#include "zh_bh1750.h"
|
||||
#include "zh_aht.h"
|
||||
#include "zh_config.h"
|
||||
|
||||
#ifdef CONFIG_NETWORK_TYPE_DIRECT
|
||||
|
Reference in New Issue
Block a user