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
206
ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 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, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
И даже если не заработает сразу, сделаю так , чтобы работал. :)
Только что подключил GD3200B, который еще с месяц назад доехал))). Вижу что сходу не работает ADVERT - т.е. поверх проигрываемого звука озвучка времени не выводится, переключение треков отрабатывает вроде нормально. Звук эффектов/MP3 плеер - тоже корректно. Но вот время проговаривать не хочет, может еще и будильники отвалились. Буду разбираться :)
 

andree75

✩✩✩✩✩✩✩
26 Фев 2020
28
4
Я когда пробовал прошивку от @SlingMaster не мог найти настройки цикла ни на вэб странице, ни в приложении. Эффекты крутились сами с интервалом 5-7 сек. Кнопки у меня нет, закоментирована. Перешёл на прошивку @alvikskor. Правда по эффектам есть критика, но так, мысли вслух, не упрек - эфф"Песочные часы" ни о чем, эфф "Вино" было бы хорошо сделать в виде наполнения бокала колыхающейся жидкостью вместо ступенчатого потемнения, эфф"Завиток" тоже так себе. Жаль что убрали радуги гор. и верт.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@andree75,

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

У прошивки от @SlingMaster есть собственное приложение. Пользуйтесь им.


Горизонтальную и вертикальную радуги не убирали, а объединили с обычной.
 
  • Лойс +1
Реакции: alvikskor

SlingMaster

★★★✩✩✩✩
22 Апр 2021
220
144
Kharkiv, Ukraine
@Сотнег, стандартная 16х16. Кстати насчёт перезагрузки может и правда, вроде после последнего лампа показывает бегущую строку с ip адресом как при включении и потом тишина. Как отследить это можно? Может логи где посмотреть?
Если вы исользуете мою последнюю прошивку
если появляется IP адрес то это лампа совершила перезагрузку, причина не понятна такого быть не должно попробуйте прошиться по новому
2.хорошо бы после прошивки поставить настройки эффектов по умолчанию

По поводу эффектов, что не нравится можно выбросить темболее что сейчас это делается очень просто без танца с бубном
Я когда пробовал прошивку от @SlingMaster не мог найти настройки цикла ни на вэб странице, ни в приложении. Эффекты крутились сами с интервалом 5-7 сек. Кнопки у меня нет, закоментирована. Перешёл на прошивку @alvikskor. Правда по эффектам есть критика, но так, мысли вслух, не упрек - эфф"Песочные часы" ни о чем, эфф "Вино" было бы хорошо сделать в виде наполнения бокала колыхающейся жидкостью вместо ступенчатого потемнения, эфф"Завиток" тоже так себе. Жаль что убрали радуги гор. и верт.
По поводу песочных часов и Завитка, скорее всего у вас стекло на лампе ч плохим рассеиванием, поэтому может быть выглядит не очень, а мне очень даже нроавится
Вино первый эффект который я вообще сделал никогда не прогграммируя на C++, буду очень рад у вас поучиться сделайте лучше

по поводу автосмены эффектов в прошивке была ошибка стояло по умолчанию 10 сек хотя в веб интерфейсе время задавыалось, это уже поправлено
Screenshot 2022-01-28 115538.png

задать можно здесь
режим USE_SHUFFLE_FAVORITES работает скажем так через задницу, он мне не интересен я его не поддерживаю, он работает только с приложением от котейки, но сейчас приложение от котейки не поддерживает весь список эффектов, если всетаки вам оно нравится то можете перелопать список как это сделать описано в прошивке и документации
есть еще один нюанс с циклом, код который изначально был реализован на лампе сейчас отключается если работаете с моим приложением
это связано из за конфликта работы в группе, пришлось оключить что бы лампы не тянули на себя одеяло и не пытались переключать эффекты

• PS песочные часы корректно работают только в том случае если светодиоды в матрице расположены горизонтально
 

SlingMaster

★★★✩✩✩✩
22 Апр 2021
220
144
Kharkiv, Ukraine
kostyamat
я тут ваши наработки со @stepko
https://editor.soulmatelights.com/gallery/1684-test3
адаптировал под свою прошивку, хотел обнародовать для обкатки
Вы не против?

и попутно вопрас как в C++ для Arduino красиво прочитать содержимое бинарного файла из файловой системы в array типа байт?
 
Изменено:

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632

@SlingMaster,
Давайте так, пока не обнародовано у нас, вы обождете. Ок? Абидна бить не первым, разработав что-то. Во вторых, сам концепт еще не доработан до релизного состояния, там есть нюансы. Ну и в третьих - инструмент для перевода в формат rgb332 пока не публичен. Поэтому плеер пока бесполезен.
Подведем итоги: сделаем у себя, выложим инструментарий, - забирайте не стесняясь. А пока не спешите.
 

SlingMaster

★★★✩✩✩✩
22 Апр 2021
220
144
Kharkiv, Ukraine
kostyamat

логично, ок
подскажите как из файла прочитать в byte array
файл я считал, как запихнуть теперь в array может быть разного размера
C++:
void readBinFile(String fileName, size_t len ) {
  uint8_t* frameBuf = nullptr;
  File binFile = SPIFFS.open("/" + fileName, "r");
  if (!binFile) {
    LOG.println("File not found");
    return;
  }
  size_t size = binFile.size();
  if (size > len) {
    binFile.close();
    LOG.println("Large File");
    return;
  }
  //String temp = binFile.readByte();
  binFile.close();
  LOG.printf_P(PSTR("File size • %08d\n"), size);
  return;
Можно немного попозже?
да конечно, не заметил вашего сообщения сразу
 

SamsonV

✩✩✩✩✩✩✩
4 Дек 2020
53
4
Приветствую, огромная просьба подскажите как переназначить кнопку с D3 на D4, прошивка @alvikskor

Подозреваю проблема в плате
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
В файле (закладке) constant.h. Только не на D4. D3, D1, D6. Хотя вряд-ли проблема в плате (порте). Кнопка какая? Фото. Если синяя, то у неё логика как у обычной физической.
 

SamsonV

✩✩✩✩✩✩✩
4 Дек 2020
53
4
@alvikskor,отмуствует библиотека dfrobotdfplayermini уже нашел в менеджере библиотек,
вроде пока компилируется, а где именно менять пин кнопки?
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@SamsonV,
Если у вас в архиве нет этой библиотеки, скачайте ещё раз архив. Позавчера были исправлены существенные ошибки с эффектами и добавлена эта библиотека. Главное, исправлены ошибки!

а где именно менять пин кнопки?
В файле constant.h . Там комментарии на русском
 

sander33

✩✩✩✩✩✩✩
11 Янв 2022
9
0
@alvikskor, Приветствую. Собрал, звук не работает, в мониторе порта пишет, что плеер не подключен. Если замыкать пины 9.11 на землю, файлы воспроизводит и если во время воспроизведения при запущенном приложение регулировать громкость качелькой, то она регулируется. Содержимое папки Sd actual распаковал в корень карты памяти или надо было вместе с папкой? Плеер вот такой
IMG_20220129_000905.jpg
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@sander33,
Я такой не проверял. Не нашёл у нас в городе таких. Попробуйте в файле sound_mp3.ino вместо
C++:
void mp3_setup()   {
  mp3.begin(9600);
  if (myDFPlayer.begin(mp3)) {                                              // Проверяем, есть ли связь с плеером и, если нет, то
сделать так
C++:
void mp3_setup()   {
  delay (2000);   
  mp3.begin(9600);
  delay (2000);   
  if (myDFPlayer.begin(mp3)) {                                              // Проверяем, есть ли связь с плеером и, если нет, то
Просьба отписаться по результату. Без плеера на руках приходится работать вслепую.
 

sander33

✩✩✩✩✩✩✩
11 Янв 2022
9
0
Просьба отписаться по результату.
Проверил. Первое с чем столкнулся, это то, что при подключенном плеере не хочет шить, типа не видит порт, и с зажатой кнопкой флэш и по воздуху, что вызовет в дальнейшем проблемы если понадобится прошить по воздуху. Отпаял плюс от плеера и все прошилось, возможно достаточно одного из тх или rx, не проверял.
По поводу воспроизведению файлов, заменил строчки как Вы написали, но ничего не поменялось, Потом в какой-то момент заиграло. Вообщем методом тыка вычислил, если зайти в вэб интерфейс и нажать перезагрузить устройство, то начинает работать плеер и на старом варианте и на измененном, но если выключить питание лампы и потом включить, то работать не будет пока опять не нажать перезагрузить в вэб интерфейсе.
И еще, есть какие-нибудь требования к файлам времени? заменил на свои и между часами и минутами проскакивает озвучка эффектов.
Еще если в эффекте белый свет нажать шесть раз кнопку, то говорит только минуты, часы не говорит, хотя диод мигает, похоже тишину воспроизводит.
 
Изменено:

Виктор_66

✩✩✩✩✩✩✩
19 Янв 2022
6
2
@sander33,добавьте задержку после инициализации плеера
void mp3_setup() {
mp3.begin(9600);
delay(3000);
if (myDFPlayer.begin(mp3)) { // Проверяем, есть ли связь с плеером и, если нет, то
myDFPlayer.setTimeOut(500); // Указываем время отклика плеера на команды в 500мс
myDFPlayer.EQ(DFPLAYER_EQ_NORMAL); // Устанавливаем эквалайзер в положение NORMAL
myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD); // Устанавливаем источником SD-карту
mp3_folder_last=mp3_folder;
mp3_timer = millis();
delay(1000);
myDFPlayer.volume(eff_volume); // Устанавливаем громкость равной 10 (от 0 до 30)
//eff_volume_tmp = eff_volume;
mp3_player_connect = true;
LOG.println (F("mp3 player подключен"));
}
else LOG.println (F("mp3 player не подключен"));
}

И я сменил пины плеера без подтяжек резисторов
#define MP3_RX_PIN (12U) // Определяем вывод RX (TX на плеере) программного последовательного порта
#define MP3_TX_PIN (13U) // Определяем вывод TX (RX на плеере) В СЛУЧАЕ ОТСУТСТВИЯ ПЛЕЕРА ЗАКОМЕНТМРОВАТЬ СТРОКУ!!!

У меня голая ESP добавку сам делаю для прошивки и работы
1.jpg2.jpg
 
Изменено:
  • Лойс +1
Реакции: alvikskor и sander33

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@sander33,
К файлам в папке Advert есть требования. Общая длинна звука 2 Сек. Первые 50 mСек и последние 250-300 mСек тишина. Иначе могут быть такие прострелы как у вас. По поводу "Не шьётся". Попробуйте перенести провод Tx с D8 на D6. Как это сделал @Виктор_66 .
То , что для включения плеера нужна перезагрузка, скорее всего говорит о том, что он не успевает инициализироваться после включения питания. Особенно, если добавить файлов на SD карту. Попробуйте заменить функцию setup
C++:
void mp3_setup()   {
  mp3.begin(9600);
  if (myDFPlayer.begin(mp3)) {                                              // Проверяем, есть ли связь с плеером и, если нет, то
    myDFPlayer.setTimeOut(500);                                             // Указываем время отклика плеера на команды в 500мс 
    myDFPlayer.EQ(DFPLAYER_EQ_NORMAL);                                      // Устанавливаем эквалайзер в положение NORMAL
    myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD);                            // Устанавливаем источником SD-карту
    mp3_folder_last=mp3_folder;
    mp3_timer = millis();
    delay(1000);
    //myDFPlayer.volume(eff_volume);                                             // Устанавливаем громкость равной 10 (от 0 до 30)
    uint8_t qwer = send_command(6,1,0,eff_volume);
    Serial.println (qwer);   
    qwer = send_command(0x43,1,0,0);
    Serial.println (qwer);
    //eff_volume_tmp = eff_volume;
    mp3_player_connect = true;
    LOG.println (F("mp3 player подключен"));
  }
  else LOG.println (F("mp3 player не подключен"));
}
на эту
C++:
void mp3_setup()   {
  mp3.begin(9600);
  delay(5000)
   (myDFPlayer.begin(mp3))                                               // Проверяем, есть ли связь с плеером и, если нет, то
    myDFPlayer.setTimeOut(500);                                             // Указываем время отклика плеера на команды в 500мс 
    myDFPlayer.EQ(DFPLAYER_EQ_NORMAL);                                      // Устанавливаем эквалайзер в положение NORMAL
    myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD);                            // Устанавливаем источником SD-карту
    mp3_folder_last=mp3_folder;
    mp3_timer = millis();
    delay(1000);
    //myDFPlayer.volume(eff_volume);                                             // Устанавливаем громкость равной 10 (от 0 до 30)
    uint8_t qwer = send_command(6,1,0,eff_volume);
    Serial.println (qwer);   
    qwer = send_command(0x43,1,0,0);
    Serial.println (qwer);
    //eff_volume_tmp = eff_volume;
    mp3_player_connect = true;
    LOG.println (F("mp3 player подключен"));
}
Это костыль, но пока так. По поводу не проговаривания часов во время белого света попробуйте все задержки delay(10); в файле sound_mp3.ino заменить на delay(50);
Я сейчас работаю над доработкой кода, но пока не на чем проверять. Да и времени на всё не хватает. Ваши эксперименты могут сильно помочь.

@Виктор_66, Спасибо. Дельный совет
 
  • Лойс +1
Реакции: vvmxx