diff --git a/PrepareProject.py b/PrepareProject.py
index 6f592233..601d50ad 100644
--- a/PrepareProject.py
+++ b/PrepareProject.py
@@ -98,8 +98,7 @@ else:
# устанавливаем параметры сборки
profJson['projectProp'] = {
'platformio': {
- 'default_envs': 'esp8266_4mb',
- 'data_dir': 'data_svelte'
+ 'default_envs': 'esp8266_4mb'
}
}
# загружаем список модулей для сборки
@@ -107,23 +106,35 @@ else:
# сохраняем новый профиль
with open(profile, "w", encoding='utf-8') as write_file:
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)
for key, value in profJson['iotmSettings'].items():
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)
-# определяем какое устройство используется в профиле
-deviceName = profJson['projectProp']['platformio']['default_envs']
+
# собираем меню прошивки из модулей
# параллельно формируем список имен активных модулей
-# параллельно собираем необходимые активным модулям библиотеки для включения в компиляцию для текущего типа устройства (esp8266_4m, esp32_4mb)
+# параллельно собираем необходимые активным модулям библиотеки для включения в компиляцию для текущего типа устройства (esp8266_4m, esp32_4mb, esp8266_1m, esp8266_1m_ota)
activeModulesName = [] # список имен активных модулей
allLibs = "" # подборка всех библиотек необходимых модулям для дальнейшей записи в конфигурацию platformio
itemsCount = 1;
@@ -145,7 +156,7 @@ for section, modules in profJson['modules'].items():
configItemsJson['name'] = str(itemsCount) + ". " + configItemsJson['name']
itemsCount = itemsCount + 1
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)
diff --git a/data_svelte/settings.json b/data_svelte/settings.json
index bfeb5544..f83115c2 100644
--- a/data_svelte/settings.json
+++ b/data_svelte/settings.json
@@ -18,5 +18,6 @@
"mqttin": 0,
"pinSCL": 0,
"pinSDA": 0,
- "i2cFreq": 100000
+ "i2cFreq": 100000,
+ "settings_": ""
}
\ No newline at end of file
diff --git a/data_svelte_lite/config.json b/data_svelte_lite/config.json
new file mode 100644
index 00000000..0637a088
--- /dev/null
+++ b/data_svelte_lite/config.json
@@ -0,0 +1 @@
+[]
\ No newline at end of file
diff --git a/data_svelte_lite/dev_conf.txt b/data_svelte_lite/dev_conf.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/data_svelte_lite/edit.htm.gz b/data_svelte_lite/edit.htm.gz
new file mode 100644
index 00000000..d41d10c1
Binary files /dev/null and b/data_svelte_lite/edit.htm.gz differ
diff --git a/data_svelte_lite/index.html b/data_svelte_lite/index.html
new file mode 100644
index 00000000..392246f4
--- /dev/null
+++ b/data_svelte_lite/index.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+ IoT Manager 4.4.1
+
+
+
+
+
+
+
+
+
diff --git a/data_svelte_lite/items.json b/data_svelte_lite/items.json
new file mode 100644
index 00000000..88457c56
--- /dev/null
+++ b/data_svelte_lite/items.json
@@ -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": "Экраны"
+ }
+]
\ No newline at end of file
diff --git a/data_svelte_lite/scenario.txt b/data_svelte_lite/scenario.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/data_svelte_lite/settings.json b/data_svelte_lite/settings.json
new file mode 100644
index 00000000..f83115c2
--- /dev/null
+++ b/data_svelte_lite/settings.json
@@ -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_": ""
+}
\ No newline at end of file
diff --git a/data_svelte_lite/widgets.json b/data_svelte_lite/widgets.json
new file mode 100644
index 00000000..cab0dbe2
--- /dev/null
+++ b/data_svelte_lite/widgets.json
@@ -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": "Без виджета"
+ }
+]
\ No newline at end of file
diff --git a/myProfile.json b/myProfile.json
index 18e1f5bc..2ed11eec 100644
--- a/myProfile.json
+++ b/myProfile.json
@@ -24,8 +24,7 @@
},
"projectProp": {
"platformio": {
- "default_envs": "esp8266_4mb",
- "data_dir": "data_svelte"
+ "default_envs": "esp8266_4mb"
}
},
"modules": {
diff --git a/platformio.ini b/platformio.ini
index 971984a1..476daacb 100644
--- a/platformio.ini
+++ b/platformio.ini
@@ -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>
+ +
+ +
+ +
+ ${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>
+ +
+ +
+ +
+ ${env:esp8266_1mb_fromitems.build_src_filter}
+
[env:esp8266_4mb]
lib_deps =
${common_env_data.lib_deps_external}
@@ -50,6 +92,18 @@ lib_deps_external =
bblanchon/ArduinoJson @6.18.0
knolleary/PubSubClient
+[env:esp8266_1mb_ota_fromitems]
+lib_deps =
+ rc-switch @ ^2.6.4
+build_src_filter =
+ +
+
+[env:esp8266_1mb_fromitems]
+lib_deps =
+ rc-switch @ ^2.6.4
+build_src_filter =
+ +
+
[env:esp8266_4mb_fromitems]
lib_deps =
https://github.com/enjoyneering/AHTxx.git