ESPUI-Мультиблок

Пользовательские блоки для коммкникации и связи GSM, GPRS, IR, Bluetooth и другие
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#1

Сообщение Naladchik » 05.06.2021{, 18:27}

Версия мультиблока на основе библиотеки ESPUI и блоков от User8.
Так как предыдущие версии мультиблока уже в середине ветки от Евгения решил создать свою.
Если происходит конфликт с блоками то пробуйте сначала в проект добавлять их и только потом ESPUI, ну или их выносите на первую плату а на последующих блоки ESPUI.
Важно!
1. Платы, на которых установлены блоки ESPUI, в обязательном порядке должны обработаться в первом цикле после запуска контроллера.
2. При создании на странице (1й программный цикл) таких блоков как Slider, InputText, InputNumber и т.п. на блоке отображается значение по умолчанию (из параметра) и оно же появляется на выходе блока. Значение, если оно уже появилось на входе, запишется в блок и, соответственно, передастся на его выход в следующем программном цикле. Для версии 1.6 не актуально.
3. Библиотека плохо реагирует на одновременный вывод информации сразу на несколько блоков.
4. Библиотека очень чувствительна к качеству WiFi сети (сигнал, скорость), имейте в виду, чуть что - картинка виснет.
5. Если на блоке Graph ничего не отображается - подайте импульс на вход Clear Graph для его очистки.
Да и вообще Graph глючный элемент, никак его разрабы не допилят. Лучше не использовать.
Если кто знает о неиспользованных в данном блоке возможностях библиотеки ESPUI - пишите. По возможности буду дорабатывать.
Предыдущие версииПоказать
Версия мультиблока ESPUI 1.4.
ESPUI_1.4.zip
(5.62 МБ) 186 скачиваний
СпойлерПоказать
Отличия от предыдущей версии:
1. Встроены детекторы изменения данных на входах блоков.
Обновление блока по фронту на входе Update сохранилось, каким образом обновлять данные - выбирается параметром.
По описаниям параметров все должно быть понятно.
2. Добавил автоматическую расстановку блоков по вкладкам.
Добавляются блоки в проект - оказываются на основной странице, как только добавился блок Tab все последующие блоки будут уже на этой вкладке до появления следующего блока Tab и т.д. Само собой если блок Tab будет первым последующие блоки будут на вкладке.
Возможность ручной расстановки так же сохранилась. Вариант расстановки выбирается параметром.
3. Переделал часть кода, целью было увеличение количества отображаемых блоков на странице, ранее и десятка иногда не набиралось.
Надо проверять получилось или нет.

Блок собран на подправленной библиотеке ESPUI 2.0.2 (заменен один файл, взят из ESPUI 2.0.1). Блоки Pad с такой заменой отображаются корректно.
Необходимые для работы мультиблока библиотеки уже встроены в него, ну и в архив на всякий случай положил, там же и тестовые примеры.
P.S.
Версия, конечно же, корявенькая, причина тут.
Обновление блока, версия мультиблока ESPUI 1.5.
ESPUI_1.5.zip
(6.21 МБ) 1125 скачиваний
Добавлена возможность скрывать элементы.
Работает только с модифицированной библиотекой ESPUI-2_0_2_mod.
Библиотека в архиве и в блоке.

Обновление блока ESPUI_1.5.
ESPUI_1.5+WiFiManager.zip
(2.42 МБ) 355 скачиваний
Интегрирован WiFiManager. Тестировалось как на ESP8266 так и на ESP32.
Для корректной работы отключить стандартные настройки WiFi в FLProg.
Библиотеки в архиве, из блока удалены по причине избыточного веса.
Настройки WiFiManager в своей папке параметров, для сброса настроек отдельный блок.

Когда модифицировал библиотеку неудачно переименовал файлы , из за этого FLProg ругается на отсутствующую библиотеку но все работает.
Когда выйдет новый релиз библиотеки ESPUI, в которой новые функции, добавленные мной, будут добавлены на постоянку (уже есть в мастер-версии), тогда верну все имена файлов обратно и ошибка уйдет.
Для ESP32 работа проверялась с ядром версии 1.0.6. С ядром версии 2.х.х совместимость, в данный момент, отсутствует!!!

Upd 23.07.2021 Исправлена ошибка в блоке ESPUI InputText (спасибо megahamster3) , архив перезалит.
Upd 03.10.2021. Исправлена ошибка в блоке Graph (спасибо DrMario), архивы перезалиты.
Обновление блока, версия мультиблока ESPUI 1.6.
Добавлено:
1. Блоки: Разделитель, Время (позволяет получить текущее время с подключенного устройства).
2. Возможность менять оформление блоков CSS стилями.
3. Отключение компонентов (не совсем понятна надобность но раз есть в библиотеке то и тут пусть будет).
4. Группировка элементов в одном блоке.
группировка, описаниеПоказать
1. Каждый элемент веб страницы, как и сама страница, имеют уникальные номера (ID, присваиваются по порядку инициализации блоков и их элементов, сама страница имеет ID=0) для организации возможности взаимодействия с ними (управление, обратная связь, смена оформления и т.д.).
2. Если элемент имеет возможность стать контейнером для группировки элементов то у него присутствует параметр, в котором его можно назначить инициатором группы. При назначении у него появляется выход, на котором его ID.
3. Если элемент имеет возможность стать членом группы то у него присутствует параметр, в котором его можно объявить членом группы. При этом у него появляется вход, на который нужно передать ID инициатора группы.
3.1 Следует учитывать, что по порядку размещения блоков (по порядку компиляции) ВСЕГДА! должен идти сначала инициатор группы только потом ее члены (для прямых связей данное условие выполнится само, а вот если ID передавать через переменную/клемму то за этим нужно следить).
3.2 При объявлении элемента членом группы у него исчезает параметр title... , т.к. у члена группы его нет (особенность библиотеки).
5. Вертикальная ориентация для слайдера и переключателя.
6. У блока "Ввод текста" появились режимы отображения "Дата", "Время", "Цвет", "Ввод пароля".
7. Для блоков "Переключатель", "Слайдер", "Ввод числа", "Ввод текста" при включенном режиме "обновления по изменению значения на входе" значение со входа передается на выход при инициализации блока (раньше сначала передавалось "Значение при инициализации").
8. Теперь нет надобности задавать максимальное количество вкладок, вычисляется автоматически.
9. ВСЕ! блоки должны располагаться на тех платах, для которых гарантируется их работа при первом программном цикле, иначе просто не выполнится инициализация блоков.

Ну и по классике, какие то косяки убраны, какие то добавлены.
Блок из открытого проекта сохранить в папку с блоками,
СпойлерПоказать
Правой кнопкой в проекте по любому блоку из состава мультиблока.
Если именно такого мультиблока в библиотеке нет, то появится пункт в меню "Добавить в библиотеку".
111.png
библиотеки из архива распаковать в папку с библиотеками (а вдруг кто то этого не знает).
ESPUI 1.6-Test_group.rar
(212.67 КБ) 438 скачиваний
libraries_06.02.23.zip
(2.03 МБ) 241 скачивание
_
Upd 28.09.22 Исправления выявленных ошибок/недочетов.
ESPUI_1.6.1___WiFiManager_(Code_-_Professional).zip
(267.99 КБ) 182 скачивания
Upd. 04.01.23 Исправлена ошибка в блоке Select (спасибо DrMario).
ESPUI_1.6.2___WiFiManager_(Code_-_Professional).zip
(345.27 КБ) 176 скачиваний

Upd 15.05.23 Исправлена ошибка в блоке InputText (спасибо RedSky).
ESPUI_1.6.3___WiFiManager_(Code_-_Professional).zip
(268.73 КБ) 110 скачиваний
Дополнительно в блоке InputNumber появился параметр Step, позволяющий задать шаг изменения числа при изменении его стрелками.

Upd 06.01.24 Исправлена ошибка в блоке InputText (спасибо selihov).
ESPUI_1.6.4___WiFiManager_(Code_-_Professional).zip
(269.28 КБ) 66 скачиваний
_
Прошу обратить внимание!
Использование в одном проекте блоков из мультиблоков разных версий НЕДОПУСТИМО!!!
Ошибки при компиляции проекта!
Последний раз редактировалось Naladchik 11.01.2024{, 10:12}, всего редактировалось 69 раз.
Win10-64. FLProg Portable.
Изображение

ecoins
Полковник
Сообщения: 2932
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ESPUI-Мультиблок

#101

Сообщение ecoins » 09.10.2021{, 22:05}

Naladchik писал(а):
09.10.2021{, 19:19}
Интегрировал WiFiManager в мультиблок ESPUI.
Выложен в первом сообщении. Тестируйте.
Добавил дополнительный элемент.
ESPUI_test.png
и возникли ошибки из-за дублирования переменных.
СпойлерПоказать
// WiFiManager
#define WEBSERVER_H
#include <ESP8266WebServer.h>
#include <WiFiManager.h>
#include <ESPUI-mod.h>
extern "C"
{
#include "user_interface.h"
}
bool Out_54007957_171895729;
bool Out_174758412_82719450;
//ESPUI
#include <ESPUI-mod.h>
bool rTrig_ESPUI_run = false;
byte i_webTabNumber=0;
byte webTabNumber [10] = {};
//ESPUI
bool rTrig_ESPUI_run = false;



byte i_webTabNumber=0;
byte webTabNumber [10] = {};
// Button "WiFiManager"
uint16_t ButtonUI82719450 ;
// Switcher "Переключатель"
uint16_t SwitcherUI171895729;
void setup()
Что нужно исправить?

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#102

Сообщение Naladchik » 09.10.2021{, 23:00}

ecoins писал(а):
09.10.2021{, 22:05}
...Что нужно исправить?
1. Дублирование переменных может быть в том случае, когда в одном проекте используются блоки из разных мультиблоков. В данном случае это неприемлемо, так как имеются общие ветки кода, они и дублируются. 1 проект - 1 мультиблок.
2. Нужен проект.

ecoins, главное отличие Вашего мультиблока под Ваши библиотеки, это то, что у Вас это набор самостоятельных блоков, практически не имеющих общих веток кода друг с другом (инклюд, в данном случае не в счет, его задвоенность ни на что не влияет и, похоже, редактор умеет убирать такие задвоенности).
В случае моего мультиблока общих веток много и при добавлении в проект блоков из мультиблоков разных версий идет задвоение, приводящее к ошибкам компиляции.
Win10-64. FLProg Portable.
Изображение

ecoins
Полковник
Сообщения: 2932
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ESPUI-Мультиблок

#103

Сообщение ecoins » 10.10.2021{, 05:41}

Naladchik писал(а):
09.10.2021{, 23:00}
2. Нужен проект.
ESPUI+WiFiManager_test1.rar
(1.5 МБ) 48 скачиваний

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#104

Сообщение Naladchik » 10.10.2021{, 06:39}

ecoins,
Ну о чем я и написал.
СпойлерПоказать
1.png
2 разных версии в одном проекте.
Прямо в проекте нажмите правой кнопкой по любому блоку, в всплывающем меню "Добавить в библиотеку",
СпойлерПоказать
2.png
2.png (8.73 КБ) 1162 просмотра
в библиотеке появится новый мультиблок.
В проект добавляйте блоки только из этого мультиблока.

Upd. Добавил в архив сам мультиблок, архив перезалил.
Win10-64. FLProg Portable.
Изображение

ecoins
Полковник
Сообщения: 2932
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ESPUI-Мультиблок

#105

Сообщение ecoins » 10.10.2021{, 07:57}

Naladchik писал(а):
10.10.2021{, 06:39}
Upd. Добавил в архив сам мультиблок, архив перезалил.
Спасибо.
Скомпилировал и загрузил в ESP8266.
---------------------
Раньше не работал с Wi-Fi manager и ESPUI.
Сейчас вникаю.
После входа в меню WIFImanager (на телефоне) устанавливаю SSID =espip password=12345678
Появляется заставка Saved с коротенькой зеленой полоской слева. И не выходит их этого меню.
--------------------
Вопрос: Как создать для ESP8266 AP (со своим именем), через который входить в ESPI?

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#106

Сообщение Naladchik » 10.10.2021{, 08:25}

ecoins писал(а):
10.10.2021{, 07:57}
После входа в меню WIFImanager (на телефоне) устанавливаю SSID =espip password=12345678
Появляется заставка Saved с коротенькой зеленой полоской слева. И не выходит их этого меню.
После нажатия SAVE?
А далее все, ESP перезагружается и данная страница не активна. После этого уже подключаетесь телефоном к той точке доступа, к которой подключили ESPUI через WiFiManager, и заходите на страницу ESP. IP адрес страницы придется искать в клиентах точки доступа, в ее меню.
ecoins писал(а):
10.10.2021{, 07:57}
Вопрос: Как создать для ESP8266 AP (со своим именем), через который входить в ESPI?
Воспользоваться стандартными настройками FLProg и не использовать WIFImanager так как он нужен для подключения к уже существующим AP.
Последний раз редактировалось Naladchik 10.10.2021{, 10:53}, всего редактировалось 1 раз.
Win10-64. FLProg Portable.
Изображение

aidar_i
Полковник
Сообщения: 3124
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESPUI-Мультиблок

#107

Сообщение aidar_i » 10.10.2021{, 10:10}

ecoins писал(а):
09.10.2021{, 22:05}
Что нужно исправить?
Naladchik писал(а):
09.10.2021{, 23:00}
. Дублирование переменных может быть в том случае, когда в одном проекте используются блоки из разных мультиблоков
Да, у меня тоже так было, забыл удалить блоки прежней версии с проекта.

Iqubik
Сержант
Сообщения: 147
Зарегистрирован: 20.01.2020{, 06:10}
Репутация: 20
Откуда: Ставрополь
Имя: Николай

ESPUI-Мультиблок

#108

Сообщение Iqubik » 06.11.2021{, 18:01}

Naladchik писал(а):
09.10.2021{, 19:19}
Интегрировал WiFiManager в мультиблок ESPUI.
А есть ли какая то хардварная кнопка для сброса настроек? Собираю проект и при всех занятых пинах не поднимается AP.

dim770
Рядовой
Сообщения: 19
Зарегистрирован: 04.11.2016{, 11:24}
Репутация: 0
Откуда: Калининград

ESPUI-Мультиблок

#109

Сообщение dim770 » 15.12.2021{, 20:56}

Naladchik, Спасибо за вашу работу, очень понравился мультиблок. Можно ли в версию ESPUI_1.5 в блок InputText добавить вход для ввода текста при инициализации?

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#110

Сообщение Naladchik » 15.12.2021{, 21:19}

dim770 писал(а):
15.12.2021{, 20:56}
... вход для ввода текста при инициализации?
Смысл? Для чего это может быть нужно?
Здесь , в принципе, ответ и на Ваш вопрос.
Win10-64. FLProg Portable.
Изображение

dim770
Рядовой
Сообщения: 19
Зарегистрирован: 04.11.2016{, 11:24}
Репутация: 0
Откуда: Калининград

ESPUI-Мультиблок

#111

Сообщение dim770 » 17.12.2021{, 12:54}

Naladchik писал(а):
15.12.2021{, 21:19}
Смысл? Для чего это может быть нужно?
Чтобы при запуске записывались данные из EEPROM. В версии 1_2 от User8 есть такой вход.
СпойлерПоказать
inputText.png
Изображение
inputText.png (3.78 КБ) 861 просмотр

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#112

Сообщение Naladchik » 17.12.2021{, 13:22}

dim770 писал(а):
17.12.2021{, 12:54}
Чтобы при запуске записывались данные из EEPROM.
Ок. Аргумент принят. Есть вопрос, эти данные успеют появиться в течении первого цикла программы? Инициализация блока происходит в конце именно первого цикла именно в первом цикле, потом уже поздно.
Последний раз редактировалось Naladchik 18.12.2021{, 11:22}, всего редактировалось 1 раз.
Win10-64. FLProg Portable.
Изображение

dim770
Рядовой
Сообщения: 19
Зарегистрирован: 04.11.2016{, 11:24}
Репутация: 0
Откуда: Калининград

ESPUI-Мультиблок

#113

Сообщение dim770 » 17.12.2021{, 16:17}

Naladchik писал(а):
17.12.2021{, 13:22}
эти данные успеют появиться в течении первого цикла программы?
Да. С блоком от User8 все работает корректно.

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#114

Сообщение Naladchik » 18.12.2021{, 11:35}

dim770 писал(а):
15.12.2021{, 20:56}
...вход для ввода текста при инициализации?
Есть один момент, если речь идет только об одном блоке и об одном, для него, входе, то, конкретно под Вашу задачу, для Вас, я могу подправить блок. Если же идет речь о более глобальных переделках (например: доп входа для каждого блока, организация выбора кто из нынешних параметров будет входом а кто нет и т.д.), то это уже маловероятно, так как связано с множественными правками, целесообразность которых, для меня, все так же под вопросом.
Дальнейшее обсуждение этого вопроса предлагаю перевести в личку.
Win10-64. FLProg Portable.
Изображение

dim770
Рядовой
Сообщения: 19
Зарегистрирован: 04.11.2016{, 11:24}
Репутация: 0
Откуда: Калининград

ESPUI-Мультиблок

#115

Сообщение dim770 » 18.12.2021{, 20:55}

Naladchik писал(а):
18.12.2021{, 11:35}
если речь идет только об одном блоке и об одном, для него, входе, то, конкретно под Вашу задачу, для Вас, я могу подправить блок.
Огромное спасибо за уделенное внимание. Для себя решил этот вопрос в основном коде. Просто Высказал свое мнение о том, что мне кажется было бы удобно.

Аватара пользователя
Imran
Сержант
Сообщения: 229
Зарегистрирован: 08.11.2017{, 20:53}
Репутация: 9
Имя: Имран

ESPUI-Мультиблок

#116

Сообщение Imran » 23.12.2021{, 01:06}

Вроде искал но увы не нашел. Как можно поменять ип адрес ?

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#117

Сообщение Naladchik » 23.12.2021{, 12:25}

Naladchik писал(а):
05.06.2021{, 18:27}
ип адрес
А причём здесь ESPUI?
Win10-64. FLProg Portable.
Изображение

Аватара пользователя
Imran
Сержант
Сообщения: 229
Зарегистрирован: 08.11.2017{, 20:53}
Репутация: 9
Имя: Имран

ESPUI-Мультиблок

#118

Сообщение Imran » 23.12.2021{, 15:38}

ESPUI_1.5+WiFiManager
Naladchik писал(а):
23.12.2021{, 12:25}
А причём здесь ESPUI?

Naladchik
Капитан
Сообщения: 823
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 153
Откуда: Новосибирск
Имя: Павел

ESPUI-Мультиблок

#119

Сообщение Naladchik » 23.12.2021{, 16:48}

Imran писал(а):
23.12.2021{, 01:06}
... ип адрес ... ESPUI_1.5+WiFiManager ...
Как поменять - не знаю. С работой WiFiManager не разбирался.
Скорее всего никак, т.к. его выдает точка доступа, к которой подключается ESP через WiFiManager.
Win10-64. FLProg Portable.
Изображение

tema
Сержант
Сообщения: 187
Зарегистрирован: 21.09.2020{, 12:31}
Репутация: 7
Имя: tema

ESPUI-Мультиблок

#120

Сообщение tema » 23.12.2021{, 18:09}

Что делать? Как добавить?
Вложения
Безымянный.jpg

Ответить

Вернуться в «Коммуникация и связь»