ESP, IoT WiFi лампа/гирлянда/информер ws2812/HUB75 - Обсуждение прошивки FireLamp_EmbUI

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
55
Здесь не всё так однозначно.
управление эффектами динамическими контроллами типа dynCtrlX, где X номер контролла в эффекте.
  • on: 1 on: 0 - вкл/выкл
  • demo: 0/1 - режим ДЕМО
  • g_bright: 0 отключает глобальную яркость, 1-255 устанавливает глобальную яркость.
  • msg: Hello - вывод сообщения на лампу
  • bright: 0-255 - яркость (Нужно проверять, либо dynCtrl0)
  • speed: 0-255 - скорость (Нужно проверять, либо dynCtrl1)
  • scale: 0-255 - шкала (Нужно проверять, либо dynCtrl2)
  • effect: N - эффект номер N
  • move_next - следующий эффект
  • move_prev - предыдущий эффект
  • move_rnd - случайный эффект
  • effect - номер текущего эффекта
  • warning, warning: [16777215,5000,500] - неблокирующий вывод мигалки поверх эффекта (выдача предупреждений)
  • alarm: 1 - форсировать включение будильника
  • dynCtrlX , к примеру dynCtrl5: 123 - получить/установить значение дин. контрола
  • reboot - перезагрузить лампу
Всё это надо проверять.
Есть ещё команды управления мп3 плеера, но надо составить список и проверить.
Команды периодически менялись (true/false на 1/0, + контроллы управления эффектов и т.д).
На старом форуме я их собирал/обновлял, но форум затёрли.
Все команды в одном файле вы не найдёте.
 
Изменено:

Константин 271

★★★✩✩✩✩
12 Июл 2020
953
106
g_bright: 0 отключает глобальную яркость, 1-255 устанавливает глобальную яркость.
работает.

bright: 0-255 - яркость (Нужно проверять, либо dynCtrl0)
не работает, поэтому применил глобальную.

effect: N - эффект номер N
работает.
 
  • Лойс +1
Реакции: andy040670

Svetlaya

✩✩✩✩✩✩✩
12 Апр 2021
12
3
работают на крайней версии 2хх
/embui/set/effect (номер эффекта)
/embui/set/bright
/embui/set/speed
/embui/set/scale (масштаб)
/embui/set/mode (значение команды не знаю)
/embui/set/demo
/embui/set/msg (текст. поверх)
/embui/set/on
/embui/set/move_next (любая цифра. следующий эффект)
/embui/set/move_prev
/embui/set/move_rnd
/embui/set/reboot

Здесь не всё так однозначно.
управление эффектами динамическими контроллами типа dynCtrlX, где X номер контролла в эффекте.

  • dynCtrlX , к примеру dynCtrl5: 123 - получить/установить значение дин. контрола
Можно подробнее?
 
Изменено:
  • Лойс +1
Реакции: andy040670

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
55
Можно подробнее?
Контролы в эффекте.
Первые три: яркость, скорость, масштаб статичные*, так как имеются в каждом эффекте, если их больше, то идут уже динамические (ползунки, переключатели), в место название присваивается номер (dynCtrlN).
Получить номер контрола можно в топике /pub/, и если память не изменяет, в том же топике в json формате.
*Тут может быть и не так, потому что статичные были, потом их убрали, затем опять вернули, короче я уже запутался. Так как лампы у меня нет проверить крайне хлопотно.
 
  • Лойс +1
Реакции: Svetlaya

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
Не, я тут еще не много посижу, а потом опять на пол года пропаду (пока не факт)
со мной подобный вариант тоже не исключен ) сейчас пока есть немного времени. Ладно, разберемся там по ходу дела. А кому писать что бы тему перевесили на меня?
 

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
55

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
@vortigont, наверное, модерам. А что в прошивку добавить чтобы громкость плеера начала меняться по mqtt ?
да я же добавил. @andy040670, вон говорит что работает, вы говорите что нет. Без ваших логов я вам помочь ничем не смогу пока.
Если будет много свободного времени, я может подниму мкутт сервер и погляжу на это, но пока надо решить вопрос с утечкой памяти, возиться с мкутт не имея самого плеера занатие малопривлекательное.
Проявите инициативу - освойте уже сборку логов, покажите что у вас не работает, вам в теме помогут.

То есть Wan-Derer'у.
написал, спасибо!
 

Svetlaya

✩✩✩✩✩✩✩
12 Апр 2021
12
3
- как он у вас работает? Какие настройки ввели и какая команда? У меня это на яркость не влияло.
версия прошивки 2.3.0
как любая другая команда. В данном случае отправляется любое число от 0 до 255
я управляю с MajorDoMo

имя в сети/embui/set/bright "100"
 

Вложения

Svetlaya

✩✩✩✩✩✩✩
12 Апр 2021
12
3
Попробуйте этой командой:
  • g_bright: 0 отключает глобальную яркость, 1-255 устанавливает глобальную яркость.
 

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
обновил немного шапку. Кто найдет неточности, добавки - пишите конкретно что поменять.
Я все еще переписываю механизм подгрузки контролов/эффектов, тут такая муть - одно за другим тянется по цепочке, не знаю где остановиться.
 

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
дай Бог, хоть в конце марта))
в марте будет тепло и красиво - потянет на улицу, а не кодить сидеть ))

@andy040670 а пошарьте, пожалуйста, звуковые файлы для плеера, добавлю их в репу. Все про них говорят, но я ни разу их нигде не видел живьем.
 

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
Тиснул изменения в мастер. Это какая-то боль... код настолько неопрятный и корявый что хоть выноси... небезопасная работа с памятью, дублирование функционала, какие-то копии экземпляров двойные, а то и тройные. Не удивительно что оно падает, удивительно как оно вообще работает-то. В коде эффектов вообще бедлам - неициализированные вектора, вылеты за границы массивов, деление на ноль... :poop: Я немного поменял схему смены и инициализации эффектов и это всё вылезло как гнойники наружу :eek: Штук 10 я поправил которые падали явно, остальные перебрать сил пока нет.

  • bbdb353 - fix crash in EffectSmokeballs (2023-02-20) <Emil Muratov>
  • 33ddd34 - fix div by zero in EffectPolarL (2023-02-20) <Emil Muratov>
  • c05a505 - fix stuped divizion by zero in EffectPacific (2023-02-20) <Emil Muratov>
  • 3c9428a - fix undefined vars in EffectStarShips (2023-02-20) <Emil Muratov>
  • 9149c36 - fix crashes in EffectFire2021(2023-02-20) <Emil Muratov>
  • a2058e8 - fix crashes in EffectCube2d effect (2023-02-20) <Emil Muratov>
  • f2d7a3d - fix crash in EffectPopcorn (2023-02-20) <Emil Muratov>
  • e304ad2 - replace char* TCONST_0014 TCONST_dynCtrl (2023-02-20) <Emil Muratov>
  • 28c2fc9 - fix for eff switcher (2023-02-20) <Emil Muratov>
  • fb8ac9a - fix for EffectPuzzles crashes use proper vector definition (2023-02-20) <Emil Muratov>
  • 7192024 - fix for EffectRadialFire aka neopalimaya kupelina (2023-02-20) <Emil Muratov>
  • a6dfb9b - fix EffectWcolor effect initialize std::vector<Blot> blots to default size (2023-02-20) <Emil Muratov>
  • 570b80f - refactor GradientPaletteList and GradientPalette classes let it store copyable objects, prevent leaks (2023-02-20) <Emil Muratov>
  • ce218c1 - rewrite LEDFader class, implement as a singleton (2023-02-20) <Emil Muratov>
  • 5685ca1 - reworked algo for effect switching (2023-02-20) <Emil Muratov>
  • bdd28ce - replace a list of UIControl* with smartpointers (2023-02-16) <Emil Muratov>
  • 8fe024c - effect worker control's lists reworking (2023-02-15) <Emil Muratov>
  • 75febe9 - remove task objects garbage (2023-02-15) <Emil Muratov>
 

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
Покрутил демо в цикле с последними правками - около суток она проработала, потом таки упала где-то. Где - не заметил, но память в целом течь перестала, по крайней мере в течение суток.
 

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
55
Покрутил демо в цикле с последними правками - около суток она проработала, потом таки упала где-то. Где - не заметил, но память в целом течь перестала, по крайней мере в течение суток.
Погонял тоже с правками от 20.02.23, всё так же падает на 4 круге демо по не хватке памяти, на памяти-ёмком эффекте "Метошары". Гонял на 8266 с мп3 плеером в режиме On и Off, разницы нет.
 

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
@andy040670, меташары это 71й эффект? их там несколько похожих, стек-трейс не снимали? У меня на нем не падало, по крайней мере не натыкался. Залил еще немного мелких правок, попробуйте.
 

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
55
меташары это 71й эффект?
Да, 72 тоже жрёт не мало, а то и больше. Память с каждым кругом демо всё меньше и меньше и когда приходит черёд 71го, лампа падает, этот момент приходит на 4 или 5 круге.
Залил еще немного мелких правок, попробуйте.
Попробую, погоняю.
 

vortigont

★★★★★★✩
24 Апр 2020
1,020
543
Saint-Petersburg, Russia
вообще тут походу еще много потенциально корявых мест в коде эффектов, нашел еще одну багу в "пятнашках", иногда падало на них оказывается.
Не знаю кто научил эффектописателей использовать std::vector, но используют они их довольно коряво. Уж казалось бы настолько дуракоустойчивая структура.
p.s. я походу что-то сломал в версионности конфигов эффектов, сообщения есть, но без матрицы не оч понятно что там происходит
 

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
55
вообще тут походу еще много потенциально корявых мест в коде эффектов, нашел еще одну багу в "пятнашках", иногда падало на них оказывается.
Уже заметил, обновил.
p.s. я походу что-то сломал в версионности конфигов эффектов, сообщения есть, но без матрицы не оч понятно что там происходит
Вот здесь не совсем понятно...
P/s
Погонял...
Аптайм почти 10 часов (15 циклов демо), но памяти почти не осталось, пока работает. Отличный результат.
41.png
При таких настройках:
51.png

P/s
Аптайм 0.12.05.10 - 71, 72 и 73 эффект проходит при 3848b, но не падает.
Ps/Ps
Лампа рухнула ~ через 3 часа,- не отследил момент:)
, но утечка памяти имеет место (не значительная). На укр. прошивке я не могу отследить , так как крашится произвольно, но с памятью вроде всё O;k, на два круга демо иногда точно хватает, вылет без видимых причин.
Вы на правильном пути! Я даже сегодня заказал матрицу, ради такого дела.)). Командировки пока в плане, посижу пока немного на форуме и...)) помогу чем смогу.
 
Изменено:
  • Лойс +1
Реакции: vortigont