ESP, IoT WiFi лампа-будильник. Обсуждение прошивки от GUNNER47

ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 160 страниц и 0 пользы ....

Для ответа КОНКРЕТНОМУ пользователю, достаточно нажать " ОТВЕТ"

При описании проблемы обязательно, как можно подробнее, описывайте ход своих действий до ее возникновения. Телепатов (как я думаю) среди участников нет. Потом 20 постов будет только для того, чтобы Вас понять.
Если Вы считаете ваше сообщение важным и его нужно поднять в шапку, пишите мне в личку с пометкой "Сообщение в шапку"


ПО ВОПРОСАМ РАБОТЫ ПРИЛОЖЕНИЯ ОТ KOTEYKA ИДЕМ В ЭТУ ТЕМУ

Голосовое управление лампой Гайвера, через Яндекс Алису (прошивка Gunner47).

Яндекс диск Файл ПДФ. Актуально на 27.01.2020г
наш сервер НЕ ОБНОВЛЯЕТСЯ, от 27.01.2020г
Прошивка gunner47 v.2 "86 эффектов в 1" или уже больше - разработку ведет @Сотнег
Прошивка gunner47 v.2.X_web : веб-интерфейс (без необходимости перепрошивки) - разработку ведет @alvikskor
Прошивка от Shaitan с поддержкой mp3 и пульта (тут не обсуждается. Обсуждается в теме прошивки)
Прошивка FireLamp with Remote Control - разработку ведет @SlingMaster

Для тех у кого умный дом Home Assistant есть отличный компонент

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 
Изменено:

Комментарии

mechanic

★★★★✩✩✩
Команда форума
31 Июл 2018
403
202
ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 160 страниц и 0 пользы ....

Для ответа КОНКРЕТНОМУ пользователю, достаточно нажать " ОТВЕТ"

При описании проблемы обязательно, как можно подробнее, описывайте ход своих действий до ее возникновения. Телепатов (как я думаю) среди участников нет. Потом 20 постов будет только для того, чтобы Вас понять.
Если Вы считаете ваше сообщение важным и его нужно поднять в шапку, пишите мне в личку с пометкой "Сообщение в шапку"


ПО ВОПРОСАМ РАБОТЫ ПРИЛОЖЕНИЯ ОТ KOTEYKA ИДЕМ В ЭТУ ТЕМУ

Голосовое управление лампой Гайвера, через Яндекс Алису (прошивка Gunner47).

Яндекс диск Файл ПДФ. Актуально на 27.01.2020г
наш сервер НЕ ОБНОВЛЯЕТСЯ, от 27.01.2020г
Прошивка gunner47 v.2 "86 эффектов в 1" или уже больше - разработку ведет @Сотнег
Прошивка gunner47 v.2.X_web : веб-интерфейс (без необходимости перепрошивки) - разработку ведет @alvikskor
Прошивка от Shaitan с поддержкой mp3 и пульта (тут не обсуждается. Обсуждается в теме прошивки)
Прошивка FireLamp with Remote Control - разработку ведет @SlingMaster

Для тех у кого умный дом Home Assistant есть отличный компонент

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 
Изменено:

t_igr

★★✩✩✩✩✩
19 Июл 2019
74
55
@Сотнег, спасибо подправил и перезалил. Айфон отобрали у меня, проверил на андройде только.
Можешь подсказать с каким параметром вызвать fireRoutine() чтобы огонь белым? Раньше по false вызывалось, теперь масштабом передается.
 

Сотнег

★★★★★★★
15 Янв 2020
4,124
1,439
@t_igr, масштаб 100, наверное. Что значит, передаётся? Пользователь выставить должен.
 

t_igr

★★✩✩✩✩✩
19 Июл 2019
74
55
@Сотнег, в старой функции у ганнера белый огонь вызывался fireRoutine(false), обычный огонь fireRoutine(true). Сейчас белый огонь так не работает, видимо теперь только ручками масштаб 100 выставлять.
 

Palpalych

★★★★★✩✩
24 Дек 2019
765
404
@vad14, NTP работает практически всегда по GMT без указания часового пояса. Временной офсет нужно задавать в прошивке ручками. Возможно, что при настройке на некоторые местные NTP, время на них будет местное, либо ответ приходит через роутер (или маршрутизатор провайдера) со смещением. Всякое может быть.
 
  • Лойс +1
Реакции: vad14

theprizrak

✩✩✩✩✩✩✩
12 Сен 2019
8
0
Всем привет.
Подскажите, возникла проблема с работой лампы.
Плату прошил, подключил к wi fi. Подключил в приложении. Кнопка имеется.
Но лента не загорается. Или загорается от 1-4 светодиода.
При подключении через приложение плата на кнопку реагирует (в приложении показывает смену режимов через кнопку)
Питаю от лбп 5в. (читал на странице проекта что можно попробовать понизить напряжение, но не пробовал)
 

Сотнег

★★★★★★★
15 Янв 2020
4,124
1,439
@theprizrak, если светодиоды горят ровно, скорее всего, провод DIN не доведён от платы до матрицы. Обрыв или непропай.

Если светодиоды демонстрируют эффект (цвет меняют), тогда, скорее всего, непропай внутри матрицы. Нужно поприжимать светодиоды пальцами во время работы. Если контакт схватится, загорится больше светодиодов.
 

theprizrak

✩✩✩✩✩✩✩
12 Сен 2019
8
0
@theprizrak, если светодиоды горят ровно, скорее всего, провод DIN не доведён от платы до матрицы. Обрыв или непропай.

Если светодиоды демонстрируют эффект (цвет меняют), тогда, скорее всего, непропай внутри матрицы. Нужно поприжимать светодиоды пальцами во время работы. Если контакт схватится, загорится больше светодиодов.
нет загорается бывает 1 светодиод выше середины, или 1-4 в разных местах.
если один загорается горит синим, а несколько когда то разными цветами.
И загораются не в начале а где нибудь в середине и не подряд.
Фотку попозже выложу.
 

Сотнег

★★★★★★★
15 Янв 2020
4,124
1,439
@theprizrak, начните проверки с проводки. Плюс/минус перепутан, не с того пина провод DIN выведен и т.п.
Потом можно попробовать блок питания другой на разок взять.
 

theprizrak

✩✩✩✩✩✩✩
12 Сен 2019
8
0
@theprizrak, начните проверки с проводки. Плюс/минус перепутан, не с того пина провод DIN выведен и т.п.
Потом можно попробовать блок питания другой на разок взять.
Вот уже всё проверил. питание всё норм. Проверил по всеё ленте, +5 есть. Дин как в инструкции 4й. В БП не сомневаюсь.
Читал тут у кого то были идентичные проблемы, перекидывали на 8й пин. Сегодня попробую это ещё.
 

Belokota

★✩✩✩✩✩✩
24 Дек 2019
98
29
@Сотнег, @Palpalych, @Koteyka 🐱, у меня к вам вопрос. Можно ли сделать что бы эффекты в режиме "цикл" переключались случайно, но с сохранением уже проигранных эффектов и что бы пока все не пройдут, уже проигранные больше не воспроизводились? А то получается, что некоторых эффектов можно и не увидеть при воспроизведении в цикле сейчас.
 

Сотнег

★★★★★★★
15 Янв 2020
4,124
1,439
@Belokota, выполнение этого условия означает, что эффекты будут демонстрироваться в одном и том же порядке.
При включении режима Цикл он сформируется, а потом по кругу всегда одинаково.
Я б себе такое делать не стал.
 

Belokota

★✩✩✩✩✩✩
24 Дек 2019
98
29
@Сотнег, нет, порядок то случайный, только проигранные ждут пока все остальные не пройдут. Выбор следующего эффекта случаен. Как все прошли цикл сбрасывается. Так делают некоторые авторы подобных "мигалок", например "Гирлянда на светодиодах WS" https://radiokot.ru/circuit/light/run/83/. Причём реализовано на Меге 8.
 

Koteyka 🐱

★★★★★★✩
Команда форума
27 Окт 2019
935
556
54
Днепр, Украина
firelamp.pp.ua
ОБНОВЛЕНИЕ ПРИЛОЖЕНИЯ

1. Исправлен вылет приложения если количество эффектов в лампе больше, чем в приложении
2. Настройки приложения и Настройки эффектов теперь в разных меню
3. Добавлен переключатель "Использовать вибро"
4. Таймер увеличен до 3-х часов
5. При выходе из режима рисования любым способом (кроме сворачивания) рисование отключается
 

Koteyka 🐱

★★★★★★✩
Команда форума
27 Окт 2019
935
556
54
Днепр, Украина
firelamp.pp.ua
Можно ли сделать что бы эффекты в режиме "цикл" переключались случайно, но с сохранением уже проигранных эффектов и что бы пока все не пройдут, уже проигранные больше не воспроизводились?
Я вообще не понимаю, зачем их сделали случайно.
Я у себя (на МЕГЕ) переделал, чтобы по кругу были.
 

Koteyka 🐱

★★★★★★✩
Команда форума
27 Окт 2019
935
556
54
Днепр, Украина
firelamp.pp.ua
Я б себе такое делать не стал.
А зря. Я не раз замечал, что при интервале, например, 10 минут выборе, например, 10-ти эффектов, какой-то эффект может повториться трижды-четырежды, а какой-то или какие-то совсем не показаться.
 

Сотнег

★★★★★★★
15 Янв 2020
4,124
1,439
@Belokota, я добавил такую возможность. В следующей версии будет.
Но лично мне не нравится идея тратить на массив отыгравших эффектов ресурсы контроллера.
 
  • Лойс +1
Реакции: Belokota

vad14

✩✩✩✩✩✩✩
7 Апр 2020
10
5
@vad14, NTP работает практически всегда
Проблема в том что смещение во времени происходит постепенно т.е. сначала разница одна минута..2..5..и так до времени опроса(по умолчанию 30мин) через сутки разница уже стабильно 30 минут. Я могу конечно установить частоту опроса НТП сервера 1 минуту(если сервер не забанит), тогда и точность будет 1 минута.
GMT у меня указан верно...
 

Palpalych

★★★★★✩✩
24 Дек 2019
765
404
@vad14, значит время, после синхронизации с NTP исчисляется только внутренним осцилятором, а он имеет большую погрешность...

@Сотнег, ну, на такую фичу можно потратить менее 32 байтов - не так много
 

Palpalych

★★★★★✩✩
24 Дек 2019
765
404
В попытках оптимизации размера переменных кода выйдет на килобайт.
Да ладно?

C++:
uint8_t usedEffects[32]; //для 256 эффектов
// получить флаг эффекта
getUsedEffect =  usedEffects[effAddr>>3]  & (0x01 << (effAddr & 0x07));
// сбросить флаг эффекта
usedEffects[effAddr>>3] &= (~(0x01 << (effAddr & 0x07)));
// установить флаг эффекта
usedEffects[effAddr>>3] |= (0x01 << (effAddr & 0x07));
Как то так... Не проверял, но ход мысли такой
 
Изменено:
  • Лойс +1
Реакции: Belokota

bumba.FL

✩✩✩✩✩✩✩
26 Фев 2020
13
4
@bumba.FL, эти эффекты не постоянно опрашивают состояние своих настроек.
Вообще архитектором прошивки предусмотрено, чтобы после манипуляций с настройками
поднимались флажки о том, что настройки изменены, что их нужно применить к эффектам и ещё сохранить в память.
Одной строчкой это не исправить.

Но яркость должна работать.
На эффекте огонь все работает: и яркость и масштаб и скорость

Не подскажите, что добавить? или это не решается в пару строк? С сенсорной кнопки меняется, но не в реальном времени, а после отжатия.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Проблема в том что смещение во времени происходит постепенно т.е. сначала разница одна минута..2..5..и так до времени опроса(по умолчанию 30мин) через сутки разница уже стабильно 30 минут. Я могу конечно установить частоту опроса НТП сервера 1 минуту(если сервер не забанит), тогда и точность будет 1 минута.
GMT у меня указан верно...
Если есть убегание - то однозначно ошибка в прошивке. Поскольку она обязана корректировать внутреннее состояние после синхронизации. В моей с этим полный порядок.

Как то так... Не проверял, но ход мысли такой
Вообще можно возложить битовые операции на контроллер, прозрачно обращаясь к соотствествующим структурам. К примеру у меня так флаги упакованы для экономии места:
Код:
#pragma pack(push,1)
 struct {
    bool MIRR_V:1; // отзрекаливание по V
    bool MIRR_H:1; // отзрекаливание по H
    bool dawnFlag:1; // флаг устанавливается будильником "рассвет"
    bool ONflag:1; // флаг включения/выключения
    bool manualOff:1;
    bool loadingFlag:1; // флаг для начальной инициализации эффекта
    bool isFaderOn:1; // признак того, что выполняется фейдер текущего эффекта
    bool manualFader:1; // ручной или автоматический фейдер
    bool isGlobalBrightness:1; // признак использования глобальной яркости для всех режимов
    bool isFirstHoldingPress:1; // флаг: только начали удерживать?
    bool startButtonHolding:1; // кнопка удерживается
    bool buttonEnabled:1; // кнопка обрабатывается если true
    bool brightDirection:1;
    bool speedDirection:1;
    bool scaleDirection:1;
    bool setDirectionTimeout:1; // флаг: начало отсчета таймаута на смену направления регулировки
    bool isStringPrinting:1; // печатается ли прямо сейчас строка?
    bool isEffectsDisabledUntilText:1; // признак отключения эффектов, пока выводится текст
    bool isOffAfterText:1; // признак нужно ли выключать после вывода текста
    bool isEventsHandled:1; // глобальный признак обработки событий
#ifdef MIC_EFFECTS
    bool isCalibrationRequest:1; // находимся ли в режиме калибровки микрофона
    bool isMicOn:1; // глобальное включение/выключение микрофона
    uint8_t micAnalyseDivider:2; // делитель анализа микрофона 0 - выключен, 1 - каждый раз, 2 - каждый четвертый раз, 3 - каждый восьмой раз
#endif
 };
 #pragma pack(pop)
 
  • Лойс +1
Реакции: vad14