mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-26 22:22:16 +03:00
full size test
This commit is contained in:
@@ -98,3 +98,7 @@ int udp_period;
|
||||
|
||||
// i2c
|
||||
String i2c_list;
|
||||
|
||||
extern OneWire *oneWire;
|
||||
extern DallasTemperature sensors;
|
||||
|
||||
|
||||
328
src/Sensors.cpp
328
src/Sensors.cpp
@@ -1,45 +1,66 @@
|
||||
#include "Global.h"
|
||||
|
||||
void sensors_init() {
|
||||
String perception(byte value);
|
||||
void bmp280T_reading();
|
||||
String get_comfort_status(ComfortState cf);
|
||||
|
||||
void sensors_init()
|
||||
{
|
||||
ts.add(
|
||||
SENSORS, 1000, [&](void*) {
|
||||
SENSORS, 1000, [&](void *) {
|
||||
static int counter;
|
||||
counter++;
|
||||
|
||||
#ifdef level_enable
|
||||
if (sensors_reading_map[0] == 1) level_reading();
|
||||
if (sensors_reading_map[0] == 1)
|
||||
level_reading();
|
||||
#endif
|
||||
|
||||
if (counter > 10) {
|
||||
if (counter > 10)
|
||||
{
|
||||
counter = 0;
|
||||
|
||||
#ifdef analog_enable
|
||||
if (sensors_reading_map[1] == 1) analog_reading1();
|
||||
if (sensors_reading_map[2] == 1) analog_reading2();
|
||||
if (sensors_reading_map[1] == 1)
|
||||
analog_reading1();
|
||||
if (sensors_reading_map[2] == 1)
|
||||
analog_reading2();
|
||||
#endif
|
||||
|
||||
#ifdef dallas_enable
|
||||
if (sensors_reading_map[3] == 1) dallas_reading();
|
||||
if (sensors_reading_map[3] == 1)
|
||||
dallas_reading();
|
||||
#endif
|
||||
|
||||
#ifdef dht_enable
|
||||
if (sensors_reading_map[4] == 1) dhtT_reading();
|
||||
if (sensors_reading_map[5] == 1) dhtH_reading();
|
||||
if (sensors_reading_map[6] == 1) dhtP_reading();
|
||||
if (sensors_reading_map[7] == 1) dhtC_reading();
|
||||
if (sensors_reading_map[8] == 1) dhtD_reading();
|
||||
if (sensors_reading_map[4] == 1)
|
||||
dhtT_reading();
|
||||
if (sensors_reading_map[5] == 1)
|
||||
dhtH_reading();
|
||||
if (sensors_reading_map[6] == 1)
|
||||
dhtP_reading();
|
||||
if (sensors_reading_map[7] == 1)
|
||||
dhtC_reading();
|
||||
if (sensors_reading_map[8] == 1)
|
||||
dhtD_reading();
|
||||
#endif
|
||||
|
||||
#ifdef bmp_enable
|
||||
if (sensors_reading_map[9] == 1) bmp280T_rading();
|
||||
if (sensors_reading_map[10] == 1) bmp280P_reading();
|
||||
if (sensors_reading_map[9] == 1)
|
||||
bmp280T_reading();
|
||||
if (sensors_reading_map[10] == 1)
|
||||
bmp280P_reading();
|
||||
#endif
|
||||
|
||||
#ifdef bme_enable
|
||||
if (sensors_reading_map[11] == 1) bme280T_reading();
|
||||
if (sensors_reading_map[12] == 1) bme280P_reading();
|
||||
if (sensors_reading_map[13] == 1) bme280H_reading();
|
||||
if (sensors_reading_map[14] == 1) bme280A_reading();
|
||||
if (sensors_reading_map[11] == 1)
|
||||
bme280T_reading();
|
||||
if (sensors_reading_map[12] == 1)
|
||||
bme280P_reading();
|
||||
if (sensors_reading_map[13] == 1)
|
||||
bme280H_reading();
|
||||
if (sensors_reading_map[14] == 1)
|
||||
bme280A_reading();
|
||||
#endif
|
||||
}
|
||||
},
|
||||
@@ -50,7 +71,8 @@ void sensors_init() {
|
||||
//=========================================Модуль измерения уровня в баке==================================================================
|
||||
#ifdef level_enable
|
||||
//level L 14 12 Вода#в#баке,#% Датчики fill-gauge 125 20 1
|
||||
void level() {
|
||||
void level()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String trig = sCmd.next();
|
||||
String echo = sCmd.next();
|
||||
@@ -71,7 +93,8 @@ void level() {
|
||||
sensors_reading_map[0] = 1;
|
||||
}
|
||||
|
||||
void level_reading() {
|
||||
void level_reading()
|
||||
{
|
||||
long duration_;
|
||||
int distance_cm;
|
||||
int level;
|
||||
@@ -83,11 +106,12 @@ void level_reading() {
|
||||
digitalWrite(trig, HIGH);
|
||||
delayMicroseconds(10);
|
||||
digitalWrite(trig, LOW);
|
||||
duration_ = pulseIn(echo, HIGH, 30000); // 3000 µs = 50cm // 30000 µs = 5 m
|
||||
duration_ = pulseIn(echo, HIGH, 30000); // 3000 µs = 50cm // 30000 µs = 5 m
|
||||
distance_cm = duration_ / 29 / 2;
|
||||
distance_cm = medianFilter.filtered(distance_cm); //отсечение промахов медианным фильтром
|
||||
distance_cm = medianFilter.filtered(distance_cm); //отсечение промахов медианным фильтром
|
||||
counter++;
|
||||
if (counter > tank_level_times_to_send) {
|
||||
if (counter > tank_level_times_to_send)
|
||||
{
|
||||
counter = 0;
|
||||
level = map(distance_cm,
|
||||
jsonReadInt(optionJson, "e_lev"),
|
||||
@@ -103,7 +127,8 @@ void level_reading() {
|
||||
//=========================================Модуль аналогового сенсора======================================================================
|
||||
#ifdef analog_enable
|
||||
//analog adc 0 Аналоговый#вход,#% Датчики any-data 1 1023 1 100 1
|
||||
void analog() {
|
||||
void analog()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String pin = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -121,15 +146,18 @@ void analog() {
|
||||
jsonWriteStr(optionJson, value_name + "_st_out", analog_start_out);
|
||||
jsonWriteStr(optionJson, value_name + "_end_out", analog_end_out);
|
||||
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
||||
if (enter_to_analog_counter == 1) {
|
||||
if (enter_to_analog_counter == 1)
|
||||
{
|
||||
sensors_reading_map[1] = 1;
|
||||
}
|
||||
if (enter_to_analog_counter == 2) {
|
||||
if (enter_to_analog_counter == 2)
|
||||
{
|
||||
sensors_reading_map[2] = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void analog_reading1() {
|
||||
void analog_reading1()
|
||||
{
|
||||
String value_name = selectFromMarkerToMarker(analog_value_names_list, ",", 0);
|
||||
#ifdef ESP32
|
||||
int analog_in = analogRead(34);
|
||||
@@ -148,7 +176,8 @@ void analog_reading1() {
|
||||
Serial.println("[i] sensor '" + value_name + "' data: " + String(analog));
|
||||
}
|
||||
|
||||
void analog_reading2() {
|
||||
void analog_reading2()
|
||||
{
|
||||
String value_name = selectFromMarkerToMarker(analog_value_names_list, ",", 1);
|
||||
#ifdef ESP32
|
||||
int analog_in = analogRead(35);
|
||||
@@ -170,7 +199,8 @@ void analog_reading2() {
|
||||
//=========================================================================================================================================
|
||||
//=========================================Модуль температурного сенсора ds18b20===========================================================
|
||||
#ifdef dallas_enable
|
||||
void dallas() {
|
||||
void dallas()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String pin = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
@@ -186,7 +216,8 @@ void dallas() {
|
||||
sensors_reading_map[3] = 1;
|
||||
}
|
||||
|
||||
void dallas_reading() {
|
||||
void dallas_reading()
|
||||
{
|
||||
float temp = 0;
|
||||
sensors.requestTemperatures();
|
||||
temp = sensors.getTempCByIndex(0);
|
||||
@@ -200,7 +231,8 @@ void dallas_reading() {
|
||||
//=========================================Модуль сенсоров DHT=============================================================================
|
||||
#ifdef dht_enable
|
||||
//dhtT t 2 dht11 Температура#DHT,#t°C Датчики any-data 1
|
||||
void dhtT() {
|
||||
void dhtT()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String pin = sCmd.next();
|
||||
String sensor_type = sCmd.next();
|
||||
@@ -209,26 +241,33 @@ void dhtT() {
|
||||
String type = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
dhtT_value_name = value_name;
|
||||
if (sensor_type == "dht11") {
|
||||
if (sensor_type == "dht11")
|
||||
{
|
||||
dht.setup(pin.toInt(), DHTesp::DHT11);
|
||||
}
|
||||
if (sensor_type == "dht22") {
|
||||
if (sensor_type == "dht22")
|
||||
{
|
||||
dht.setup(pin.toInt(), DHTesp::DHT22);
|
||||
}
|
||||
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
||||
sensors_reading_map[4] = 1;
|
||||
}
|
||||
|
||||
void dhtT_reading() {
|
||||
void dhtT_reading()
|
||||
{
|
||||
float value = 0;
|
||||
static int counter;
|
||||
if (dht.getStatus() != 0 && counter < 5) {
|
||||
if (dht.getStatus() != 0 && counter < 5)
|
||||
{
|
||||
sendSTATUS(dhtT_value_name, String(dht.getStatusString()));
|
||||
counter++;
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
counter = 0;
|
||||
value = dht.getTemperature();
|
||||
if (String(value) != "nan") {
|
||||
if (String(value) != "nan")
|
||||
{
|
||||
eventGen(dhtT_value_name, "");
|
||||
jsonWriteStr(configJson, dhtT_value_name, String(value));
|
||||
sendSTATUS(dhtT_value_name, String(value));
|
||||
@@ -238,7 +277,8 @@ void dhtT_reading() {
|
||||
}
|
||||
|
||||
//dhtH h 2 dht11 Влажность#DHT,#t°C Датчики any-data 1
|
||||
void dhtH() {
|
||||
void dhtH()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String pin = sCmd.next();
|
||||
String sensor_type = sCmd.next();
|
||||
@@ -247,26 +287,33 @@ void dhtH() {
|
||||
String type = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
dhtH_value_name = value_name;
|
||||
if (sensor_type == "dht11") {
|
||||
if (sensor_type == "dht11")
|
||||
{
|
||||
dht.setup(pin.toInt(), DHTesp::DHT11);
|
||||
}
|
||||
if (sensor_type == "dht22") {
|
||||
if (sensor_type == "dht22")
|
||||
{
|
||||
dht.setup(pin.toInt(), DHTesp::DHT22);
|
||||
}
|
||||
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
|
||||
sensors_reading_map[5] = 1;
|
||||
}
|
||||
|
||||
void dhtH_reading() {
|
||||
void dhtH_reading()
|
||||
{
|
||||
float value = 0;
|
||||
static int counter;
|
||||
if (dht.getStatus() != 0 && counter < 5) {
|
||||
if (dht.getStatus() != 0 && counter < 5)
|
||||
{
|
||||
sendSTATUS(dhtH_value_name, String(dht.getStatusString()));
|
||||
counter++;
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
counter = 0;
|
||||
value = dht.getHumidity();
|
||||
if (String(value) != "nan") {
|
||||
if (String(value) != "nan")
|
||||
{
|
||||
eventGen(dhtH_value_name, "");
|
||||
jsonWriteStr(configJson, dhtH_value_name, String(value));
|
||||
sendSTATUS(dhtH_value_name, String(value));
|
||||
@@ -276,7 +323,8 @@ void dhtH_reading() {
|
||||
}
|
||||
|
||||
//dhtPerception Восприятие: Датчики 4
|
||||
void dhtP() {
|
||||
void dhtP()
|
||||
{
|
||||
String widget_name = sCmd.next();
|
||||
String page_name = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
@@ -284,35 +332,65 @@ void dhtP() {
|
||||
sensors_reading_map[6] = 1;
|
||||
}
|
||||
|
||||
void dhtP_reading() {
|
||||
void dhtP_reading()
|
||||
{
|
||||
byte value;
|
||||
if (dht.getStatus() != 0) {
|
||||
if (dht.getStatus() != 0)
|
||||
{
|
||||
sendSTATUS("dhtPerception", String(dht.getStatusString()));
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
value = dht.computePerception(jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
||||
String final_line = perception(value);
|
||||
jsonWriteStr(configJson, "dhtPerception", final_line);
|
||||
eventGen("dhtPerception", "");
|
||||
sendSTATUS("dhtPerception", final_line);
|
||||
if (client_mqtt.connected()) {
|
||||
if (client_mqtt.connected())
|
||||
{
|
||||
Serial.println("[i] sensor 'dhtPerception' data: " + final_line);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
String perception(byte value) {
|
||||
if (value == 0) return "Сухой воздух";
|
||||
if (value == 1) return "Комфортно";
|
||||
if (value == 2) return "Уютно";
|
||||
if (value == 3) return "Хорошо";
|
||||
if (value == 4) return "Неудобно";
|
||||
if (value == 5) return "Довольно неудобно";
|
||||
if (value == 6) return "Очень неудобно";
|
||||
if (value == 7) return "Сильно неудобно, полный звиздец";
|
||||
String perception(byte value)
|
||||
{
|
||||
String res;
|
||||
switch (value)
|
||||
{
|
||||
case 0:
|
||||
res = F("Сухой воздух");
|
||||
break;
|
||||
case 1:
|
||||
res = F("Комфортно");
|
||||
break;
|
||||
case 2:
|
||||
res = F("Уютно");
|
||||
break;
|
||||
case 3:
|
||||
res = F("Хорошо");
|
||||
break;
|
||||
case 4:
|
||||
res = F("Неудобно");
|
||||
break;
|
||||
case 5:
|
||||
res = F("Довольно неудобно");
|
||||
break;
|
||||
case 6:
|
||||
res = F("Очень неудобно");
|
||||
break;
|
||||
case 7:
|
||||
res = F("Сильно неудобно, полный звиздец");
|
||||
default:
|
||||
res = F("Unknown");
|
||||
break;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
//dhtComfort Степень#комфорта: Датчики 3
|
||||
void dhtC() {
|
||||
void dhtC()
|
||||
{
|
||||
String widget_name = sCmd.next();
|
||||
String page_name = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
@@ -320,12 +398,15 @@ void dhtC() {
|
||||
sensors_reading_map[7] = 1;
|
||||
}
|
||||
|
||||
void dhtC_reading() {
|
||||
float value;
|
||||
void dhtC_reading()
|
||||
{
|
||||
ComfortState cf;
|
||||
if (dht.getStatus() != 0) {
|
||||
if (dht.getStatus() != 0)
|
||||
{
|
||||
sendSTATUS("dhtComfort", String(dht.getStatusString()));
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
value = dht.getComfortRatio(cf, jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
||||
String final_line = get_comfort_status(cf);
|
||||
jsonWriteStr(configJson, "dhtComfort", final_line);
|
||||
@@ -335,45 +416,48 @@ void dhtC_reading() {
|
||||
}
|
||||
}
|
||||
|
||||
String get_comfort_status(ComfortState cf) {
|
||||
String get_comfort_status(ComfortState cf)
|
||||
{
|
||||
String comfortStatus;
|
||||
switch (cf) {
|
||||
case Comfort_OK:
|
||||
comfortStatus = "Отлично";
|
||||
break;
|
||||
case Comfort_TooHot:
|
||||
comfortStatus = "Очень жарко";
|
||||
break;
|
||||
case Comfort_TooCold:
|
||||
comfortStatus = "Очень холодно";
|
||||
break;
|
||||
case Comfort_TooDry:
|
||||
comfortStatus = "Очень сухо";
|
||||
break;
|
||||
case Comfort_TooHumid:
|
||||
comfortStatus = "Очень влажно";
|
||||
break;
|
||||
case Comfort_HotAndHumid:
|
||||
comfortStatus = "Жарко и влажно";
|
||||
break;
|
||||
case Comfort_HotAndDry:
|
||||
comfortStatus = "Жарко и сухо";
|
||||
break;
|
||||
case Comfort_ColdAndHumid:
|
||||
comfortStatus = "Холодно и влажно";
|
||||
break;
|
||||
case Comfort_ColdAndDry:
|
||||
comfortStatus = "Холодно и сухо";
|
||||
break;
|
||||
default:
|
||||
comfortStatus = "Неизвестно";
|
||||
break;
|
||||
switch (cf)
|
||||
{
|
||||
case Comfort_OK:
|
||||
comfortStatus = "Отлично";
|
||||
break;
|
||||
case Comfort_TooHot:
|
||||
comfortStatus = "Очень жарко";
|
||||
break;
|
||||
case Comfort_TooCold:
|
||||
comfortStatus = "Очень холодно";
|
||||
break;
|
||||
case Comfort_TooDry:
|
||||
comfortStatus = "Очень сухо";
|
||||
break;
|
||||
case Comfort_TooHumid:
|
||||
comfortStatus = "Очень влажно";
|
||||
break;
|
||||
case Comfort_HotAndHumid:
|
||||
comfortStatus = "Жарко и влажно";
|
||||
break;
|
||||
case Comfort_HotAndDry:
|
||||
comfortStatus = "Жарко и сухо";
|
||||
break;
|
||||
case Comfort_ColdAndHumid:
|
||||
comfortStatus = "Холодно и влажно";
|
||||
break;
|
||||
case Comfort_ColdAndDry:
|
||||
comfortStatus = "Холодно и сухо";
|
||||
break;
|
||||
default:
|
||||
comfortStatus = "Неизвестно";
|
||||
break;
|
||||
};
|
||||
return comfortStatus;
|
||||
}
|
||||
|
||||
//dhtDewpoint Точка#росы: Датчики 5
|
||||
void dhtD() {
|
||||
void dhtD()
|
||||
{
|
||||
String widget_name = sCmd.next();
|
||||
String page_name = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
@@ -381,11 +465,15 @@ void dhtD() {
|
||||
sensors_reading_map[8] = 1;
|
||||
}
|
||||
|
||||
void dhtD_reading() {
|
||||
void dhtD_reading()
|
||||
{
|
||||
float value;
|
||||
if (dht.getStatus() != 0) {
|
||||
if (dht.getStatus() != 0)
|
||||
{
|
||||
sendSTATUS("dhtDewpoint", String(dht.getStatusString()));
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
value = dht.computeDewPoint(jsonReadStr(configJson, dhtT_value_name).toFloat(), jsonReadStr(configJson, dhtH_value_name).toFloat(), false);
|
||||
jsonWriteInt(configJson, "dhtDewpoint", value);
|
||||
eventGen("dhtDewpoint", "");
|
||||
@@ -397,9 +485,10 @@ void dhtD_reading() {
|
||||
//=========================================i2c bus esp8266 scl-4 sda-5 ====================================================================
|
||||
//=========================================================================================================================================
|
||||
//=========================================Модуль сенсоров bmp280==========================================================================
|
||||
#ifdef bmp_enable
|
||||
|
||||
//bmp280T temp1 0x76 Температура#bmp280 Датчики any-data 1
|
||||
void bmp280T() {
|
||||
void bmp280T()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -418,7 +507,8 @@ void bmp280T() {
|
||||
sensors_reading_map[9] = 1;
|
||||
}
|
||||
|
||||
void bmp280T_rading() {
|
||||
void bmp280T_reading()
|
||||
{
|
||||
float value = 0;
|
||||
sensors_event_t temp_event, pressure_event;
|
||||
bmp_temp->getEvent(&temp_event);
|
||||
@@ -430,7 +520,8 @@ void bmp280T_rading() {
|
||||
}
|
||||
|
||||
//bmp280P press1 0x76 Давление#bmp280 Датчики any-data 2
|
||||
void bmp280P() {
|
||||
void bmp280P()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -449,7 +540,8 @@ void bmp280P() {
|
||||
sensors_reading_map[10] = 1;
|
||||
}
|
||||
|
||||
void bmp280P_reading() {
|
||||
void bmp280P_reading()
|
||||
{
|
||||
float value = 0;
|
||||
sensors_event_t temp_event, pressure_event;
|
||||
bmp_pressure->getEvent(&pressure_event);
|
||||
@@ -460,12 +552,12 @@ void bmp280P_reading() {
|
||||
sendSTATUS(bmp280P_value_name, String(value));
|
||||
Serial.println("[i] sensor '" + bmp280P_value_name + "' data: " + String(value));
|
||||
}
|
||||
#endif
|
||||
|
||||
//=========================================================================================================================================
|
||||
//=============================================Модуль сенсоров bme280======================================================================
|
||||
#ifdef bme_enable
|
||||
//bme280T temp1 0x76 Температура#bmp280 Датчики any-data 1
|
||||
void bme280T() {
|
||||
void bme280T()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -478,7 +570,8 @@ void bme280T() {
|
||||
sensors_reading_map[11] = 1;
|
||||
}
|
||||
|
||||
void bme280T_reading() {
|
||||
void bme280T_reading()
|
||||
{
|
||||
float value = 0;
|
||||
value = bme.readTemperature();
|
||||
jsonWriteStr(configJson, bme280T_value_name, String(value));
|
||||
@@ -488,7 +581,8 @@ void bme280T_reading() {
|
||||
}
|
||||
|
||||
//bme280P pres1 0x76 Давление#bmp280 Датчики any-data 1
|
||||
void bme280P() {
|
||||
void bme280P()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -501,7 +595,8 @@ void bme280P() {
|
||||
sensors_reading_map[12] = 1;
|
||||
}
|
||||
|
||||
void bme280P_reading() {
|
||||
void bme280P_reading()
|
||||
{
|
||||
float value = 0;
|
||||
value = bme.readPressure();
|
||||
value = value / 1.333224;
|
||||
@@ -512,7 +607,8 @@ void bme280P_reading() {
|
||||
}
|
||||
|
||||
//bme280H hum1 0x76 Влажность#bmp280 Датчики any-data 1
|
||||
void bme280H() {
|
||||
void bme280H()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -525,7 +621,8 @@ void bme280H() {
|
||||
sensors_reading_map[13] = 1;
|
||||
}
|
||||
|
||||
void bme280H_reading() {
|
||||
void bme280H_reading()
|
||||
{
|
||||
float value = 0;
|
||||
value = bme.readHumidity();
|
||||
jsonWriteStr(configJson, bme280H_value_name, String(value));
|
||||
@@ -535,7 +632,8 @@ void bme280H_reading() {
|
||||
}
|
||||
|
||||
//bme280A altit1 0x76 Высота#bmp280 Датчики any-data 1
|
||||
void bme280A() {
|
||||
void bme280A()
|
||||
{
|
||||
String value_name = sCmd.next();
|
||||
String address = sCmd.next();
|
||||
String widget_name = sCmd.next();
|
||||
@@ -548,7 +646,8 @@ void bme280A() {
|
||||
sensors_reading_map[14] = 1;
|
||||
}
|
||||
|
||||
void bme280A_reading() {
|
||||
void bme280A_reading()
|
||||
{
|
||||
float value = 0;
|
||||
value = bme.readAltitude(1013.25);
|
||||
jsonWriteStr(configJson, bme280A_value_name, String(value));
|
||||
@@ -556,4 +655,3 @@ void bme280A_reading() {
|
||||
sendSTATUS(bme280A_value_name, String(value));
|
||||
Serial.println("[i] sensor '" + bme280A_value_name + "' data: " + String(value));
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -39,8 +39,6 @@ String jsonWriteFloat(String& json, String name, float volume) {
|
||||
return json;
|
||||
}
|
||||
|
||||
//============================================================================================================
|
||||
//=============================================BIT AND BYTE===================================================
|
||||
uint8_t hexStringToUint8(String hex) {
|
||||
uint8_t tmp = strtol(hex.c_str(), NULL, 0);
|
||||
if (tmp >= 0x00 && tmp <= 0xFF) {
|
||||
|
||||
Reference in New Issue
Block a user