Добавляем профили плат esp01 с и без OTA

This commit is contained in:
2022-10-11 21:57:10 +03:00
parent eb1cf42807
commit 3af9b457de
12 changed files with 361 additions and 12 deletions

View File

@@ -98,8 +98,7 @@ else:
# устанавливаем параметры сборки # устанавливаем параметры сборки
profJson['projectProp'] = { profJson['projectProp'] = {
'platformio': { 'platformio': {
'default_envs': 'esp8266_4mb', 'default_envs': 'esp8266_4mb'
'data_dir': 'data_svelte'
} }
} }
# загружаем список модулей для сборки # загружаем список модулей для сборки
@@ -107,23 +106,35 @@ else:
# сохраняем новый профиль # сохраняем новый профиль
with open(profile, "w", encoding='utf-8') as write_file: with open(profile, "w", encoding='utf-8') as write_file:
json.dump(profJson, write_file, ensure_ascii=False, indent=4, sort_keys=False) json.dump(profJson, write_file, ensure_ascii=False, indent=4, sort_keys=False)
# определяем какое устройство используется в профиле
deviceName = profJson['projectProp']['platformio']['default_envs']
# назначаем папку с файлами прошивки в зависимости от устройства и запоминаем в профиле
dataDir = 'data_svelte'
if deviceName == 'esp8266_1mb_ota':
dataDir = 'data_svelte_lite'
profJson['projectProp'] = {
'platformio': {
'data_dir': dataDir
}
}
# генерируем файлы проекта на основе подготовленного профиля # генерируем файлы проекта на основе подготовленного профиля
# заполняем конфигурационный файл прошивки параметрами из профиля # заполняем конфигурационный файл прошивки параметрами из профиля
with open("data_svelte/settings.json", "r", encoding='utf-8') as read_file: with open(dataDir + "/settings.json", "r", encoding='utf-8') as read_file:
iotmJson = json.load(read_file) iotmJson = json.load(read_file)
for key, value in profJson['iotmSettings'].items(): for key, value in profJson['iotmSettings'].items():
iotmJson[key] = value iotmJson[key] = value
with open("data_svelte/settings.json", "w", encoding='utf-8') as write_file: with open(dataDir + "/settings.json", "w", encoding='utf-8') as write_file:
json.dump(iotmJson, write_file, ensure_ascii=False, indent=4, sort_keys=False) json.dump(iotmJson, write_file, ensure_ascii=False, indent=4, sort_keys=False)
# определяем какое устройство используется в профиле
deviceName = profJson['projectProp']['platformio']['default_envs']
# собираем меню прошивки из модулей # собираем меню прошивки из модулей
# параллельно формируем список имен активных модулей # параллельно формируем список имен активных модулей
# параллельно собираем необходимые активным модулям библиотеки для включения в компиляцию для текущего типа устройства (esp8266_4m, esp32_4mb) # параллельно собираем необходимые активным модулям библиотеки для включения в компиляцию для текущего типа устройства (esp8266_4m, esp32_4mb, esp8266_1m, esp8266_1m_ota)
activeModulesName = [] # список имен активных модулей activeModulesName = [] # список имен активных модулей
allLibs = "" # подборка всех библиотек необходимых модулям для дальнейшей записи в конфигурацию platformio allLibs = "" # подборка всех библиотек необходимых модулям для дальнейшей записи в конфигурацию platformio
itemsCount = 1; itemsCount = 1;
@@ -145,7 +156,7 @@ for section, modules in profJson['modules'].items():
configItemsJson['name'] = str(itemsCount) + ". " + configItemsJson['name'] configItemsJson['name'] = str(itemsCount) + ". " + configItemsJson['name']
itemsCount = itemsCount + 1 itemsCount = itemsCount + 1
itemsJson.append(configItemsJson) itemsJson.append(configItemsJson)
with open("data_svelte/items.json", "w", encoding='utf-8') as write_file: with open(dataDir + "/items.json", "w", encoding='utf-8') as write_file:
json.dump(itemsJson, write_file, ensure_ascii=False, indent=4, sort_keys=False) json.dump(itemsJson, write_file, ensure_ascii=False, indent=4, sort_keys=False)

View File

@@ -18,5 +18,6 @@
"mqttin": 0, "mqttin": 0,
"pinSCL": 0, "pinSCL": 0,
"pinSDA": 0, "pinSDA": 0,
"i2cFreq": 100000 "i2cFreq": 100000,
"settings_": ""
} }

View File

@@ -0,0 +1 @@
[]

View File

Binary file not shown.

View File

@@ -0,0 +1,16 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title>IoT Manager 4.4.1</title>
<link rel="icon" type="image/png" href="https://iotmanager.org/favicon.ico" />
<link rel="stylesheet" href="https://iotmanager.org/build/bundle.css?441" />
<script defer src="https://iotmanager.org/build/bundle.js?441"></script>
</head>
<body></body>
</html>

View File

@@ -0,0 +1,28 @@
[
{
"name": "Выберите элемент",
"num": 0
},
{
"header": "Виртуальные элементы"
},
{
"header": "Сенсоры"
},
{
"name": "1. Сканер кнопок 433 MHz",
"num": 1,
"type": "Reading",
"subtype": "RCswitch",
"id": "rsw",
"int": 500,
"pinRx": 12,
"pinTx": 12
},
{
"header": "Исполнительные устройства"
},
{
"header": "Экраны"
}
]

View File

View File

@@ -0,0 +1,23 @@
{
"name": "IoTmanagerVer4",
"apssid": "IoTmanager",
"appass": "",
"routerssid": "rise",
"routerpass": "hostel3333",
"timezone": 2,
"ntp": "pool.ntp.org",
"weblogin": "admin",
"webpass": "admin",
"mqttServer": "m2.wqtt.ru",
"mqttPort": 8021,
"mqttPrefix": "/risenew",
"mqttUser": "rise",
"mqttPass": "3hostel3",
"serverip": "http://iotmanager.org",
"log": 0,
"mqttin": 0,
"pinSCL": 0,
"pinSDA": 0,
"i2cFreq": 100000,
"settings_": ""
}

View File

@@ -0,0 +1,216 @@
[
{
"name": "anydataRed",
"label": "Сообщение1",
"widget": "anydata",
"icon": "body",
"color": "red",
"descrColor": "red"
},
{
"name": "anydataDgr",
"label": "Сообщение2",
"widget": "anydata",
"after": "",
"color": "red",
"icon": "walk"
},
{
"name": "anydataDef",
"label": "Текст",
"widget": "anydata",
"after": "",
"icon": ""
},
{
"name": "anydataVlt",
"label": "Вольты",
"widget": "anydata",
"after": "V",
"icon": "speedometer"
},
{
"name": "anydataAmp",
"label": "Амперы",
"widget": "anydata",
"after": "A",
"icon": "speedometer"
},
{
"name": "anydataWt",
"label": "Ватты",
"widget": "anydata",
"after": "Wt",
"icon": "speedometer"
},
{
"name": "anydataWth",
"label": "Энергия",
"widget": "anydata",
"after": "kWt/Hr",
"icon": "speedometer"
},
{
"name": "anydataHtz",
"label": "Герцы",
"widget": "anydata",
"after": "Hz",
"icon": "speedometer"
},
{
"name": "anydataTmp",
"label": "Температура",
"widget": "anydata",
"after": "°С",
"icon": "thermometer"
},
{
"name": "anydataMm",
"label": "Давление",
"widget": "anydata",
"after": "mm",
"icon": "speedometer"
},
{
"name": "anydataHum",
"label": "Влажность",
"widget": "anydata",
"after": "%",
"icon": "water",
"color": "#88AADF"
},
{
"name": "anydataTm",
"label": "Время",
"widget": "anydata",
"after": "",
"icon": "speedometer"
},
{
"name": "button",
"label": "Кнопка",
"widget": "btn",
"size": "large",
"color": "green",
"send": "test"
},
{
"name": "toggle",
"label": "Переключатель",
"widget": "toggle",
"icon": "",
"iconOff": ""
},
{
"name": "chart1",
"label": "График без точек",
"widget": "chart",
"dateFormat": "HH:mm",
"maxCount": 86400,
"pointRadius": 0
},
{
"name": "chart2",
"label": "График с точками",
"widget": "chart",
"maxCount": 86400,
"dateFormat": "HH:mm"
},
{
"name": "chart3",
"label": "График Дневной",
"widget": "chart",
"dateFormat": "DD.MM.YYYY",
"maxCount": 86400,
"type": "bar"
},
{
"name": "fillgauge",
"label": "Бочка",
"widget": "fillgauge",
"circleColor": "#00FFFF",
"textColor": "#FFFFFF",
"waveTextColor": "#000000",
"waveColor": "#00FFFF"
},
{
"name": "inputDate",
"label": "Ввод даты",
"widget": "input",
"size": "small",
"color": "orange",
"type": "date"
},
{
"name": "inputDgt",
"label": "Ввод числа",
"widget": "input",
"color": "blue",
"type": "number"
},
{
"name": "inputTxt",
"label": "Ввод текста",
"widget": "input",
"size": "small",
"color": "orange",
"type": "text"
},
{
"name": "inputTm",
"label": "Ввод времени",
"widget": "input",
"color": "blue",
"type": "time"
},
{
"name": "progressLine",
"label": "Статус линия",
"widget": "progress-line",
"icon": "sunny",
"max": "100",
"stroke": "10"
},
{
"name": "progressRound",
"label": "Статус круг",
"widget": "progress-round",
"max": "100",
"stroke": "20",
"color": "#45ccce",
"background": "#777",
"semicircle": "1"
},
{
"name": "range",
"label": "Ползунок",
"widget": "range",
"descrColor": "red",
"after": "%",
"k": 0.0977,
"min": 0,
"max": 100,
"debounce": 500
},
{
"name": "select",
"label": "Выпадающий",
"widget": "select",
"options": [
"Выключен",
"Включен"
],
"status": 0
},
{
"name": "anydataPpm",
"label": "PPM",
"widget": "anydata",
"after": "ppm",
"icon": "speedometer"
},
{
"name": "nil",
"label": "Без виджета"
}
]

View File

@@ -24,8 +24,7 @@
}, },
"projectProp": { "projectProp": {
"platformio": { "platformio": {
"default_envs": "esp8266_4mb", "default_envs": "esp8266_4mb"
"data_dir": "data_svelte"
} }
}, },
"modules": { "modules": {

View File

@@ -1,3 +1,45 @@
[env:esp8266_1mb_ota]
lib_deps =
${common_env_data.lib_deps_external}
${env:esp8266_1mb_ota_fromitems.lib_deps}
ESPAsyncUDP
build_flags = -Desp8266_4mb="esp8266_4mb"
framework = arduino
board = nodemcuv2
board_build.ldscript = eagle.flash.1m64.ld
platform = espressif8266 @4.0.1
monitor_filters = esp8266_exception_decoder
upload_speed = 921600
monitor_speed = 115200
board_build.filesystem = littlefs
build_src_filter =
+<*.cpp>
+<classes/*.cpp>
+<utils/*.cpp>
+<modules/*.cpp>
${env:esp8266_1mb_ota_fromitems.build_src_filter}
[env:esp8266_1mb]
lib_deps =
${common_env_data.lib_deps_external}
${env:esp8266_1mb_fromitems.lib_deps}
ESPAsyncUDP
build_flags = -Desp8266_4mb="esp8266_4mb"
framework = arduino
board = nodemcuv2
board_build.ldscript = eagle.flash.1m256.ld
platform = espressif8266 @4.0.1
monitor_filters = esp8266_exception_decoder
upload_speed = 921600
monitor_speed = 115200
board_build.filesystem = littlefs
build_src_filter =
+<*.cpp>
+<classes/*.cpp>
+<utils/*.cpp>
+<modules/*.cpp>
${env:esp8266_1mb_fromitems.build_src_filter}
[env:esp8266_4mb] [env:esp8266_4mb]
lib_deps = lib_deps =
${common_env_data.lib_deps_external} ${common_env_data.lib_deps_external}
@@ -50,6 +92,18 @@ lib_deps_external =
bblanchon/ArduinoJson @6.18.0 bblanchon/ArduinoJson @6.18.0
knolleary/PubSubClient knolleary/PubSubClient
[env:esp8266_1mb_ota_fromitems]
lib_deps =
rc-switch @ ^2.6.4
build_src_filter =
+<modules/sensors/RCswitch>
[env:esp8266_1mb_fromitems]
lib_deps =
rc-switch @ ^2.6.4
build_src_filter =
+<modules/sensors/RCswitch>
[env:esp8266_4mb_fromitems] [env:esp8266_4mb_fromitems]
lib_deps = lib_deps =
https://github.com/enjoyneering/AHTxx.git https://github.com/enjoyneering/AHTxx.git