Stable version

This commit is contained in:
Dmitry Borisenko
2020-05-04 15:57:54 +02:00
parent a31c303c23
commit 4442b46603
7 changed files with 117 additions and 22 deletions

22
Cmd.ino
View File

@@ -26,7 +26,9 @@ void CMD_init() {
sCmd.addCommand("bmp280P", bmp280P); sCmd.addCommand("bmp280P", bmp280P);
sCmd.addCommand("bme280T", bme280T); sCmd.addCommand("bme280T", bme280T);
//sCmd.addCommand("bme280P", bme280P); sCmd.addCommand("bme280P", bme280P);
sCmd.addCommand("bme280H", bme280H);
sCmd.addCommand("bme280A", bme280A);
sCmd.addCommand("stepper", stepper); sCmd.addCommand("stepper", stepper);
sCmd.addCommand("stepperSet", stepperSet); sCmd.addCommand("stepperSet", stepperSet);
@@ -34,6 +36,9 @@ void CMD_init() {
sCmd.addCommand("servo", servo_); sCmd.addCommand("servo", servo_);
sCmd.addCommand("servoSet", servoSet); sCmd.addCommand("servoSet", servoSet);
sCmd.addCommand("serialBegin", serialBegin);
sCmd.addCommand("serialWrite", serialWrite);
sCmd.addCommand("logging", logging); sCmd.addCommand("logging", logging);
sCmd.addCommand("inputDigit", inputDigit); sCmd.addCommand("inputDigit", inputDigit);
@@ -467,6 +472,19 @@ void servoSet() {
jsonWriteStr(configJson, "servo" + servo_number, servo_state); jsonWriteStr(configJson, "servo" + servo_number, servo_state);
sendSTATUS("servo" + servo_number, servo_state); sendSTATUS("servo" + servo_number, servo_state);
} }
void serialBegin() {
String s_speed = sCmd.next();
//String rxPin = sCmd.next();
//String txPin = sCmd.next();
//SoftwareSerial mySerial(rxPin.toInt(), txPin.toInt());
mySerial.begin(s_speed.toInt());
}
void serialWrite() {
String text = sCmd.next();
mySerial.println(text);
}
//==================================================================================================================================================== //====================================================================================================================================================
/* /*
void inputText() { void inputText() {
@@ -593,7 +611,7 @@ void stringExecution(String str) {
String tmp = selectToMarker (str, "\n"); String tmp = selectToMarker (str, "\n");
sCmd.readStr(tmp); sCmd.readStr(tmp);
str = deleteBeforeDelimiter(str, "\n"); str = deleteBeforeDelimiter(str, "\n");
} }
} }

View File

@@ -47,7 +47,7 @@ void Device_init() {
enter_to_logging_counter = LOG1 - 1; enter_to_logging_counter = LOG1 - 1;
analog_value_names_list = ""; analog_value_names_list = "";
enter_to_analog_counter = 0; //ANALOG1 - 1; enter_to_analog_counter = 0;
level_value_name = ""; level_value_name = "";
@@ -58,19 +58,20 @@ void Device_init() {
bmp280P_value_name = ""; bmp280P_value_name = "";
bme280T_value_name = ""; bme280T_value_name = "";
bme280P_value_name = "";
for (int i = 0; i <= sensors_count; i++) { bme280H_value_name = "";
bme280A_value_name = "";
//int array_sz = sizeof(sensors_reading_map) / sizeof(sensors_reading_map[0]);
for (int i = 0; i <= 14; i++) {
sensors_reading_map[i] = 0; sensors_reading_map[i] = 0;
} }
for (int i = LOG1; i <= LOG5; i++) { for (int i = LOG1; i <= LOG5; i++) {
ts.remove(i); ts.remove(i);
} }
// for (int i = LEVEL; i <= STEPPER2; i++) {
// ts.remove(i);
// }
#ifdef layout_in_ram #ifdef layout_in_ram
all_widgets = ""; all_widgets = "";
#else #else

View File

@@ -23,6 +23,9 @@ void sensors_init() {
if (sensors_reading_map[10] == 1) bmp280P_reading(); if (sensors_reading_map[10] == 1) bmp280P_reading();
if (sensors_reading_map[11] == 1) bme280T_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();
} }
}, nullptr, true); }, nullptr, true);
} }
@@ -463,9 +466,71 @@ void bme280T_reading() {
Serial.println("[i] sensor '" + bme280T_value_name + "' data: " + String(value)); Serial.println("[i] sensor '" + bme280T_value_name + "' data: " + String(value));
} }
//bme.readPressure() / 100.0F //bme280P pres1 0x76 Давление#bmp280 Датчики any-data 1
void bme280P() {
String value_name = sCmd.next();
String address = sCmd.next();
String widget_name = sCmd.next();
String page_name = sCmd.next();
String type = sCmd.next();
String page_number = sCmd.next();
bme280P_value_name = value_name;
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
bme.begin(hexStringToUint8(address));
sensors_reading_map[12] = 1;
}
//#define SEALEVELPRESSURE_HPA (1013.25) void bme280P_reading() {
//bme.readAltitude(SEALEVELPRESSURE_HPA) float value = 0;
value = bme.readPressure();
jsonWriteStr(configJson, bme280P_value_name, String(value));
eventGen(bme280P_value_name, "");
sendSTATUS(bme280P_value_name, String(value));
Serial.println("[i] sensor '" + bme280P_value_name + "' data: " + String(value));
}
//bme.readHumidity() //bme280H hum1 0x76 Влажность#bmp280 Датчики any-data 1
void bme280H() {
String value_name = sCmd.next();
String address = sCmd.next();
String widget_name = sCmd.next();
String page_name = sCmd.next();
String type = sCmd.next();
String page_number = sCmd.next();
bme280H_value_name = value_name;
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
bme.begin(hexStringToUint8(address));
sensors_reading_map[13] = 1;
}
void bme280H_reading() {
float value = 0;
value = bme.readHumidity();
jsonWriteStr(configJson, bme280H_value_name, String(value));
eventGen(bme280H_value_name, "");
sendSTATUS(bme280H_value_name, String(value));
Serial.println("[i] sensor '" + bme280H_value_name + "' data: " + String(value));
}
//bme280A altit1 0x76 Высота#bmp280 Датчики any-data 1
void bme280A() {
String value_name = sCmd.next();
String address = sCmd.next();
String widget_name = sCmd.next();
String page_name = sCmd.next();
String type = sCmd.next();
String page_number = sCmd.next();
bme280A_value_name = value_name;
choose_widget_and_create(widget_name, page_name, page_number, type, value_name);
bme.begin(hexStringToUint8(address));
sensors_reading_map[14] = 1;
}
void bme280A_reading() {
float value = 0;
value = bme.readAltitude(1013.25);
jsonWriteStr(configJson, bme280A_value_name, String(value));
eventGen(bme280A_value_name, "");
sendSTATUS(bme280A_value_name, String(value));
Serial.println("[i] sensor '" + bme280A_value_name + "' data: " + String(value));
}

View File

@@ -139,7 +139,7 @@ boolean RouterFind(String ssid) {
Serial.println("[WIFI][i] scanning still in progress"); Serial.println("[WIFI][i] scanning still in progress");
return false; return false;
} }
if (n == 0) { //Сканирование все еще выполняется if (n == 0) { //ни одна сеть не найдена
Serial.println("[WIFI][i] no any wifi sations, starting scanning"); Serial.println("[WIFI][i] no any wifi sations, starting scanning");
WiFi.scanNetworks (true, false); WiFi.scanNetworks (true, false);
return false; return false;

View File

@@ -1,5 +1,5 @@
dallas 2 Водонагреватель,#t°C Датчики any-data 1 dallas 2 Водонагреватель,#t°C Датчики any-data 1
logging dallas 1 100 fast Температура Датчики 2 logging dallas 1 100 Температура Датчики 2
//2 - номер пина датчика //2 - номер пина датчика
//варианты отображения: any-data, progress-round, progress-line, fill-gauge //варианты отображения: any-data, progress-round, progress-line, fill-gauge

View File

@@ -1,5 +1,5 @@
dallas 2 Водонагреватель,#t°C Термостат any-data 1 dallas 2 Водонагреватель,#t°C Термостат any-data 1
logging dallas 5 100 fast Температура Термостат 2 logging dallas 5 100 Температура Термостат 2
inputDigit digit1 При#скольки#выключить? Термостат 40 3 inputDigit digit1 При#скольки#выключить? Термостат 40 3
inputDigit digit2 При#скольки#включить? Термостат 20 4 inputDigit digit2 При#скольки#включить? Термостат 20 4
button 1 5 Нагреватель Термостат 0 5 button 1 5 Нагреватель Термостат 0 5

21
set.h
View File

@@ -1,5 +1,5 @@
//===============FIRMWARE SETTINGS===================================== //===============FIRMWARE SETTINGS=====================================
String firmware_version = "2.3.3"; String firmware_version = "2.3.3g";
boolean mb_4_of_memory = true; boolean mb_4_of_memory = true;
//#define OTA_enable //#define OTA_enable
//#define MDNS_enable //#define MDNS_enable
@@ -12,8 +12,8 @@ boolean mb_4_of_memory = true;
#define statistics_update 1000 * 60 * 60 * 2 #define statistics_update 1000 * 60 * 60 * 2
//====================================================================== //======================================================================
#define TIME_COMPILING String(__TIME__) //#define TIME_COMPILING String(__TIME__)
#define DATE_COMPILING String(__DATE__) //#define DATE_COMPILING String(__DATE__)
//===============библиотеки и объекты для ESP8266======================== //===============библиотеки и объекты для ESP8266========================
#ifdef ESP8266 #ifdef ESP8266
@@ -115,6 +115,9 @@ Adafruit_BME280 bme; // use I2C interface
Adafruit_Sensor *bme_temp = bme.getTemperatureSensor(); Adafruit_Sensor *bme_temp = bme.getTemperatureSensor();
Adafruit_Sensor *bme_pressure = bme.getPressureSensor(); Adafruit_Sensor *bme_pressure = bme.getPressureSensor();
Adafruit_Sensor *bme_humidity = bme.getHumiditySensor(); Adafruit_Sensor *bme_humidity = bme.getHumiditySensor();
#include <SoftwareSerial.h>
SoftwareSerial mySerial(14, 12);
//===============FIRMWARE VARS======================== //===============FIRMWARE VARS========================
boolean just_load = true; boolean just_load = true;
const char* hostName = "IoT Manager"; const char* hostName = "IoT Manager";
@@ -133,13 +136,21 @@ String analog_value_names_list;
int enter_to_analog_counter; int enter_to_analog_counter;
String level_value_name; String level_value_name;
String dhtT_value_name; String dhtT_value_name;
String dhtH_value_name; String dhtH_value_name;
String bmp280T_value_name; String bmp280T_value_name;
String bmp280P_value_name; String bmp280P_value_name;
String bme280T_value_name; String bme280T_value_name;
int sensors_count = 11; String bme280P_value_name;
int sensors_reading_map [] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; String bme280H_value_name;
String bme280A_value_name;
int sensors_reading_map [] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
//============================0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,12,13,14
//LOGGING //LOGGING
String logging_value_names_list; String logging_value_names_list;
int enter_to_logging_counter; int enter_to_logging_counter;