diff --git a/firmware/GyverLamp2/GyverLamp2.ino b/firmware/GyverLamp2/GyverLamp2.ino index e9874d7..e346c7a 100644 --- a/firmware/GyverLamp2/GyverLamp2.ino +++ b/firmware/GyverLamp2/GyverLamp2.ino @@ -1,93 +1,27 @@ /* - Версия 0.22b - Чуть переделан смерч - Исправлены глюки когда есть вайфай но нет интернета - Добавлено свечение после завершения рассвета, время настраивается - Обновлены бинарники, прошлая версия могла быть с ошибкой - - Версия 0.21b - Выбор палитры для частиц и конфетти - Счётчик количества ламп онлайн в приложении - Синхронизация текущего эффекта с приложением - Добавлен эффект смерч - - Версия 0.20b - Оптимизация - Исправление критических ошибок - Пофикшено падение АР - Пофикшено падение лампы во время светомузыки - - Версия 0.19b - Минимальная версия приложения 1.17!!! - Почищен мусор, оптимизация, повышена стабильность и производительность - Мигает теперь 16 светиков - Снова переделана сетевая политика, упрощён и сильно ускорен парсинг - Изменены пределы по светодиодам, что сильно увеличило производительность - Выключенная (программно) лампа не принимает сервисные команды кроме команды включиться - Добавлены часы, в том числе в рассвет - Slave работает со светомузыкой сам, если не получает данные с мастера - - Версия 0.18b - Уменьшена чувствительность хлопков - Увеличена плавность светомузыки - Переделана сетевая политика - Микрофон и датчик света опрашивает только мастер и отсылает данные слейвам своей группы - 4 клика - включить первый режим - Отправка точного времени на лампу в режиме АР для работы рассвета и синхронизации эффектов - - Версия 0.17b - Автосмена отключается 30 сек во время настройки режимов - Убрана кнопка upload в режимах - Лампа чуть мигает при получении данных - Кастом палитра работает на огне 2020 - Вкл выкл двумя хлопками - Плавное выключение - Починил рассвет - - Версия 0.16b - Исправлен масштаб огня 2020 - Фикс невыключения рассвета - - Версия 0.14b - Мелкие баги - Вернул искры огню - Добавлены палитры - Добавлен огонь 2020 - - Версия 0.13b - Улучшена стабильность - - Версия 0.12b - Мелкие исправления - - Версия 0.11b - Добавлен редактор палитр - Исправлены мелкие баги в эффектах - Переподключение к роутеру после сброса сети - Настройка ориентации матрицы из приложения - Переработан эффект "Частицы" - Добавлена скорость огня - Переключение на новый/выбранный режим при редактировании - Отправка времени из сервиса (для АР) - Выключение по таймеру теперь плавное - Добавлен рассвет - - TODO: - плавная смена режимов - Mqtt? - Базовый пак - Эффект погода https://it4it.club/topic/40-esp8266-i-parsing-pogodyi-s-openweathermap/ + ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! + ДЛЯ КОМПИЛЯЦИИ ПРОШИВКИ ПОД NODEMCU/WEMOS/ESP01/ESP12 ВЫБИРАТЬ + Инструменты / Плата Generic ESP8266 + Инструменты / Flash Size 4MB (FS:2MB OTA) + CPU Frequency / 160 MHz (рекомендуется для стабильности светомузыки!!!) + При прошивке с других прошивок лампы поставить: Инструменты/Erase Flash/All Flash Contents + ESP core 2.7.4+ http://arduino.esp8266.com/stable/package_esp8266com_index.json + FastLED 3.4.0+ https://github.com/FastLED/FastLED/releases */ -// ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ! -// ДЛЯ КОМПИЛЯЦИИ ПРОШИВКИ ПОД NODEMCU/WEMOS/ESP01/ESP12 ВЫБИРАТЬ -// Инструменты / Плата Generic ESP8266 -// Инструменты / Flash Size 4MB (FS:2MB OTA) -// CPU Frequency / 160 MHz (рекомендуется для стабильности светомузыки!!!) -// При прошивке с других прошивок лампы поставить: Инструменты/Erase Flash/All Flash Contents -// ESP core 2.7.4+ http://arduino.esp8266.com/stable/package_esp8266com_index.json -// FastLED 3.4.0+ https://github.com/FastLED/FastLED/releases -#define GL_BUILD 0 // 0: com 300, 1: com 900, 2: esp1 300, 3: esp1 900, 4: module 300, 5: module 900 +/* + Версия 0.23b + Поправлена яркость рассвета + + TODO: + Upload -> Применить + Длина огня в светомуз? + Плавная смена режимов + Mqtt + Базовый пак + Поддержка куба + Погода https://it4it.club/topic/40-esp8266-i-parsing-pogodyi-s-openweathermap/ +*/ // ---------- Настройки ----------- #define GL_KEY "GL" // ключ сети @@ -103,7 +37,7 @@ #define PHOT_VCC 14 // питание фоторезистора GPIO14 (D5 на wemos/node) // ------------ Лента ------------- -#define STRIP_PIN 2 // пин ленты GPIO2 (D4 на wemos/node) +#define STRIP_PIN 2 // пин ленты GPIO2 (D4 на wemos/node), GPIO5 (D1) для module #define MAX_LEDS 300 // макс. светодиодов #define STRIP_CHIP WS2812 // чип ленты #define STRIP_COLOR GRB // порядок цветов в ленте @@ -121,7 +55,7 @@ const char AP_NameChar[] = "GyverLamp2"; const char WiFiPassword[] = "12345678"; // ------------ Прочее ------------- -#define GL_VERSION 22 // код версии прошивки +#define GL_VERSION 23 // код версии прошивки #define EE_TOUT 30000 // таймаут сохранения епром после изменения, мс //#define DEBUG_SERIAL // закомментируй чтобы выключить отладку (скорость 115200) #define EE_KEY 56 // ключ сброса eeprom @@ -129,6 +63,8 @@ const char WiFiPassword[] = "12345678"; //#define SKIP_WIFI // пропустить подключение к вафле (для отладки) // ------------ БИЛДЕР ------------- +#define GL_BUILD 0 // 0: com 300, 1: com 900, 2: esp1 300, 3: esp1 900, 4: module 300, 5: module 900 + #if (GL_BUILD == 0) #elif (GL_BUILD == 1) #define MAX_LEDS 900 diff --git a/firmware/GyverLamp2/effects.ino b/firmware/GyverLamp2/effects.ino index 0f12193..4dcefc7 100644 --- a/firmware/GyverLamp2/effects.ino +++ b/firmware/GyverLamp2/effects.ino @@ -3,6 +3,7 @@ void effectsRoutine() { if (!effTmr.isReady()) return; if (dawnTmr.running() || postDawn.running()) { + FastLED.setBrightness(255); byte thisColor = dawnTmr.getLength8(); if (postDawn.running()) thisColor = 255; fill_solid(leds, MAX_LEDS, ColorFromPalette(HeatColors_p, thisColor, scaleFF(thisColor, dawn.bright), LINEARBLEND)); diff --git a/firmware/GyverLamp2/time.ino b/firmware/GyverLamp2/time.ino index 4b9ac70..a1d6d09 100644 --- a/firmware/GyverLamp2/time.ino +++ b/firmware/GyverLamp2/time.ino @@ -64,8 +64,7 @@ void checkDawn() { DEBUG("dawn start "); DEBUGLN(dawn.time * 60000ul); dawnTmr.setInterval(dawn.time * 60000ul); - dawnTmr.restart(); - FastLED.setBrightness(255); + dawnTmr.restart(); } } }