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

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

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 МБ) 239 скачиваний
_
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.
Изображение

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

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

#181

Сообщение Naladchik » 05.05.2022{, 10:58}

belyx писал(а):
05.05.2022{, 08:43}
... Получается - это особенность ваших блоков при работе с EEPROM.
Не совсем так, EEPROM здесь совершенно не при чем.
Причина в том, что при создании блока на странице учитывается значение по умолчанию (из параметра) и оно же появляется на выходе блока.
А значение, которое появилось на входе, запишется в блок и, соответственно, передастся на его выход, в следующем программном цикле.
Вариант, как это обойти, я уже нашел, в следующей версии мультиблока будет исправлено.
Вот только когда это будет - пока не понятно. Жду выхода официального релиза библиотеки ESPUI.
Последний раз редактировалось Naladchik 17.11.2022{, 12:13}, всего редактировалось 1 раз.
Win10-64. FLProg Portable.
Изображение

Аватара пользователя
belyx
Сержант
Сообщения: 247
Зарегистрирован: 24.07.2016{, 20:38}
Репутация: 20
Откуда: Витебск Беларусь

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

#182

Сообщение belyx » 05.05.2022{, 17:01}

Naladchik писал(а):
05.05.2022{, 10:58}
Причина в том, что при создании блока на странице учитывается значение по умолчанию (из параметра) и оно же появляется на выходе блока.
А значение, которое появилось на входе, запишется в блок и, соответственно, передастся на его выход, в следующем программном цикле.
а вот это пояснение нужно добавить в описание блока или дополнительно в п.1 в шапку (пока не выйдет следующая версия) :victory:

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

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

#183

Сообщение tema » 21.05.2022{, 21:27}

почему на некоторых смартфонах подключается и работает а на некоторых подключается но вебинтерфейс не догружается, либо
подключается на секунду и отключается? Где копать?

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

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

#184

Сообщение Naladchik » 22.05.2022{, 13:15}

tema писал(а):
21.05.2022{, 21:27}
Где копать?
Копать, я думаю, в какой то программе, для какого то контроллера, не исключено, что в какой то библиотеке есть какой то косяк.
Win10-64. FLProg Portable.
Изображение

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

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

#185

Сообщение Naladchik » 07.06.2022{, 18:14}

Обновил мультиблок до версии 1.6. Информация в шапке темы.
Win10-64. FLProg Portable.
Изображение

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

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

#186

Сообщение tema » 09.06.2022{, 09:55}

Naladchik писал(а):
05.06.2021{, 18:27}
Блок из открытого проекта сохранить в папку с блоками, библиотеки из архива распаковать в папку с библиотеками (а вдруг кто то этого не знает).
по подробней можно как сохранить блоки.

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

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

#187

Сообщение Naladchik » 09.06.2022{, 13:12}

tema писал(а):
09.06.2022{, 09:55}
по подробней можно как сохранить блоки.
см. шапку темы.
Win10-64. FLProg Portable.
Изображение

dimasus82
Рядовой
Сообщения: 2
Зарегистрирован: 19.08.2022{, 05:13}
Репутация: 0
Имя: Дмитрий

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

#188

Сообщение dimasus82 » 16.10.2022{, 07:21}

Добрый день! Проект не компилируется, выдаёт ошибку. Подскажите что я делаю не так?
Вложения
Безымянный.jpg

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

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

#189

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

dimasus82 писал(а):
16.10.2022{, 07:21}
Подскажите что я делаю не так?
viewtopic.php?f=246&t=7923#p113091
читать все, особое внимание п.4 !
Win10-64. FLProg Portable.
Изображение

dimasus82
Рядовой
Сообщения: 2
Зарегистрирован: 19.08.2022{, 05:13}
Репутация: 0
Имя: Дмитрий

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

#190

Сообщение dimasus82 » 16.10.2022{, 09:44}

ESPUI 1.6-Test_group.rar
(228.65 КБ) 35 скачиваний
Naladchik, Извиняюсь не указал что проект тест из шапки, ничего не менял в нём

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

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

#191

Сообщение tema » 16.10.2022{, 11:57}

А как можно используя ваш интерфейс обновляться по воздуху...

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

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

#192

Сообщение Naladchik » 17.10.2022{, 05:56}

tema писал(а):
16.10.2022{, 11:57}
...обновляться по воздуху...
Я использую штатное (встроенное в FLProg) обновление, проблем не было.
Остальные варианты не тестировал, не было необходимости.

Отправлено спустя 14 минут 36 секунд:
dimasus82 писал(а):
16.10.2022{, 07:21}
Проект не компилируется, выдаёт ошибку
У меня компилируется, что, в принципе, и логично, иначе зачем бы я его выкладывал.
СпойлерПоказать
1.png
А вот в чем у Вас проблема - надо искать.
1. Требуемые библиотеки установлены? В полном объеме? Все необходимые библиотеки выложены в шапке темы. Есть подозрение, что у Вас или версия библиотеки ESPUI старая или одновременно присутствуют разные версии данной библиотеки.
2. В IDE версия ядра ESP какая?
3. Другие проекты под ESP компилируются? Проблемы с самой IDE отсутствуют?
Далее.
4. Не надо прикладывать то, что где то скачали. Загрузили проект в FLProg, не пошел, вот именно его сохранили, заархивировали, выслали.
5. Не надо прикладывать скрины, на которых очень мало информации!!! Нужно скопировать (Ctrl A , Ctrl С) ВСЮ! информацию с ошибками и т.д. , которую выводит IDE внизу, в блокнот (Ctrl V) и вложить данный файл в архив с проектом.
В первую очередь интересует п.5 !!!
Win10-64. FLProg Portable.
Изображение

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

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

#193

Сообщение tema » 17.10.2022{, 14:26}

Naladchik писал(а):
17.10.2022{, 06:10}
Я использую штатное (встроенное в FLProg) обновление, проблем не было.
Остальные варианты не тестировал, не было необходимости.
А как настроить штатное? если можно пример.

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

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

#194

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

tema писал(а):
17.10.2022{, 14:26}
А как настроить штатное?
такПоказать
1.png
первая прогрузка по кабелю, далее по воздуху
Win10-64. FLProg Portable.
Изображение

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

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

#195

Сообщение Naladchik » 17.11.2022{, 05:32}

av писал(а):
16.11.2022{, 15:39}
... Подскажите может вот в этой строке кода .... что то нужно подправить...
В этой строке править нечего, т.к. в ней только объявляется сам блок и на какой из вкладок он будет расположен.
Если и править то только функцию блока

Код: Выделить всё

void time_Callback<INS.UUID>(Control *sender, int type) {
if (type == TM_VALUE)  <Time> = (sender->value).substring(0, 19);
}
При этом надо учитывать, что результатом является строка, т.е. ее надо будет сначала разбить на элементы (часы/минуты/секунды и т.д.), потом эти элементы преобразовать из строк в числа ну и затем уже вводить коррекцию.
Короче. На текущий момент переделывать блок я точно не буду. Нецелесообразно. Такие разовые задачи логичнее решать в самом проекте.
av писал(а):
16.11.2022{, 15:39}
Есть ли вероятность, что время будет вести счет от генератора G_SM настроенного на секундную генерацию на первой плате тестового проекта.
Данный блок - это не часы!, он только получает время с подключенного устройства и выдает его на свой выход. Все, никакого дальнейшего счета нет.
Как Вы преобразуете дальше данную информацию и что с ней будете делать - все в Ваших руках.
Win10-64. FLProg Portable.
Изображение

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

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

#196

Сообщение Naladchik » 17.11.2022{, 09:18}

av писал(а):
17.11.2022{, 07:50}
... Вот только не понятно зачем блок Time в составе мультиблока нужен ? ...
Потому что данный функционал есть в библиотеке.
av писал(а):
17.11.2022{, 07:50}
... а "врет" аж на несколько часов...
Ну это уже вопрос не к мультиблоку а к авторам самой библиотеки.
Мультиблок это только обертка библиотеки для возможности ее использования в FLProg.

Отправлено спустя 12 минут 9 секунд:
av писал(а):
17.11.2022{, 07:50}
... Описание в блоках частичное или отсутствует, параметры описаны сухо и не информативно...
Напишите, лучше в личку, в каких блоках и по каким параметрам возникли вопросы, какие моменты вызвали непонимание.
До этого особо вопросов как то и не было, считал что все интуитивно понятно.
av писал(а):
17.11.2022{, 07:50}
Надеюсь критика не будет воспринята как нападки с моей стороны
Не будет, но только при наличии конкретики, такой то блок, такой то параметр, такие то вопросы/недочеты.
Пишите.
Если разработчики библиотеки в нее добавят что то новое и я начну новую итерацию по допиливанию мультиблока то, само собой, постараюсь учесть и Ваши замечания.

Отправлено спустя 10 минут 44 секунды:
av писал(а):
17.11.2022{, 07:50}
Если бы не тестовый проект, то не опытному пользователю разобраться будет крайне затруднительно.
Так именно для этого он и прилагается. В нем я и пытаюсь показать возможные варианты настройки блоков и их использования.
Win10-64. FLProg Portable.
Изображение

Karlson
Рядовой
Сообщения: 4
Зарегистрирован: 04.02.2022{, 15:33}
Репутация: 0
Имя: Pavel

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

#197

Сообщение Karlson » 30.11.2022{, 14:50}

av писал(а):
17.11.2022{, 07:50}
Так и сделал... Вместо блока Time использовал стандартный NTPserver. Вот только не понятно зачем блок Time в составе мультиблока нужен ? Если он все равно время показывает с подключенного устройства не то чтобы точно, а "врет" аж на несколько часов. Тогда использование этого блока нецелесообразно.
Блок Time берет время не с твоего чипа, а из настроек системного времени коипа или иного агрегата на котором запущен браузер. А не точность показаний обусловлена настройками системы. Система настроена на глобальное время (Linux) или локальное(Windows). Отсюда вывод. Если запустить браузер из под линукс скорее всего время будет показывать правильно.

Отправлено спустя 35 минут 49 секунд:
Правда не исключен вариант что time вообще не учитывает часовые пояса и всегда показывает время по гринвичу.

artemka19
Лейтенант
Сообщения: 540
Зарегистрирован: 03.09.2020{, 15:41}
Репутация: 216
Откуда: Питер
Имя: Артем

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

#198

Сообщение artemka19 » 30.11.2022{, 15:34}

Karlson писал(а):
30.11.2022{, 15:25}
Если запустить браузер из под линукс скорее всего время будет показывать правильно
а причем здесь система?
В виндовс тоже время берется с ntр серверов.
В андроиде (телефоне) - время от gsm сети.
В навигаторах/магнитолах - с gps.

Karlson
Рядовой
Сообщения: 4
Зарегистрирован: 04.02.2022{, 15:33}
Репутация: 0
Имя: Pavel

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

#199

Сообщение Karlson » 30.11.2022{, 17:10}

artemka19 писал(а):
30.11.2022{, 15:34}
а причем здесь система?
В виндовс тоже время берется с ntр серверов.
В андроиде (телефоне) - время от gsm сети.
В навигаторах/магнитолах - с gps.

Я говорю о блоке Time из ESPUI. ни про какие NTP серверы я не говорил.

Аватара пользователя
DrMario
Лейтенант
Сообщения: 371
Зарегистрирован: 07.11.2016{, 13:11}
Репутация: 58
Откуда: Камень-на-Оби
Имя: Евгений
Контактная информация:

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

#200

Сообщение DrMario » 02.01.2023{, 12:19}

Всех с праздником!
В своем проекте решил переехать c ESPUI 1.5 на ESPUI_1.6.1___WiFiManager. Необходимые библиотеки скачал и установил. Пример ESPUI 1.6-Test_group на ESP8266 компилируется без ошибок. Но вот для ESP32 при компиляции любого блока из ESPUI 1.6 выдает такую ошибку
In file included from C:\Users\Evgen\AppData\Local\Temp\flprog\pr4\pr4.ino:2:
Несколько библиотек найдено для "WiFi.h"
c:\Program Files\FLProg802\ideV8\portable\sketchbook\libraries\ESPUI-2.1.1\src/ESPUI.h:14:10: fatal error: LITTLEFS.h: No such file or directory
#include <LITTLEFS.h>
^~~~~~~~~~~~
Используется: C:\Program Files\FLProg802\ideV8\portable\packages\esp32\hardware\esp32\2.0.5\libraries\WiFi
compilation terminated.
Не используется: c:\Program Files\FLProg802\ideV8\libraries\WiFi
exit status 1
Ошибка компиляции для платы MH ET LIVE ESP32DevKIT.



Подскажите в чем может быть проблема

Ответить

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