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-Мультиблок

#141

Сообщение Naladchik » 11.01.2022{, 17:24}

Iqubik писал(а):
11.01.2022{, 14:54}
Вышло обновление ESPUI 2.1.0
Спасибо, буду смотреть.
Win10-64. FLProg Portable.
Изображение

alimanew
Рядовой
Сообщения: 1
Зарегистрирован: 17.11.2021{, 05:18}
Репутация: 0
Имя: Евгений

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

#142

Сообщение alimanew » 02.02.2022{, 09:34}

Naladchik, здравствуйте, а функция объединения элементов в группы пока не реализована?

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

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

#143

Сообщение Naladchik » 02.02.2022{, 09:41}

alimanew писал(а):
02.02.2022{, 09:34}
"... функция объединения элементов в группы пока не реализована?"
Данная функция, как и новые блоки (получение времени, разделитель), присутствуют пока только в мастер-версии, релиз с поддержкой этих функций еще не выпущен, ведутся доработки разработчиками библиотеки, ситуацию мониторю.

Upd 09.02:
Мультиблок в общих чертах доработан под нововведения (новые элементы, группировка, CSS стили), пока тестирую, выложу обновленную версию когда выйдет официальный релиз библиотеки.
Последний раз редактировалось Naladchik 09.02.2022{, 09:32}, всего редактировалось 4 раза.
Win10-64. FLProg Portable.
Изображение

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

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

#144

Сообщение Karlson » 07.02.2022{, 11:53}

1. Не меняется цвет блока switcher. Может я чего делаю не так и можно это по другому реализовать
СпойлерПоказать
flprog.png
не менятся цвет блока
2. Можно ли поменять цифры в блоке Graph по оси x на риски. Все равно цифры наезжают друг на друга и никакого проку в них нет.

Rz3dfv2
Рядовой
Сообщения: 2
Зарегистрирован: 27.01.2022{, 00:30}
Репутация: 0
Имя: Andrew

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

#145

Сообщение Rz3dfv2 » 07.02.2022{, 14:06}

Здравствуйте у меня вот так работает думаю и как вы сделали тоже должно, по второму вопросу не помогу.
СпойлерПоказать
123.jpg

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

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

#146

Сообщение Naladchik » 07.02.2022{, 14:43}

Karlson писал(а):
07.02.2022{, 11:53}
Не меняется цвет блока ...
Проверил Ваш вариант - работоспособный.
Единственно, не советую использовать цвет 7, он как то криво отображается, выберите любой другой.
Karlson писал(а):
07.02.2022{, 11:53}
... поменять цифры в блоке Graph по оси x ...
Такие вопросы надо задавать разработчикам библиотеки.
Вообще у них в планах довести этот блок до ума вот только как и когда - пока не ясно.
Win10-64. FLProg Portable.
Изображение

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

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

#147

Сообщение Karlson » 07.02.2022{, 18:59}

Я может не совсем точно объяснил. Да работает, но очень странно. Изредка обновляет цвет сразу по переключению, а по большей части только при отключении от интерфейса в браузере и обратном туда заходе. Но в этом случает теряется смысл вообще менять цвет. Хотелось цветом показывать состояние удаленного устройства.

Rz3dfv2
Рядовой
Сообщения: 2
Зарегистрирован: 27.01.2022{, 00:30}
Репутация: 0
Имя: Andrew

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

#148

Сообщение Rz3dfv2 » 07.02.2022{, 19:15}

спасибо по экспериментирую с цветами. И сильно не хватает выхода активности вкладки, но это как мне кажется реализовать сложно, потому что доступ может быть с нескольких клиентов одновременно, а было бы очень удобно.

Отправлено спустя 3 минуты 16 секунд:
а может дело в определенном браузере можно на другом попробовать может будет работать корректнее.

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

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

#149

Сообщение Naladchik » 07.02.2022{, 20:09}

Karlson писал(а):
07.02.2022{, 18:59}
Я может не совсем точно объяснил...
А без проекта это не особо то и нужно, есть вопрос - прикладывайте проект или проблемную часть, без проекта обсуждать нечего.
Rz3dfv2 писал(а):
07.02.2022{, 19:18}
И сильно не хватает выхода активности вкладки
Опять же, вопрос к разработчикам библиотеки.
Win10-64. FLProg Portable.
Изображение

Fm-Nafing
Рядовой
Сообщения: 48
Зарегистрирован: 13.07.2016{, 13:24}
Репутация: 3
Откуда: Санкт-Петербург
Имя: Владислав

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

#150

Сообщение Fm-Nafing » 09.02.2022{, 13:16}

Naladchik,
Появилась острая необходимость в блоке Select выводить не только значение массива но и его индекс.
Можно какнить прикрутить выход?
Я изменил бы мир. Но Бог не дал исходников.

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

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

#151

Сообщение Naladchik » 09.02.2022{, 15:43}

Fm-Nafing писал(а):
09.02.2022{, 13:16}
... выводить не только значение массива но и его индекс...
Стандартный блок "Поиск элемента в массиве", по значению выдаёт индекс.
Win10-64. FLProg Portable.
Изображение

Fm-Nafing
Рядовой
Сообщения: 48
Зарегистрирован: 13.07.2016{, 13:24}
Репутация: 3
Откуда: Санкт-Петербург
Имя: Владислав

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

#152

Сообщение Fm-Nafing » 09.02.2022{, 17:48}

А вот и вовсе не вариант.
Объясню почему.
В Питере 39 радиостанций. Переборка пад-ом в поисках нужной станции так себе занятие.
Поэтому выпадающее меню с названием станции самое то. А значит создаём два массива. 1). Названия станций. 2). Их частоты.
Выход индекса был бы очень кстати для такой ситуации.
А 39 поисков согласитесь что совсем не лучший способ.
Я изменил бы мир. Но Бог не дал исходников.

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

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

#153

Сообщение Naladchik » 09.02.2022{, 18:20}

Fm-Nafing писал(а):
09.02.2022{, 17:48}
... Переборка пад-ом в поисках ...
Вы о чем сейчас?
Я говорю о стандартном блоке "Встроенные"-"Массивы"-"Поиск элемента в массиве".
Именно он позволяет узнать индекс.

Отправлено спустя 6 минут 45 секунд:
Fm-Nafing писал(а):
09.02.2022{, 17:48}
... А значит создаём два массива. 1). Названия станций. 2). Их частоты...
Ну правильно, блок селект именно это легко и делает, на экране название станции (1 массив, параметр "array Select Display") , на выходе блока частота (2й массив, параметр "array Select Output"). А зачем тут индекс?
Правда на счёт 39 пунктов как то сомнительно. Я просто не помню до какого количества я селект догонял.
Win10-64. FLProg Portable.
Изображение

Fm-Nafing
Рядовой
Сообщения: 48
Зарегистрирован: 13.07.2016{, 13:24}
Репутация: 3
Откуда: Санкт-Петербург
Имя: Владислав

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

#154

Сообщение Fm-Nafing » 09.02.2022{, 18:45}

Naladchik,
ESPUI_Radio.flp
(6.7 МБ) 40 скачиваний
Хотелось бы это продолжить, но серой жидкости не хватат.
Я изменил бы мир. Но Бог не дал исходников.

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

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

#155

Сообщение Naladchik » 09.02.2022{, 18:49}

Fm-Nafing писал(а):
09.02.2022{, 18:45}
это продолжить
как вариант
ESPUI_Radio.zip
(234.34 КБ) 49 скачиваний
А то, что Вы блоку выход прикрутили - так туда еще и код писать надо, чтоб он работал.
Win10-64. FLProg Portable.
Изображение

Fm-Nafing
Рядовой
Сообщения: 48
Зарегистрирован: 13.07.2016{, 13:24}
Репутация: 3
Откуда: Санкт-Петербург
Имя: Владислав

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

#156

Сообщение Fm-Nafing » 09.02.2022{, 19:19}

Naladchik,
А что так можно было?
Я не то что подумать не мог, я даже и не знал.
Спасибо огромное.
Я изменил бы мир. Но Бог не дал исходников.

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

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

#157

Сообщение Naladchik » 09.02.2022{, 19:29}

Fm-Nafing писал(а):
09.02.2022{, 19:19}
А что так можно было?
Ну я про этот блок Вам как бы аж 2 раза писал.
Win10-64. FLProg Portable.
Изображение

Fm-Nafing
Рядовой
Сообщения: 48
Зарегистрирован: 13.07.2016{, 13:24}
Репутация: 3
Откуда: Санкт-Петербург
Имя: Владислав

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

#158

Сообщение Fm-Nafing » 09.02.2022{, 19:53}

Naladchik,
Решение верное 100%. Ещё раз спасибо.
Но всё же может есть смысл дополнить блок таким выходом? Так этот блок будет более полным. Проекты разные у людей бывают. Вдруг кому и сгодится.
Я изменил бы мир. Но Бог не дал исходников.

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

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

#159

Сообщение Naladchik » 10.02.2022{, 05:12}

Fm-Nafing писал(а):
09.02.2022{, 19:53}
...дополнить блок таким выходом?
Ну и зачем мне на это тратить время, если данная задача решается добавлением одного стандартного блока?
С другой стороны, раз Вы считаете, что в этом есть смысл, предлагаю Вам альтернативный вариант. Вы самостоятельно проводите данную работу (это не так уж сложно, расковырять стандартный блок и код из него перенести в мультиблок). Бонусом получаете ответы на такие типовые вопросы, как "Во что выливается изобретение очередного велосипеда" и "Стоит ли овчинка выделки".
Со своей же стороны постараюсь ответить на все вопросы, касающиеся непосредственно мультиблока, типа "за что отвечают те или иные участки кода" и "почему сделано именно так а не иначе" (само собой в личке, чтоб не замусоривать тему). Удачи.
Win10-64. FLProg Portable.
Изображение

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

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

#160

Сообщение Naladchik » 20.03.2022{, 20:12}

ESPUI 1.6 (beta version).
В мастер-версии библиотеки ESPUI есть много нововведений, отсутствующих в последнем, на текущий момент, релизе ESPUI 2.1.0.
То, что я реализовал в данной версии мультиблока (там есть еще некоторые фишки, но до них пока не добрался).
Новые элементы.
1. Элемент Time. Позволяет получить текущее время из подключенного устройства, т.е из браузера компьютера/телефона/планшета.
2. Элемент Separator. Разделитель (горизонтальная черта), позволяет отделить группу элементов.
Возможности.
1. Группировка нескольких элементов в один.
2. Вертикальная ориентация элементов Switcher и Slider.
3. Изменение свойств элементов (цвет, шрифт, ... ) CSS стилями.
4. Отключение элементов.
Так как официального релиза библиотеки со всеми этими изменениями еще нет, да и код в самом мультиблоке много где изменился (соответственно и косяки не все еще выловил и добавиться/измениться что то может), то пока могу предложить потестить бета версию мультиблока и мастер-версию ESPUI.
Кому интересно - проверяйте, тестовый проект и бибки приложены, но рабочие проекты создавать пока не советую.
Большую часть изменений в мультиблоке протестировал, но не все, например работу WiFiManager в данном блоке не проверял.
После выхода релиза библиотеки и по готовности мультиблока выложу в шапку темы, ну а пока сюда.
Вложения
ESPUI 1.6 (beta version)-Test.rar
(2.29 МБ) 63 скачивания
Win10-64. FLProg Portable.
Изображение

Ответить

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