From 909e28c36a436391ce961ba8c6ba0da77dd3a62c Mon Sep 17 00:00:00 2001 From: Dmitry Borisenko <49808844+DmitryBorisenko33@users.noreply.github.com> Date: Mon, 26 Sep 2022 20:26:04 +0200 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D0=B8=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BC=D0=BE=D0=B4?= =?UTF-8?q?=D1=83=D0=BB=D0=B5=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data_svelte/items.json | 40 ++--- myProfile.json | 4 + src/modules/sensors/Ads1115/modinfo.json | 42 +++--- src/modules/sensors/Aht20/modinfo.json | 61 ++++---- src/modules/sensors/Bme280/modinfo.json | 86 +++++------ src/modules/sensors/Bmp280/modinfo.json | 61 ++++---- src/modules/sensors/Dht1122/modinfo.json | 61 ++++---- src/modules/sensors/Ds18b20/modinfo.json | 36 +++-- src/modules/sensors/GY21/modinfo.json | 57 +++---- src/modules/sensors/Hdc1080/modinfo.json | 61 ++++---- src/modules/sensors/Max6675/modinfo.json | 34 ++--- src/modules/sensors/Mhz19/modinfo.json | 174 +++++++++++----------- src/modules/sensors/Pzem004t/Pzem004t.cpp | 93 ++++++++++++ src/modules/sensors/Pzem004t/modinfo.json | 68 +++++++++ src/modules/sensors/Sds011/modinfo.json | 81 +++++----- src/modules/sensors/Sht20/modinfo.json | 57 +++---- src/modules/sensors/Sht30/modinfo.json | 57 +++---- src/modules/sensors/Sonar/modinfo.json | 35 ++--- 18 files changed, 638 insertions(+), 470 deletions(-) create mode 100644 src/modules/sensors/Pzem004t/Pzem004t.cpp create mode 100644 src/modules/sensors/Pzem004t/modinfo.json diff --git a/data_svelte/items.json b/data_svelte/items.json index df3064cc..2867cba6 100644 --- a/data_svelte/items.json +++ b/data_svelte/items.json @@ -98,7 +98,7 @@ "header": "Сенсоры" }, { - "name": "8. Cенсор температуры AHT20", + "name": "8. AHT20 Cенсор температуры", "type": "Reading", "subtype": "Aht20t", "id": "Temp20", @@ -111,7 +111,7 @@ "num": 8 }, { - "name": "9. Cенсор влажности AHT20", + "name": "9. AHT20 Cенсор влажности", "type": "Reading", "subtype": "Aht20h", "id": "Hum20", @@ -141,7 +141,7 @@ "num": 10 }, { - "name": "11. Cенсор температуры Bme280", + "name": "11. Bme280 Cенсор температуры", "type": "Reading", "subtype": "Bme280t", "id": "tmp3", @@ -154,7 +154,7 @@ "num": 11 }, { - "name": "12. Cенсор давления Bme280", + "name": "12. Bme280 Cенсор давления", "type": "Reading", "subtype": "Bme280p", "id": "Press3", @@ -167,7 +167,7 @@ "num": 12 }, { - "name": "13. Cенсор влажности Bme280", + "name": "13. Bme280 Cенсор влажности", "type": "Reading", "subtype": "Bme280h", "id": "Hum3", @@ -180,7 +180,7 @@ "num": 13 }, { - "name": "14. Cенсор температуры Bmp280", + "name": "14. Bmp280 Cенсор температуры", "type": "Reading", "subtype": "Bmp280t", "id": "tmp3", @@ -193,7 +193,7 @@ "num": 14 }, { - "name": "15. Cенсор давления Bmp280", + "name": "15. Bmp280 Cенсор давления", "type": "Reading", "subtype": "Bmp280p", "id": "Press3", @@ -206,7 +206,7 @@ "num": 15 }, { - "name": "16. Cенсор температуры dht11", + "name": "16. dht11 Cенсор температуры", "type": "Reading", "subtype": "Dht1122t", "id": "tmp3", @@ -219,7 +219,7 @@ "num": 16 }, { - "name": "17. Cенсор влажности dht11", + "name": "17. dht11 Cенсор влажности", "type": "Reading", "subtype": "Dht1122h", "id": "Hum3", @@ -232,7 +232,7 @@ "num": 17 }, { - "name": "18. Cенсор температуры ds18b20", + "name": "18. ds18b20 Cенсор температуры", "type": "Reading", "subtype": "Ds18b20", "id": "dstmp", @@ -247,7 +247,7 @@ "num": 18 }, { - "name": "19. Cенсор температуры GY21", + "name": "19. GY21 Cенсор температуры", "type": "Reading", "subtype": "GY21t", "id": "tmp4", @@ -259,7 +259,7 @@ "num": 19 }, { - "name": "20. Cенсор влажности GY21", + "name": "20. GY21 Cенсор влажности", "type": "Reading", "subtype": "GY21h", "id": "Hum4", @@ -271,7 +271,7 @@ "num": 20 }, { - "name": "21. Cенсор температуры HDC1080", + "name": "21. HDC1080 Cенсор температуры", "type": "Reading", "subtype": "Hdc1080t", "id": "Temp1080", @@ -284,7 +284,7 @@ "num": 21 }, { - "name": "22. Cенсор влажности HDC1080", + "name": "22. HDC1080 Cенсор влажности", "type": "Reading", "subtype": "Hdc1080h", "id": "Hum1080", @@ -297,7 +297,7 @@ "num": 22 }, { - "name": "23. Cенсор температуры MAX6675", + "name": "23. MAX6675 Cенсор температуры", "type": "Reading", "subtype": "Max6675t", "id": "maxtmp", @@ -321,7 +321,7 @@ "pinTx": 12 }, { - "name": "25. Cенсор температуры Sht20", + "name": "25. Sht20 Cенсор температуры", "type": "Reading", "subtype": "Sht20t", "id": "tmp2", @@ -333,7 +333,7 @@ "num": 25 }, { - "name": "26. Cенсор влажности Sht20", + "name": "26. Sht20 Cенсор влажности", "type": "Reading", "subtype": "Sht20h", "id": "Hum2", @@ -345,7 +345,7 @@ "num": 26 }, { - "name": "27. Cенсор температуры Sht30", + "name": "27. Sht30 Cенсор температуры", "type": "Reading", "subtype": "Sht30t", "id": "tmp30", @@ -357,7 +357,7 @@ "num": 27 }, { - "name": "28. Cенсор влажности Sht30", + "name": "28. Sht30 Cенсор влажности", "type": "Reading", "subtype": "Sht30h", "id": "Hum30", @@ -369,7 +369,7 @@ "num": 28 }, { - "name": "29. Сонар HC-SR04", + "name": "29. HC-SR04 Ультразвуковой дальномер", "num": 29, "type": "Reading", "subtype": "Sonar", diff --git a/myProfile.json b/myProfile.json index fce360e1..77db2a2b 100644 --- a/myProfile.json +++ b/myProfile.json @@ -97,6 +97,10 @@ "path": "src\\modules\\sensors\\Mhz19", "active": false }, + { + "path": "src\\modules\\sensors\\Pzem004t", + "active": false + }, { "path": "src\\modules\\sensors\\RCswitch", "active": true diff --git a/src/modules/sensors/Ads1115/modinfo.json b/src/modules/sensors/Ads1115/modinfo.json index d8684f55..b3d26a78 100644 --- a/src/modules/sensors/Ads1115/modinfo.json +++ b/src/modules/sensors/Ads1115/modinfo.json @@ -1,25 +1,23 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Датчик напряжения ADS1115", - "type": "Reading", - "subtype": "Ads1115", - "id": "Ads3", - "widget": "anydataVlt", - "page": "Сенсоры", - "descr": "ADS_3", - - "pin": "0", - "mode": "volt", - "gain": "3/4x", - - "plus": 0, - "multiply": 1, - "round": 2, - "int": 10 - }], - + "configItem": [ + { + "name": "ADS1115 датчик напряжения ", + "type": "Reading", + "subtype": "Ads1115", + "id": "Ads3", + "widget": "anydataVlt", + "page": "Сенсоры", + "descr": "ADS_3", + "pin": "0", + "mode": "volt", + "gain": "3/4x", + "plus": 0, + "multiply": 1, + "round": 2, + "int": 10 + } + ], "about": { "authorName": "Serghei Crasnicov", "authorContact": "https://t.me/Serghei63", @@ -37,9 +35,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": false, - "devices": { "esp32_4mb": [ "adafruit/Adafruit ADS1X15 @ ^2.3.0" diff --git a/src/modules/sensors/Aht20/modinfo.json b/src/modules/sensors/Aht20/modinfo.json index 27c7c4a4..c4628d41 100644 --- a/src/modules/sensors/Aht20/modinfo.json +++ b/src/modules/sensors/Aht20/modinfo.json @@ -1,31 +1,31 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры AHT20", - "type": "Reading", - "subtype": "Aht20t", - "id": "Temp20", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "AHT20 Температура", - "int": 15, - "addr": "0x38", - "round": 1 - }, - { - "name": "Cенсор влажности AHT20", - "type": "Reading", - "subtype": "Aht20h", - "id": "Hum20", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "AHT20 Влажность", - "int": 15, - "addr": "0x38", - "round": 1 - }], - + "configItem": [ + { + "name": "AHT20 Cенсор температуры", + "type": "Reading", + "subtype": "Aht20t", + "id": "Temp20", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "AHT20 Температура", + "int": 15, + "addr": "0x38", + "round": 1 + }, + { + "name": "AHT20 Cенсор влажности", + "type": "Reading", + "subtype": "Aht20h", + "id": "Hum20", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "AHT20 Влажность", + "int": 15, + "addr": "0x38", + "round": 1 + } + ], "about": { "authorName": "Serghei Crasnicov", "authorContact": "https://t.me/Serghei63", @@ -34,7 +34,10 @@ "moduleName": "Aht20", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Aht20t", "Aht20h"], + "subTypes": [ + "Aht20t", + "Aht20h" + ], "title": "Сенсор температуры и влажности AHT20", "moduleDesc": "Позволяет получить температуру и влажность с Aht20.", "propInfo": { @@ -43,9 +46,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "Adafruit AHTX0" diff --git a/src/modules/sensors/Bme280/modinfo.json b/src/modules/sensors/Bme280/modinfo.json index 977fc0e7..eece5bc1 100644 --- a/src/modules/sensors/Bme280/modinfo.json +++ b/src/modules/sensors/Bme280/modinfo.json @@ -1,43 +1,43 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры Bme280", - "type": "Reading", - "subtype": "Bme280t", - "id": "tmp3", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "Температура", - "int": 15, - "addr": "0x77", - "round": 1 - }, - { - "name": "Cенсор давления Bme280", - "type": "Reading", - "subtype": "Bme280p", - "id": "Press3", - "widget": "anydataMm", - "page": "Сенсоры", - "descr": "Давление", - "int": 15, - "addr": "0x77", - "round": 1 - }, - { - "name": "Cенсор влажности Bme280", - "type": "Reading", - "subtype": "Bme280h", - "id": "Hum3", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "Влажность", - "int": 15, - "addr": "0x77", - "round": 1 - }], - + "configItem": [ + { + "name": "Bme280 Cенсор температуры", + "type": "Reading", + "subtype": "Bme280t", + "id": "tmp3", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Температура", + "int": 15, + "addr": "0x77", + "round": 1 + }, + { + "name": "Bme280 Cенсор давления", + "type": "Reading", + "subtype": "Bme280p", + "id": "Press3", + "widget": "anydataMm", + "page": "Сенсоры", + "descr": "Давление", + "int": 15, + "addr": "0x77", + "round": 1 + }, + { + "name": "Bme280 Cенсор влажности", + "type": "Reading", + "subtype": "Bme280h", + "id": "Hum3", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "Влажность", + "int": 15, + "addr": "0x77", + "round": 1 + } + ], "about": { "authorName": "Ilya Belyakov", "authorContact": "https://t.me/Biveraxe", @@ -46,7 +46,11 @@ "moduleName": "Bme280", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Bme280t", "Bme280p", "Bme280h"], + "subTypes": [ + "Bme280t", + "Bme280p", + "Bme280h" + ], "title": "Сенсор температуры, давления и влажности с Bme280", "moduleDesc": "Позволяет получить значения температуры, давления и влажности с Bme280.", "propInfo": { @@ -54,9 +58,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "adafruit/Adafruit BME280 Library" diff --git a/src/modules/sensors/Bmp280/modinfo.json b/src/modules/sensors/Bmp280/modinfo.json index f9453d00..41219e10 100644 --- a/src/modules/sensors/Bmp280/modinfo.json +++ b/src/modules/sensors/Bmp280/modinfo.json @@ -1,31 +1,31 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры Bmp280", - "type": "Reading", - "subtype": "Bmp280t", - "id": "tmp3", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "280 Температура", - "int": 15, - "addr": "0x77", - "round": 1 - }, - { - "name": "Cенсор давления Bmp280", - "type": "Reading", - "subtype": "Bmp280p", - "id": "Press3", - "widget": "anydataMm", - "page": "Сенсоры", - "descr": "280 Давление", - "int": 15, - "addr": "0x77", - "round": 1 - }], - + "configItem": [ + { + "name": "Bmp280 Cенсор температуры", + "type": "Reading", + "subtype": "Bmp280t", + "id": "tmp3", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "280 Температура", + "int": 15, + "addr": "0x77", + "round": 1 + }, + { + "name": "Bmp280 Cенсор давления", + "type": "Reading", + "subtype": "Bmp280p", + "id": "Press3", + "widget": "anydataMm", + "page": "Сенсоры", + "descr": "280 Давление", + "int": 15, + "addr": "0x77", + "round": 1 + } + ], "about": { "authorName": "Ilya Belyakov", "authorContact": "https://t.me/Biveraxe", @@ -34,7 +34,10 @@ "moduleName": "Bmp280", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Bmp280t", "Bmp280p"], + "subTypes": [ + "Bmp280t", + "Bmp280p" + ], "title": "Сенсор температуры, давления с Bmp280", "moduleDesc": "Позволяет получить значения температуры и давления с Bmp280.", "propInfo": { @@ -42,9 +45,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "adafruit/Adafruit BMP280 Library" diff --git a/src/modules/sensors/Dht1122/modinfo.json b/src/modules/sensors/Dht1122/modinfo.json index 28d86325..a6bad740 100644 --- a/src/modules/sensors/Dht1122/modinfo.json +++ b/src/modules/sensors/Dht1122/modinfo.json @@ -1,31 +1,31 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры dht11", - "type": "Reading", - "subtype": "Dht1122t", - "id": "tmp3", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "Температура", - "int": 15, - "pin": 0, - "senstype": "dht11" - }, - { - "name": "Cенсор влажности dht11", - "type": "Reading", - "subtype": "Dht1122h", - "id": "Hum3", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "Влажность", - "int": 15, - "pin": 0, - "senstype": "dht11" - }], - + "configItem": [ + { + "name": "dht11 Cенсор температуры", + "type": "Reading", + "subtype": "Dht1122t", + "id": "tmp3", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Температура", + "int": 15, + "pin": 0, + "senstype": "dht11" + }, + { + "name": "dht11 Cенсор влажности", + "type": "Reading", + "subtype": "Dht1122h", + "id": "Hum3", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "Влажность", + "int": 15, + "pin": 0, + "senstype": "dht11" + } + ], "about": { "authorName": "Ilya Belyakov", "authorContact": "https://t.me/Biveraxe", @@ -34,7 +34,10 @@ "moduleName": "Dht1122", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Dht1122t", "Dht1122h"], + "subTypes": [ + "Dht1122t", + "Dht1122h" + ], "title": "Сенсор температуры и влажности с dht11 или dht22", "moduleDesc": "Позволяет получить значения температуры и влажности с dht11 или dht22.", "propInfo": { @@ -42,9 +45,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "beegee-tokyo/DHT sensor library for ESPx" diff --git a/src/modules/sensors/Ds18b20/modinfo.json b/src/modules/sensors/Ds18b20/modinfo.json index 5d943b9b..cf34d95c 100644 --- a/src/modules/sensors/Ds18b20/modinfo.json +++ b/src/modules/sensors/Ds18b20/modinfo.json @@ -1,21 +1,21 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры ds18b20", - "type": "Reading", - "subtype": "Ds18b20", - "id": "dstmp", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "DS Температура", - "int": 15, - "pin": 2, - "index": 0, - "addr": "", - "round": 1 - }], - + "configItem": [ + { + "name": "ds18b20 Cенсор температуры", + "type": "Reading", + "subtype": "Ds18b20", + "id": "dstmp", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "DS Температура", + "int": 15, + "pin": 2, + "index": 0, + "addr": "", + "round": 1 + } + ], "about": { "authorName": "Ilya Belyakov", "authorContact": "https://t.me/Biveraxe", @@ -33,9 +33,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "milesburton/DallasTemperature@^3.9.1" diff --git a/src/modules/sensors/GY21/modinfo.json b/src/modules/sensors/GY21/modinfo.json index 1bc51848..a4a0dacc 100644 --- a/src/modules/sensors/GY21/modinfo.json +++ b/src/modules/sensors/GY21/modinfo.json @@ -1,29 +1,29 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры GY21", - "type": "Reading", - "subtype": "GY21t", - "id": "tmp4", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "Температура", - "round": 1, - "int": 15 - }, - { - "name": "Cенсор влажности GY21", - "type": "Reading", - "subtype": "GY21h", - "id": "Hum4", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "Влажность", - "round": 1, - "int": 15 - }], - + "configItem": [ + { + "name": "GY21 Cенсор температуры", + "type": "Reading", + "subtype": "GY21t", + "id": "tmp4", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Температура", + "round": 1, + "int": 15 + }, + { + "name": "GY21 Cенсор влажности", + "type": "Reading", + "subtype": "GY21h", + "id": "Hum4", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "Влажность", + "round": 1, + "int": 15 + } + ], "about": { "authorName": "Alecs", "authorContact": "https://t.me/Alecs", @@ -32,16 +32,17 @@ "moduleName": "GY21", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["GY21t", "GY21h"], + "subTypes": [ + "GY21t", + "GY21h" + ], "title": "Датчик температуры и влажности GY21", "moduleDesc": "Позволяет получить значения температуры и влажности с GY21.", "propInfo": { "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "https://github.com/JonasGMorsch/GY-21.git" diff --git a/src/modules/sensors/Hdc1080/modinfo.json b/src/modules/sensors/Hdc1080/modinfo.json index eb975766..e45569ca 100644 --- a/src/modules/sensors/Hdc1080/modinfo.json +++ b/src/modules/sensors/Hdc1080/modinfo.json @@ -1,31 +1,31 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры HDC1080", - "type": "Reading", - "subtype": "Hdc1080t", - "id": "Temp1080", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "1080 Температура", - "int": 15, - "addr": "0x40", - "round": 1 - }, - { - "name": "Cенсор влажности HDC1080", - "type": "Reading", - "subtype": "Hdc1080h", - "id": "Hum1080", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "1080 Влажность", - "int": 15, - "addr": "0x40", - "round": 1 - }], - + "configItem": [ + { + "name": "HDC1080 Cенсор температуры", + "type": "Reading", + "subtype": "Hdc1080t", + "id": "Temp1080", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "1080 Температура", + "int": 15, + "addr": "0x40", + "round": 1 + }, + { + "name": "HDC1080 Cенсор влажности", + "type": "Reading", + "subtype": "Hdc1080h", + "id": "Hum1080", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "1080 Влажность", + "int": 15, + "addr": "0x40", + "round": 1 + } + ], "about": { "authorName": "Serghei Crasnicov", "authorContact": "https://t.me/Serghei63", @@ -34,7 +34,10 @@ "moduleName": "Hdc1080", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Hdc1080t", "Hdc1080h"], + "subTypes": [ + "Hdc1080t", + "Hdc1080h" + ], "title": "Датчик температуры и влажности Hdc1080", "moduleDesc": "Позволяет получить значения температуры и влажности с Hdc1080.", "propInfo": { @@ -42,9 +45,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "ClosedCube HDC1080" diff --git a/src/modules/sensors/Max6675/modinfo.json b/src/modules/sensors/Max6675/modinfo.json index e8961320..2a9491c0 100644 --- a/src/modules/sensors/Max6675/modinfo.json +++ b/src/modules/sensors/Max6675/modinfo.json @@ -1,20 +1,20 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры MAX6675", - "type": "Reading", - "subtype": "Max6675t", - "id": "maxtmp", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "MAX Температура", - "int": 15, - "DO": 12, - "CS": 13, - "CLK": 14 - }], - + "configItem": [ + { + "name": "MAX6675 Cенсор температуры", + "type": "Reading", + "subtype": "Max6675t", + "id": "maxtmp", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "MAX Температура", + "int": 15, + "DO": 12, + "CS": 13, + "CLK": 14 + } + ], "about": { "authorName": "Serghei Crasnicov", "authorContact": "https://t.me/Serghei63", @@ -32,9 +32,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "adafruit/MAX6675 library" diff --git a/src/modules/sensors/Mhz19/modinfo.json b/src/modules/sensors/Mhz19/modinfo.json index 6cd19162..25cdafe5 100644 --- a/src/modules/sensors/Mhz19/modinfo.json +++ b/src/modules/sensors/Mhz19/modinfo.json @@ -1,86 +1,86 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Датчик CO2 MHZ-19 UART", - "type": "Reading", - "subtype": "Mhz19uart", - "id": "co2uart", - "widget": "anydataPpm", - "page": "Сенсоры", - "descr": "CO2uart", - "plus": 0, - "multiply": 1, - "round": 1, - "pin": 0, - "rxPin": 13, - "txPin": 12, - "int": 15, - "range": 5000, - "ABC": 1 - }, - { - "name": "Датчик CO2 MHZ-19 PWM", - "type": "Reading", - "subtype": "Mhz19pwm", - "id": "co2pwm", - "widget": "anydataPpm", - "page": "Сенсоры", - "descr": "CO2pwm", - "plus": 0, - "multiply": 1, - "round": 1, - "pin": 15, - "int": 300 - }, - { - "name": "Cенсор температуры от MHZ-19 UART", - "type": "Reading", - "subtype": "Mhz19temp", - "id": "Mhz19temp", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "Температура", - "plus": 0, - "multiply": 1, - "round": 1, - "rxPin": 13, - "txPin": 12, - "ABC": 1, - "int": 30 - }, - { - "name": "Рабочий диапазон от MHZ-19 UART", - "type": "Reading", - "subtype": "Mhz19range", - "id": "Mhz19range", - "widget": "anydataPpm", - "page": "Сенсоры", - "descr": "Диапазон", - "plus": 0, - "multiply": 1, - "round": 1, - "rxPin": 13, - "txPin": 12, - "range": 5000, - "ABC": 1, - "int": 30 - }, - { - "name": "Автокалибровка от MHZ-19 UART", - "type": "Reading", - "subtype": "Mhz19ABC", - "id": "Mhz19ABC", - "widget": "anydataDef", - "page": "Сенсоры", - "descr": "ABC", - "rxPin": 13, - "txPin": 12, - "range": 5000, - "ABC": 1, - "int": 30 - }], - + "configItem": [ + { + "name": "MHZ-19 Датчик CO2 UART", + "type": "Reading", + "subtype": "Mhz19uart", + "id": "co2uart", + "widget": "anydataPpm", + "page": "Сенсоры", + "descr": "CO2uart", + "plus": 0, + "multiply": 1, + "round": 1, + "pin": 0, + "rxPin": 13, + "txPin": 12, + "int": 15, + "range": 5000, + "ABC": 1 + }, + { + "name": "MHZ-19 Датчик CO2 PWM", + "type": "Reading", + "subtype": "Mhz19pwm", + "id": "co2pwm", + "widget": "anydataPpm", + "page": "Сенсоры", + "descr": "CO2pwm", + "plus": 0, + "multiply": 1, + "round": 1, + "pin": 15, + "int": 300 + }, + { + "name": "Cенсор температуры от MHZ-19 UART", + "type": "Reading", + "subtype": "Mhz19temp", + "id": "Mhz19temp", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Температура", + "plus": 0, + "multiply": 1, + "round": 1, + "rxPin": 13, + "txPin": 12, + "ABC": 1, + "int": 30 + }, + { + "name": "Рабочий диапазон от MHZ-19 UART", + "type": "Reading", + "subtype": "Mhz19range", + "id": "Mhz19range", + "widget": "anydataPpm", + "page": "Сенсоры", + "descr": "Диапазон", + "plus": 0, + "multiply": 1, + "round": 1, + "rxPin": 13, + "txPin": 12, + "range": 5000, + "ABC": 1, + "int": 30 + }, + { + "name": "Автокалибровка от MHZ-19 UART", + "type": "Reading", + "subtype": "Mhz19ABC", + "id": "Mhz19ABC", + "widget": "anydataDef", + "page": "Сенсоры", + "descr": "ABC", + "rxPin": 13, + "txPin": 12, + "range": 5000, + "ABC": 1, + "int": 30 + } + ], "about": { "authorName": "Alex K", "authorContact": "https://t.me/cmche", @@ -89,7 +89,13 @@ "moduleName": "Mhz19", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Mhz19uart", "Mhz19pwm", "Mhz19temp", "Mhz19range", "Mhz19ABC"], + "subTypes": [ + "Mhz19uart", + "Mhz19pwm", + "Mhz19temp", + "Mhz19range", + "Mhz19ABC" + ], "title": "Датчик температуры и CO2 с Mhz19", "moduleDesc": "Позволяет получить значения температуры и CO2 с Mhz19.", "propInfo": { @@ -100,9 +106,7 @@ "ABC": "" } }, - "defActive": false, - "devices": { "esp32_4mb": [], "esp8266_4mb": [] diff --git a/src/modules/sensors/Pzem004t/Pzem004t.cpp b/src/modules/sensors/Pzem004t/Pzem004t.cpp new file mode 100644 index 00000000..d61402d5 --- /dev/null +++ b/src/modules/sensors/Pzem004t/Pzem004t.cpp @@ -0,0 +1,93 @@ + +#include "Global.h" +#include "classes/IoTItem.h" + +#include "PZEMSensor.h" +#include "SoftUART.h" + +#include + +// std::map bmes; +// +// class Pzem004t : public IoTItem { +// private: +// Adafruit_Pzem004* _bme; +// +// public: +// Pzem004t(Adafruit_Pzem004* bme, String parameters) : IoTItem(parameters) { +// _bme = bme; +// } +// +// void doByInterval() { +// value.valD = _bme->readTemperature(); +// if (value.valD < 145) +// regEvent(value.valD, "Pzem004t"); +// else +// SerialPrint("E", "Sensor Pzem004t", "Error"); +// } +// +// ~Pzem004t(){}; +// }; +// +// class Pzem004h : public IoTItem { +// private: +// Adafruit_Pzem004* _bme; +// +// public: +// Pzem004h(Adafruit_Pzem004* bme, String parameters) : IoTItem(parameters) { +// _bme = bme; +// } +// +// void doByInterval() { +// value.valD = _bme->readHumidity(); +// if (value.valD < 100) +// regEvent(value.valD, "Pzem004h"); +// else +// SerialPrint("E", "Sensor Pzem004h", "Error"); +// } +// +// ~Pzem004h(){}; +// }; +// +// class Pzem004p : public IoTItem { +// private: +// Adafruit_Pzem004* _bme; +// +// public: +// Pzem004p(Adafruit_Pzem004* bme, String parameters) : IoTItem(parameters) { +// _bme = bme; +// } +// +// void doByInterval() { +// value.valD = _bme->readPressure(); +// if (value.valD > 0) { +// value.valD = value.valD / 1.333224 / 100; +// regEvent(value.valD, "Pzem004p"); +// } else +// SerialPrint("E", "Sensor Pzem004p", "Error"); +// } +// +// ~Pzem004p(){}; +// }; +// +// void* getAPI_Pzem004(String subtype, String param) { +// if (subtype == F("Pzem004t") || subtype == F("Pzem004h") || subtype == F("Pzem004p")) { +// String addr; +// jsonRead(param, "addr", addr); +// +// if (bmes.find(addr) == bmes.end()) { +// bmes[addr] = new Adafruit_Pzem004(); +// bmes[addr]->begin(hexStringToUint8(addr)); +// } +// +// if (subtype == F("Pzem004t")) { +// return new Pzem004t(bmes[addr], param); +// } else if (subtype == F("Pzem004h")) { +// return new Pzem004h(bmes[addr], param); +// } else if (subtype == F("Pzem004p")) { +// return new Pzem004p(bmes[addr], param); +// } +// } +// +// return nullptr; +// } diff --git a/src/modules/sensors/Pzem004t/modinfo.json b/src/modules/sensors/Pzem004t/modinfo.json new file mode 100644 index 00000000..54744d30 --- /dev/null +++ b/src/modules/sensors/Pzem004t/modinfo.json @@ -0,0 +1,68 @@ +{ + "menuSection": "Сенсоры", + "configItem": [ + { + "name": "Cенсор температуры Bme280", + "type": "Reading", + "subtype": "Bme280t", + "id": "tmp3", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Температура", + "int": 15, + "addr": "0x77", + "round": 1 + }, + { + "name": "Cенсор давления Bme280", + "type": "Reading", + "subtype": "Bme280p", + "id": "Press3", + "widget": "anydataMm", + "page": "Сенсоры", + "descr": "Давление", + "int": 15, + "addr": "0x77", + "round": 1 + }, + { + "name": "Cенсор влажности Bme280", + "type": "Reading", + "subtype": "Bme280h", + "id": "Hum3", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "Влажность", + "int": 15, + "addr": "0x77", + "round": 1 + } + ], + "about": { + "authorName": "Dmitry Borisenko", + "authorContact": "https://t.me/Dmitry_Borisenko", + "authorGit": "https://github.com/DmitryBorisenko33", + "specialThanks": "Serghei Crasnicov @Serghei63", + "moduleName": "Bme280", + "moduleVersion": "1.0", + "usedRam": 15, + "subTypes": [ + "Pzem004v", + "Pzem004a", + "Pzem004w", + "Pzem004hz", + "Pzem004wh" + ], + "title": "Счетчик электроэнергии PZEM 004t версии 3.0 (с модбасом)", + "moduleDesc": "Считает потраченную электроэнергию, измеряет напряжение, частоту, силу тока и прочие параметры", + "propInfo": { + "addr": "Адрес modbus", + "int": "Количество секунд между опросами датчика" + } + }, + "defActive": false, + "devices": { + "esp32_4mb": [], + "esp8266_4mb": [] + } +} \ No newline at end of file diff --git a/src/modules/sensors/Sds011/modinfo.json b/src/modules/sensors/Sds011/modinfo.json index 31b6ab46..cca5ad1f 100644 --- a/src/modules/sensors/Sds011/modinfo.json +++ b/src/modules/sensors/Sds011/modinfo.json @@ -1,41 +1,41 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Датчик пыли SDS011 PM25", - "type": "Reading", - "subtype": "Sds011_25", - "id": "pmuart25", - "widget": "anydataPpm", - "page": "Сенсоры", - "descr": "PM-2.5", - "plus": 0, - "multiply": 1, - "round": 10, - "rxPin": 13, - "txPin": 12, - "int": 15, - "warmUp": 30, - "period": 300 - }, - { - "name": "Датчик пыли SDS011 PM10", - "type": "Reading", - "subtype": "Sds011_10", - "id": "pmuart10", - "widget": "anydataPpm", - "page": "Сенсоры", - "descr": "PM-10", - "plus": 0, - "multiply": 1, - "round": 10, - "rxPin": 13, - "txPin": 12, - "int": 15, - "warmUp": 30, - "period": 300 - }], - + "configItem": [ + { + "name": "SDS011 PM25 Датчик пыли", + "type": "Reading", + "subtype": "Sds011_25", + "id": "pmuart25", + "widget": "anydataPpm", + "page": "Сенсоры", + "descr": "PM-2.5", + "plus": 0, + "multiply": 1, + "round": 10, + "rxPin": 13, + "txPin": 12, + "int": 15, + "warmUp": 30, + "period": 300 + }, + { + "name": "SDS011 PM10 Датчик пыли", + "type": "Reading", + "subtype": "Sds011_10", + "id": "pmuart10", + "widget": "anydataPpm", + "page": "Сенсоры", + "descr": "PM-10", + "plus": 0, + "multiply": 1, + "round": 10, + "rxPin": 13, + "txPin": 12, + "int": 15, + "warmUp": 30, + "period": 300 + } + ], "about": { "authorName": "Alex K", "authorContact": "https://t.me/cmche", @@ -44,7 +44,10 @@ "moduleName": "Sds011", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Sds011_25", "Sds011_10"], + "subTypes": [ + "Sds011_25", + "Sds011_10" + ], "title": "Датчик пыли", "moduleDesc": "Позволяет получить значения концентрации пыли в воздухе с Sds011.", "propInfo": { @@ -55,9 +58,7 @@ "period": "" } }, - "defActive": false, - "devices": { "esp32_4mb": [ "Nova Fitness Sds dust sensors library@1.5.1" diff --git a/src/modules/sensors/Sht20/modinfo.json b/src/modules/sensors/Sht20/modinfo.json index cbe175f4..e4cb385d 100644 --- a/src/modules/sensors/Sht20/modinfo.json +++ b/src/modules/sensors/Sht20/modinfo.json @@ -1,29 +1,29 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры Sht20", - "type": "Reading", - "subtype": "Sht20t", - "id": "tmp2", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "Температура", - "int": 15, - "round": 1 - }, - { - "name": "Cенсор влажности Sht20", - "type": "Reading", - "subtype": "Sht20h", - "id": "Hum2", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "Влажность", - "int": 15, - "round": 1 - }], - + "configItem": [ + { + "name": "Sht20 Cенсор температуры", + "type": "Reading", + "subtype": "Sht20t", + "id": "tmp2", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Температура", + "int": 15, + "round": 1 + }, + { + "name": "Sht20 Cенсор влажности", + "type": "Reading", + "subtype": "Sht20h", + "id": "Hum2", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "Влажность", + "int": 15, + "round": 1 + } + ], "about": { "authorName": "Ilya Belyakov", "authorContact": "https://t.me/Biveraxe", @@ -32,16 +32,17 @@ "moduleName": "Sht20", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Sht20t", "Sht20h"], + "subTypes": [ + "Sht20t", + "Sht20h" + ], "title": "Сенсор температуры и влажности с Sht20", "moduleDesc": "Позволяет получить значения температуры и влажности с Sht20.", "propInfo": { "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "robtillaart/SHT2x@^0.1.1" diff --git a/src/modules/sensors/Sht30/modinfo.json b/src/modules/sensors/Sht30/modinfo.json index cbc6e75b..1441553f 100644 --- a/src/modules/sensors/Sht30/modinfo.json +++ b/src/modules/sensors/Sht30/modinfo.json @@ -1,29 +1,29 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Cенсор температуры Sht30", - "type": "Reading", - "subtype": "Sht30t", - "id": "tmp30", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "SHT30 Температура", - "int": 15, - "round": 1 - }, - { - "name": "Cенсор влажности Sht30", - "type": "Reading", - "subtype": "Sht30h", - "id": "Hum30", - "widget": "anydataHum", - "page": "Сенсоры", - "descr": "SHT30 Влажность", - "int": 15, - "round": 1 - }], - + "configItem": [ + { + "name": "Sht30 Cенсор температуры", + "type": "Reading", + "subtype": "Sht30t", + "id": "tmp30", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "SHT30 Температура", + "int": 15, + "round": 1 + }, + { + "name": "Sht30 Cенсор влажности", + "type": "Reading", + "subtype": "Sht30h", + "id": "Hum30", + "widget": "anydataHum", + "page": "Сенсоры", + "descr": "SHT30 Влажность", + "int": 15, + "round": 1 + } + ], "about": { "authorName": "Serghei Crasnicov", "authorContact": "https://t.me/Serghei63", @@ -32,16 +32,17 @@ "moduleName": "Sht30", "moduleVersion": "1.0", "usedRam": 15, - "subTypes":["Sht30t", "Sht30h"], + "subTypes": [ + "Sht30t", + "Sht30h" + ], "title": "Сенсор температуры и влажности с Sht30", "moduleDesc": "Позволяет получить температуру и влажность с датчика Sht30.", "propInfo": { "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [ "WEMOS SHT3x@1.0.0" diff --git a/src/modules/sensors/Sonar/modinfo.json b/src/modules/sensors/Sonar/modinfo.json index cd4979d2..c2fb2cfc 100644 --- a/src/modules/sensors/Sonar/modinfo.json +++ b/src/modules/sensors/Sonar/modinfo.json @@ -1,21 +1,20 @@ -{ +{ "menuSection": "Сенсоры", - - "configItem": [{ - "name": "Сонар HC-SR04", - "num": 1, - "type": "Reading", - "subtype": "Sonar", - "id": "sonar", - "widget": "anydataTmp", - "page": "Сенсоры", - "descr": "Расстояние (см)", - - "pinTrig": 5, - "pinEcho": 4, - "int": 5 - }], - + "configItem": [ + { + "name": "HC-SR04 Ультразвуковой дальномер", + "num": 1, + "type": "Reading", + "subtype": "Sonar", + "id": "sonar", + "widget": "anydataTmp", + "page": "Сенсоры", + "descr": "Расстояние (см)", + "pinTrig": 5, + "pinEcho": 4, + "int": 5 + } + ], "about": { "authorName": "Ilya Belyakov", "authorContact": "https://t.me/Biveraxe", @@ -32,9 +31,7 @@ "int": "Количество секунд между опросами датчика." } }, - "defActive": true, - "devices": { "esp32_4mb": [], "esp8266_4mb": []