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

Ivan Seal

✩✩✩✩✩✩✩
13 Фев 2020
6
0
Не успел подключить плату к домашнему вайфаю, а кнопки вообще нет за безнадобностью, можно ли как-то вернуть esp_mode на 1 без кнопки?
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@mason, с п-канальным тоже не все гладко... хватит ли уровня выхода платы на полное открытие? вот в чем вопрос...
На счет ESP_MODE = 0 - перепрошейся со сбросом всех настроек, может старые данные мешают работе?

@kDn, Спасибо! Будем работать! Кстати, почитал про память в ESP - говорят что ее 50кБ пользовательской, так что за глаза, а скорости контроллера как минимум в 10 раз выше классической ардуины.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@mason, @Ivan Seal,
ESP_MODE = 1 это дефолтное значение, почему бы вам не выбрать вариант перезаписи со стиранием еепром, раз кнопки нет?
 
  • Лойс +1
Реакции: Ivan Seal

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@Ivan Seal, Без кнопки возникает дилемма - либо не подключишь телефон по ESP_MODE 1, либо будешь сидеть только в сети LedLamp без интернета. ))) По другому никак
 

mason

✩✩✩✩✩✩✩
28 Янв 2020
49
1
@Palpalych, посмотрю какие мосфеты есть и проверю за одно)
@kDn, вопрос в том почему мои измененные константы не меняются)))) сейчас попробую сделать сброс
лично у меня проблема в чемто другом увы(

поставил #define ESP_RESET_ON_START (true) и кнопки соответственно нет, платка должна была сбросить настройки и это сказать в ком порт а этого не делает, а тупо включается как АП и все.
 
Изменено:

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@mason, какой загрузчик у тебя?

если не оригинальный, то добавь setup() строчки после // КНОПКА

C-like:
  // КНОПКА
#ifndef ESP_USE_BUTTON
  if (WiFi.SSID().length() == 0) needconfigure = true;
#endif
 
Изменено:

mason

✩✩✩✩✩✩✩
28 Янв 2020
49
1
@Palpalych, с вашим кодом нечего не изменилось вернул на место пишет вот что
*WM: settings invalidated
*WM: THIS MAY CAUSE AP NOT TO START UP PROPERLY. YOU NEED TO COMMENT IT OUT AFTER ERASING THE DATA.
Настройки WiFiManager сброшены
Рабочий режим лампы: ESP_MODE = 0
Используется статический IP адрес WiFi точки доступа
Старт в режиме WiFi точки доступа
IP адрес: 192.168.4.1
Порт UDP сервера: 8888
но вот свой режим падла не поменяла...
буду уже завтра гуглить как форматнуть память контроллера видел гдето что форматируют утилитой но там нужна же прошивка чистая
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@mason,
C++:
*WM: settings invalidated
*WM: THIS MAY CAUSE AP NOT TO START UP PROPERLY. YOU NEED TO COMMENT IT OUT AFTER ERASING THE DATA.
Эту строчку выводит когда модуль ловит глюк во время подключения к сети. С загрузчиком Gunner47 - после этого наступает ресет.
Частично решается с обновлением библиотеки WiFi.Manager на последнюю.

1581607268334.png
 
  • Лойс +1
Реакции: mason

mason

✩✩✩✩✩✩✩
28 Янв 2020
49
1
@Palpalych, да у меня чисто прошивка и бабла гайнер47, качал архив. НО раньше то нормальны было, я заметил прикол с айпишником что не могу изменить потом ESP_MODE не мог 0 поставить а вот теперь не могу ESP_MODE вернуть)
капризная платка у меня однако
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@mason, у всех капризные... но, по большой части Wemosы

доработка, что указывал, актуальна на мой альтернативный загрузчик... но он делался только для ESP_MODE = 1 и тестировался с кнопкой.
https://community.alexgyver.ru/thre...proshivki-ot-gunner47.2418/page-23#post-26670 - немного поправил для работы без кнопки.
 
Изменено:

Ivan Seal

✩✩✩✩✩✩✩
13 Фев 2020
6
0
@mason, если у вас esp8266, создайте скетч с этим кодом и загрузите, потом обратно грузите прошивку, мне помогло
(код не мой, просто загуглил)
#include <EEPROM.h>
#include <ESP8266WiFi.h>

// sizeBytes being the number of bytes you want to use.
// It's defined with "#define sizeBytes"
// Size can be anywhere between 4 and 4096 bytes (Default for ESP8266_deauther = 4096)
#define sizeBytes 4096

// change it for lower or higher endByte (Default for ESP8266_deauther = 4096)
// normaly it's the same as sizeBytes
#define endByte 4096

// change it for lower or higher startByte (Default = 0)
#define startByte 0

unsigned long ok = 0;
unsigned long nok = 0;
unsigned long tok = 0;


void setup()
{
Serial.begin(115200);
EEPROM.begin(sizeBytes);

delay(100);

Serial.println("**********************************************************************************************************");
Serial.println("");
Serial.print(" Write a char(255) / hex(FF) from byte ");
Serial.print(startByte);
Serial.print(" to ");
Serial.print(endByte - 1);
Serial.print(" into the EEPROM with a defined size of ");
Serial.print("");
Serial.print(sizeBytes);
Serial.println(" Bytes");
Serial.println("");
Serial.println("**********************************************************************************************************");
Serial.println("");

Serial.println(" testing EEPROM for written bytes");
Serial.println("");

for (int i = startByte; i < endByte; ++i)
{
if (EEPROM.read(i) == 255) {
++ok;
} else {
++nok;
}
}

Serial.printf(" empty bytes: %6d\r\n", ok);
Serial.printf(" not empty bytes: %6d\r\n", nok);
Serial.println("");
Serial.println("**********************************************************************************************************");
Serial.println("");

Serial.println("**********************************************************************************************************");
Serial.println("");
Serial.println(" Start clearing EEPROM... - Please wait!!!");
Serial.println("");
Serial.println("**********************************************************************************************************");

delay(1000);

// write a char(255) / hex(FF) from startByte until endByte into the EEPROM
for (int i = startByte; i < endByte; ++i) {
EEPROM.write(i, -1);
}

EEPROM.commit();

delay(1000);

Serial.println("");
Serial.println(" testing EEPROM for clearing");
Serial.println("");

String test;
for (int i = startByte; i < endByte; ++i)
{
if (EEPROM.read(i) == 255) {
++tok;
}
}
Serial.println("**********************************************************************************************************");
Serial.println("");
if (tok = endByte - startByte) {
Serial.println(" EEPROM killed correctly");
} else
Serial.println(" EEPROM not killed - ERROR !!!");

Serial.println("");
Serial.println("**********************************************************************************************************");
Serial.println("");
Serial.println(" Ready - You can remove your ESP8266 / LoLin");
Serial.println("");
Serial.println("**********************************************************************************************************");
}

void loop()
{
}
 

Ivan Seal

✩✩✩✩✩✩✩
13 Фев 2020
6
0
Если не секрет, где в коде находится ограничение по питанию?
 

mason

✩✩✩✩✩✩✩
28 Янв 2020
49
1
@Ivan Seal, мне помогло через ардуино форматнуть
#define CURRENT_LIMIT (3000U) // лимит по току в миллиамперах, автоматически управляет яркостью (пожалей свой блок питания!) 0 - выключить лимит
 
  • Лойс +1
Реакции: Ivan Seal

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Если не секрет, где в коде находится ограничение по питанию?
C++:
#define BRIGHTNESS            (255U)                        // стандартная максимальная яркость (0-255)
#define CURRENT_LIMIT         (2500U)                       // лимит по току в миллиамперах, автоматически управляет яркостью (пожалей свой блок питания!) 0 - выключить лимит
Это две основные настройки влияющие на потребление. Для снижения потребления в выключенном состоянии - только мосфет и отключение матрицы через него. Так же следует учитывать что FastLed может не корректно рассчитывать потребление и завышать его немного... Поэтому желательно перепроверять на белой лампе в полной яркости.
 
  • Лойс +1
Реакции: Ivan Seal

trayko67

★✩✩✩✩✩✩
10 Фев 2020
32
15
@kDn, @Palpalych, я спросил, патомуща ета ошибка появилась в сетапе. Думаю надо положит ета переменная на верх.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@trayko67, глобальная яркость есть только в моем варианте прошивки. В оригинальном от Ганнера ее нет.
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@trayko67,
Попробуй просто
C:
#ifndef ESP_USE_BUTTON
  lampMode = MODE_DEMO;
#endif
kDn, утверждает, что этого должно быть достаточно.
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@kDn, кстати, думаю нужно ввести еще один режим работы лампы MODE_SLEEP это когда она выключена и экран погашен
В этом режиме можно прописать все разнообразные и многочисленные процедуры с мосфетами (свести в одну процедуру управления), а основной цикл заточить только на опрос кнопки и таймеров при пониженном энергопотреблении

И еще, пока как мысль. А что если режим DEMO оформить как отдельный эффект? Мы тем самым разгрузим обработчик нажатой кнопки (управления питания) от не нужных проверок в каком режиме работает лампа, а? теперь проще будет - включили лампу - выбрали демо режим, а он сам уже управляет переключениями. То же самое касается рассвета - таймер сработал и включился Эффект рассвет!
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@Palpalych, мосфет прикручу чуть позже, пока руки не доходят до паяльника... Ну а после этого можно будет нормально отладить эту часть.
Что же касается MODE_SLEEP - то это будет дополнительной сущностью к уже имеющимся dawnFlag, ONflag, manualOff - что по мне так будет не то чтобы упрощением, а скорее всего усложнением))). Свести же все к одному флагу нельзя, поскольку назначение у всех этих флагов немного разное...

Либо же нужно будет все остальные режимы (будильник, время, таймер выключения) тоже вводить и описывать логику переключения между ними...
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@kDn, Вот и я про тоже. Мне кажется сильно все перегружено флагами - нужно упростить. По поводу будильника/демо/рассвета... я уже сказал выше (поправил предыдущее сообщение) если кратко - их все нужно прописать как эффекты. Но не включать в общий список. А для рассвета, если он будет как эффект, то у меня есть отличная задумка )))