People of good will, we Ukrainians appeal to you! The Russian Fuhrer sent all the military power of his Russian Reich to our country. Do not believe rashist-fascist propaganda. Ukrainians defend their home and believe that the free people of the whole world will support us in this. The Russian Reich will fall, the Russian Fuhrer will answer for nuclear threats to the whole world, victory will be ours!
Гражданам России. В связи с тем, что ваша страна развязала полномасштабную войну против моей страны, тех, кто поддерживает действия своего фюрера, просим собрать остатки совести и не использовать этот проект, как проект авторов из ненавистной вам Украины. Тем, же, кто против войны, команда проекта соболезнует, вам, и вашим детям нести этот стыд. Проект не закрывется, но переносится на после нашей победы! Будет "денационализирован" (будет убрана рус.озвучка, рус.переводы, эффекты с российской символикой). Зарубежным же друзьям, кто мог раньше пользоваться русскоязычным интерфейсов, приносим искренние извинения. Друзья, используя ../include/text_res-UA.h делайте переводы на свои родные языки, и предлагайте в issues. Слава Україні!!
- Из выключенного состояния
- 1 касание - включить на последнем эффекте
- 2 касания - включить в режиме ДЕМО
- долгое удержание - включить в режиме "белая лампа" на минимальную яркость (ночник)
- касание, удержание - включить в режиме "белая лампа" на максимальную яркость
- Во включенном состоянии
-
1 касание - выключить лампу
-
2 касания - следующий эффект
-
3 касания - предыдущий эффект
-
4 касания + 4 касания - запуск сервиса ОТА
-
5 касаний - вывод IP на лампу
-
6 касаний - вывод текущего времени бегущей строкой
-
удержание - регулировка яркости
-
1 касание, удержание - регулировка "скорости" эффекта
-
2 касания, удержание - регулировка "масштаба" эффекта
-
Это дефолтное состояние для кнопки, но абсолютно любую настройку можно поменять
команды можно посылать на лампу через браузер или curl по URL вида http://esp-xxxxxx/cmd?arg=param
- /cmd?on /cmd?off /cmd?on=true /cmd?on=false - вкл/выкл
- /cmd?demo - режим ДЕМО
- /cmd?gbright /cmd?gbright=true - проверка/установка для глобальной яркости
- /cmd?msg=Hello - вывод сообщения на лампу
- /cmd?bright=0-255 - яркость
- /cmd?speed=0-255 - скорость
- /cmd?scale=0-255 - шкала
- /cmd?effect=N - эффект номер N
- /cmd?move_next - следующий эффект
- /cmd?move_prev - предыдущий эффект
- /cmd?move_rnd - случайный эффект
- /cmd?effect - номер текущего эффекта
- /cmd?warning /cmd?warning=[16777215,5000,500] - неблокирующий вывод мигалки поверх эффекта (выдача предупреждений)
- /cmd?alarm=true - форсировать включение будильника
- /cmd?dynCtrlX , к примеру cmd?dynCtrl5=123 - получить/установить значение дин. контрола
- /cmd?reboot - перезагрузить лампу
- /cmd?OTA - запустить сервер обновления OTA через PIO
так же команды можно объединять в цепочки в одной посылке, т.е. допустим включить лампу, установить яркость, перейти к эффекту аналогичные команды работают и для MQTT, если чего-то не хватает или что-то не получается - спрашивайте в теме
Дополнительные служебные комманды:
- /heap - показать свободное место на куче
- /echo - показать эхо-ответ (json для формирования интерфейса)
- /config - показать текущий конфиг (json основных настроек)
- /scan - показать доступные WiFi-сети
- /config.json - скачать активный конфиг лампы
- /events_config.json - скачать активный конфиг событий
- /update - форма http-обновления прошивки
- /edit - вызов редактора конфигов (esp8266/esp8266 - логин/пассворд)
Основная разработка ведется под контроллер esp8266. ESP32 полностью поддерживается на уровне движка, но имеет ограниченный функционал (в основном связанный со сторонними библиотеками).
Сборка под ESP32 выполняется отдельно.
pio run -e esp32
Проект собирается с помощью Platformio
Для сборки проекта понадобится следующее:
Установить IDE Visual Studio Code, и в качестве плагина к ней установить Platformio. О том как это сделать можно найти массу роликов на youtube, например этот.
Желательно еще установить Git, обновлять проект будет значительно проще
Актуальный срез проекта всегда можно скачать в виде zip-архива по ссылке, либо перейдя по ссылке последнего релиза, там же хранятся бинарники собранные под этот релиз Либо можно поддерживать клон репозитория и подтягивать обновления перед каждой новой сборкой Открываем Git-bash, клонируем репозиторий в тукущую папку командой 'git --depth 1 --no-single-branch https://github.com/DmytroKorniienko/FireLamp_JeeUI.git' В последующем для того чтобы обновить репозиторий достаточно перейти в папку проекта и выполнить команду 'git pull' Что бы переключиться на ветку для ESP32 выполняем команду 'git checkout esp32', переключиться обратно на master 'git checkout master'
После того как вы скопировали проект (в виде zip архива или через git clone), необходимо в папке include скопировать файл user_config.h.default под новым именем user_config.h и в нем настроить сборку под свои параметры матрицы, номеров выводов и требуемых функций.
- Открываем папку проекта в VSCode
- Что бы собрать прошивку, можно воспользоваться кнопками в нижней статусной строке:
- PlatformIO:Build - собрать прошивку
- PlatformIO:Upload - загрузить прошивку через USB в плату.
Platformio сам скачает необходимые бибиотеки для сборки проекта.
Также можно открыть терминал с помощью клавишь Ctrl+Shit+` и воспользоваться расширенными командами для сборки проекта.
- pio run - собрать проект по умолчанию (esp8266dev), dev версия под esp8266 c выводом отладочных сообщений через serial интерфейс.
- pio run -e esp8266 - собрать версию esp8266, будет собрана облегченная прошивка без вывода отладочных сообщений через serial интерфейс Рекомендуется для повседневного использования, если нет нужды отлаживать работу лампы
- pio run -e esp32dev - собрать версию esp32dev, будет собрана прошивка под esp32 c выводом отладочных сообщений через serial интерфейс
- pio run -t upload - собрать и прошить проект по умолчанию (esp8266dev)
- pio run -e esp8266 -t upload - собрать и прошить облегченную версию
- pio deviсe monitor - запустить serial-монитор для просмотра сообщений, выдаваемых контроллером
После первой прошивки дальнейшие обновления можно заливать в контроллер по воздуху. Для этого нужно зайти браузером на контроллер по URL вида http://jeeui-xxxx/update, где xxxx это ID контроллера, нажать на кномку 'Firmware', выбрать файл с прошивкой и загрузить его в контроллер. Файл с прошивкой Platformio кладет в подпапки проекта:
- .pio/build/esp8266/firmware.bin - обычная версия под esp8266
- .pio/build/esp8266dev/firmware.bin - debug версия под esp8266
- .pio/build/esp32dev/firmware.bin - debug версия под esp32