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

Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

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

Комментарии

recoshet

★✩✩✩✩✩✩
15 Июн 2019
1
14
Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

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

lakec

★✩✩✩✩✩✩
5 Июл 2019
33
41
@Andrew Haronych, Отправить статус при изменении можно примерно таким образом:
В файл гуверламп.ино добавить
C++:
#include <ESP8266HTTPClient.h>

WiFiClient client;
HTTPClient http;
в файле url_init.h к примеру для вашего варианта с кнопкой включения код примерно такой


C++:
void handle_powon() {
  int powon = server.arg("powon").toInt();

  EEPROM.write(207, (byte)powon);  
  EEPROM.commit();
  server.send(200, "text/plain", "OK");
  prevMillis = millis()-_delay*60000;

  if(EEPROM.read(207) == 1){
    webSocket.sendTXT(0, "powoff");
    powonflag = true;
    http.begin(client, "http://192.168.1.37:8080/json.htm?param=udevice&type=ledlamp&power=1"); // тут формируйте нужный вам урл
  }else{
    webSocket.sendTXT(0, "powon");
    powonflag = false;
    http.begin(client, "http://192.168.1.37:8080/json.htm?param=udevice&type=ledlamp&power=0");// тут формируйте нужный вам урл
  }
}
тоже самое и обработчике кнопок.
Если нужно отправить все параметры урл создайте примерно такой

C++:
http.begin(client, "http://192.168.1.37:8080/json.htm?param=udevice&type=ledlamp&power=" +powonflag + "&currentmode=" +  currentMode + "&brightness=" +  modes[currentMode].brightness и т.д. и т.п.)
ЗЫ. И поменяйте у себя в обработчике кнопки включения EEPROM.read(210) на EEPROM.read(207). 210 адрес уже используется.

Код не проверял, дал примерный для понимания принципа
 
  • Лойс +1
Реакции: Andrew Haronych

private131

✩✩✩✩✩✩✩
20 Июл 2019
8
0
Здравствуйте! Прошу не пинать, новичок. Помогите...
Загрузил 1.4
выдает это
In file included from C:\Users\РќРёРє\Desktop\GyverLamp-master\firmware\GyverLamp_v1.4\GyverLamp_v1.4.ino:73:0:

C:\Program Files (x86)\Arduino\libraries\FastLED/FastLED.h:14:21: note: #pragma message: FastLED version 3.002.009

# pragma message "FastLED version 3.002.009"

^

In file included from C:\Program Files (x86)\Arduino\libraries\FastLED/FastLED.h:65:0,

from C:\Users\РќРёРє\Desktop\GyverLamp-master\firmware\GyverLamp_v1.4\GyverLamp_v1.4.ino:73:

C:\Program Files (x86)\Arduino\libraries\FastLED/fastspi.h:115:23: note: #pragma message: No hardware SPI pins defined. All SPI access will default to bitbanged output

# pragma message "No hardware SPI pins defined. All SPI access will default to bitbanged output"

^

Archiving built core (caching) in: C:\Users\D927~1\AppData\Local\Temp\arduino_cache_702275\core\core_esp8266_esp8266_generic_xtal_80,vt_flash,exception_disabled,ssl_all,ResetMethod_ck,CrystalFreq_26,FlashFreq_40,FlashMode_dout,eesz_4M,led_2,sdk_nonosdk221,ip_hb2f,dbg_Disabled,lvl_None____,wipe_none,baud_921600_bbee046b8701ef351fdc8fb34ce06551.a
Скетч использует 326824 байт (31%) памяти устройства. Всего доступно 1044464 байт.
Глобальные переменные используют 43696 байт (53%) динамической памяти, оставляя 38224 байт для локальных переменных. Максимум: 81920 байт.
esptool.py v2.6
2.6
esptool.py v2.6
Serial port COM7
Connecting....
Chip is ESP8266EX
Features: WiFi
MAC: 84:f3:eb:cb:3f:61
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 330976 bytes to 235484...

Writing at 0x00000000... (6 %)
Writing at 0x00004000... (13 %)
Writing at 0x00008000... (20 %)
Writing at 0x0000c000... (26 %)
Writing at 0x00010000... (33 %)
Writing at 0x00014000... (40 %)
Writing at 0x00018000... (46 %)
Writing at 0x0001c000... (53 %)
Writing at 0x00020000... (60 %)
Writing at 0x00024000... (66 %)
Writing at 0x00028000... (73 %)
Writing at 0x0002c000... (80 %)
Writing at 0x00030000... (86 %)
Writing at 0x00034000... (93 %)
Writing at 0x00038000... (100 %)
Wrote 330976 bytes (235484 compressed) at 0x00000000 in 5.5 seconds (effective 481.6 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

Так должно быть??
Телефон не видит вайфай от платы. В чем может быть проблема??
Плата эта https://ru.aliexpress.com/item/32521100830.html?spm=a2g0s.9042311.0.0.4ba633edzRLCBb
Настройки прилагаю.
На светодиодной матрице моргает набор светодиодов с периодичностью около 5 секунд на кнопку не реагирует
На сайте вычитал про пины 2 и 4. Кнопка идет на D2, а управление на D4? Все верно??
В прошивке вот так ведь
#define LED_PIN 2 // пин ленты
#define BTN_PIN 4
 

Вложения

  • 131.9 KB Просмотры: 52
Изменено:
.......................................
На сайте вычитал про пины 2 и 4. Кнопка идет на D2, а управление на D4? Все верно??
В прошивке вот так ведь
#define LED_PIN 2 // пин ленты
#define BTN_PIN 4
Да всё верно, так и должно быть.
14521.jpg
Только для такого же модуля как у Вас, в Arduino IDE, я выбираю другую плату.
 
Изменено:
  • Лойс +1
Реакции: private131

Andrew Haronych

★✩✩✩✩✩✩
17 Июл 2019
64
37
Москва
@Andrew Haronych, Отправить статус при изменении можно примерно таким образом:
не работает :( Работает! :)
Только вместо
http.begin(client, "http://192.168.1.37:8080/json.htm?param=udevice&type=command&idx=604&nvalue=1");
Запихал вот такую конструкцию:
C++:
        //-----------------------------------------------------------------------------------------------------------------------
            Serial.print("[HTTP] begin...\n");
            if (http.begin(client, "http://192.168.1.37:8080/json.htm?param=udevice&type=command&idx=604&nvalue=0")) {


            Serial.print("[HTTP] GET...\n");
            int httpCode = http.GET();

            if (httpCode > 0) {
            Serial.printf("[HTTP] GET... code: %d\n", httpCode);

            if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {
            String payload = http.getString();
            Serial.println(payload);
            }
            } else {
            Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
            }

            http.end();
            } else {
            Serial.printf("[HTTP} Unable to connect\n");
            }
        //-----------------------------------------------------------------------------------------------------------------------
Статус переключается!
Теперь нужно замутить управление через запросы и интергация с умным домом готова!
Только надо нормально оформить код и сделать настройку сервера через веб, а то сейчас это порнография )))
@Andrew Haronych,ЗЫ. И поменяйте у себя в обработчике кнопки включения EEPROM.read(210) на EEPROM.read(207). 210 адрес уже используется.
Спасибо! Исправил!

З.Ы. В прикрепленном проекте жестко прописана отправка статуса лампы на 604й IDX сервера Домотикз на адрес 192.168.1.37. Если кто решит заюзать либо правьте под себя, либо не удивляйтесь сообщениям об ошибке в сериал мониторе. Ну либо пишите кому надо пересоберу без этого дела ))) Есть вариант что всё дооформлю как положено, но это будет после того как заставлю работать весь функционал интеграции с умным домом, а это случится если уважаемый @lakec пнет меня еще и на предмет куда копать чтобы доделать управление запросами :)
 

Вложения

Изменено:

lakec

★✩✩✩✩✩✩
5 Июл 2019
33
41
еперь нужно замутить управление через запросы и интергация с умным домом готова!
С управлением вообще все просто. Просто выполняете http запрос.
Для установки выбранного эффекта http://IP_adress_lampy/saveeffect?effect=val (где val номер эффекта)
Для установки яркости http://IP_adress_lampy/volume?volume=val (где val значение яркости от 1 до 255)
Для установки скорости http://IP_adress_lampy/speed?speed=val (где val значение скорости от 1 до 255)
Для установки масштаба http://IP_adress_lampy/scale?scale=val (где val значение масштаба от 1 до 100)
Ну и т.д.
 
  • Лойс +1
Реакции: Andrew Haronych

Andrew Haronych

★✩✩✩✩✩✩
17 Июл 2019
64
37
Москва
С управлением вообще все просто. Просто выполняете http запрос.
Для установки выбранного эффекта http://IP_adress_lampy/saveeffect?effect=val (где val номер эффекта)
Для установки яркости http://IP_adress_lampy/volume?volume=val (где val значение яркости от 1 до 255)
Для установки скорости http://IP_adress_lampy/speed?speed=val (где val значение скорости от 1 до 255)
Для установки масштаба http://IP_adress_lampy/scale?scale=val (где val значение масштаба от 1 до 100)
Ну и т.д.
Йошкен код! )))) От что значит в первый раз за рулем решил покодить ) без пинка так бы и чесал репу... )))
Благодарствую! Дальше самое для меня сложное будет это веб морда ) не дружу я с версткой, но там задачи уже понятные )
 

Aleksys77

✩✩✩✩✩✩✩
17 Июл 2019
2
1
Собственно, просто смотреть в монитор порта, там должен появиться текст с ip адресом модуля сразу после его загрузки (можете перезапустить модуль кнопкой reset, не отключая его от компьютера). Проверьте, чтобы baudrate монитора порта был 115200.
Если есть доступ к роутеру, можете посмотреть список клиентов WiFi, там тоже будут ip адреса указаны. Или поставьте на телефон любой LAN сканер, он найдёт все устройства в сети с их адресами и достаточно понятными названиями.
Спасибо, разобрался. Однако обнаружил один интересный факт о ленте с адресными светиками, в выключеном состоянии лампы они таки потребляют ток, у меня матрица 12х12, с выключенной лампой по кнопке ток потребления 130мА, что не айс, хорошо бы в цепь питания ключ на полевичке завести с управлением от ESP. Выключил лампу- контроллер гасит светики а потом полевик закрывает, при включении -наоборот. Так лампа экономнее будет, да и вариант на аккумах можно тогда сделать, а так аккумы с выключенной лампой сядут быстренько.
 
  • Лойс +1
Реакции: malec

Andrew Haronych

★✩✩✩✩✩✩
17 Июл 2019
64
37
Москва
Благодаря уважаемому @lakec частично сделал интеграцию с сервером домашней автоматизации Domoticz.
На данный момент поддерживается только вкл/выкл и настройка в самом скетче. В планах сделать полную поддержку с режимами и настройку через веб морду.
Тут всё просто.
Ищем вот такие строчки
C++:
// ============= НАСТРОЙКИ =============
#define USE_DOMO_SRV 1        //Если хотите использовать сервер Domoticz
#define S_IP "192.168.1.37"   //Адрес сервера
#define S_PORT 8080           //Порт сервера
#define IDX 604               //IDX переключателя на сервере
И прописываете свои параметры. Если не знаете что такое Domoticz и нафига он нужен то USE_DOMO_SRV указываем 0
Где брать IDX переключателя смотри в настройках сервера
Итак у Вас уже есть сервер Domoticz. Если нет то смотри что выделено красным в предыдущем спойлере!
Настройка -> Оборудование
Добавляем Dummy девайс если его еще нет. Если уже есть можно воспользоваться им. Жмем кнопку "Создать виртуальные датчики"
Screenshot_2019-07-21 Domoticz.png
Имя на свой вкус, тип "Переключатель"
Screenshot_2019-07-21 Domoticz1.png
Готово! Далее идем на страницу "Переключатели" где находим свой выключатель. Открываем настройки
Screenshot_2019-07-21 Domoticz3.png
Тут необходимо прописать действия для включения и выключения лампы.
http://192.168.1.87/powon?powon=1 - Включить
http://192.168.1.87/powon?powon=0 - Выключить
Адрес, соответственно, подставляем свой!
Теперь нам нужен IDX этого переключателя. Для этого идем
Настройка -> Устройства
Screenshot_2019-07-21 Domoticz4.png
Готово! Можно включать/выключать лампу как руками, так использовать ее в сценариях автоматизации!
Также в данном проекте добавлен режим белого света и возможность включать/выключать лампу из собственной веб-морды.
Данное поделие собрано на основе реализации @lakec. Благодарность ему за его труды и помощь в процессе! :)
 

Вложения

Изменено:
  • Лойс +1
Реакции: МихаилУ и lakec

shvak

✩✩✩✩✩✩✩
2 Май 2019
8
8
ребят, не получается подключится через статический локальный IP. через точку доступа работает

UPD: решил проблему. локальный адрес моего роутера зканчивается на 0.1.
поменял здесь.


и статический ip лампы 192.168.0.66
И у меня с этим тоже были проблемы. Получил неверные данные. Пришлось вручную всё править. Причём, пришлось в коде менять не "...только последнюю цифру".

У меня так:
byte IP_AP[] = {192, 168, 100, 1}; // статический IP точки доступа (менять только последнюю цифру)
byte IP_STA[] = {192, 168, 100, 7}; // статический IP локальный (менять только последнюю цифру)
 

Andrew Haronych

★✩✩✩✩✩✩
17 Июл 2019
64
37
Москва
Еще немного про интеграцию с Domoticz для тех кому это надо.
На сервере создаем еще четыре переключателя Dummy, три диммера и один селектор.
Как обзавем селектор не важно, а имена диммеров нам понадобятся далее
Называем их например "LedLamp Яркость", "LedLamp Скорость" и "LedLamp Масштаб"
Далее идем: Настройка -> Дополнительно -> Переменные пользователя
Там создаем три пользовательские переменные которые будут хранить текущие настройки, тип "Целое"
Называем их "ll_scale", "ll_speed" и "ll_vol" соответственно
Идем: Настройка -> Дополнительно -> События
Там создаем новое событие Lua -> Device, имя любое.
В теле события удаляем все что туда подставил конструктор и вставляем код:
C++:
commandArray = {}
LedLamp_volume = 'LedLamp  Яркость';
LedLamp_speed = 'LedLamp  Скорость';
LedLamp_scale = 'LedLamp  Масштаб';
--ll_vol
--ll_speed
--ll_scale
IP = '192.168.1.87';

if devicechanged[LedLamp_volume] then
         llVolValue = otherdevices_svalues[LedLamp_volume];
         CalcValue = llVolValue*2,5;
         commandArray['Variable:ll_vol'] = tostring(CalcValue);
   runcommand = "curl http://"..IP.."/volume?volume="..CalcValue;
   os.execute(runcommand);
   print("Command= "..runcommand);
end

if devicechanged[LedLamp_speed] then
         llSpdValue = otherdevices_svalues[LedLamp_speed];
         CalcValue = llSpdValue*2,5;
         commandArray['Variable:ll_speed'] = tostring(CalcValue);
   runcommand = "curl http://"..IP.."/speed?speed="..CalcValue;
   os.execute(runcommand);
   print("Command= "..runcommand);
end

if devicechanged[LedLamp_scale] then
         llScaValue = otherdevices_svalues[LedLamp_scale];
--         CalcValue = llScaValue*2,5;
         commandArray['Variable:ll_scale'] = tostring(llScaValue);
   runcommand = "curl http://"..IP.."/scale?scale="..llScaValue;
   os.execute(runcommand);
   print("Command= "..runcommand);
end
return commandArray
Обращаем внимание на названия переключателей, переменных и ИП лампы. Сохраняем, радуемся :)
С режимами еще проще. В настройках селекторного выключателя добавляем 21 позицию и прописываем действия на каждую
Screenshot_2019-07-21 DomoticzS.png
Всё, можно пользоваться!
В Domoticz криво реализован селектор, вместо выпадающего меню ряд кнопок. Поэтому я не писал названия эффектов, а просто цифры. Всеравно смотрится это странно...
Screenshot_2019-07-21 DomoticzM.png
Осталось только прописать отправку состояния на сервер чтобы он знал в каком режиме и с какими параметрами работает лампа в данный момент по аналогии с тем как уже реализовано состояние вкл/выкл. Это дело не сложное, главное время :) Еще раз благодарность @lakec

Если кому интересно нашел тему для Domoticz в которой нормально сделан селектор
 
Изменено:

Andre128

✩✩✩✩✩✩✩
21 Июл 2019
8
2
Впервые столкнулся с этим типом модулей, взял оба и NodeMCU и Wemos D1.
Вроде все по инструкции сделал в плане настроек IDE. Заливает прошивку нормально, но сборка не работает.

Листинг
.................................................................................

In file included from C:\Users\Andre\Downloads\GyverLamp-master\GyverLamp-master\firmware\GyverLamp_v1.4\GyverLamp_v1.4.ino:73:0:

C:\Program Files (x86)\Arduino\libraries\FastLED-3.2.9/FastLED.h:14:21: note: #pragma message: FastLED version 3.002.009

# pragma message "FastLED version 3.002.009"

^

In file included from C:\Program Files (x86)\Arduino\libraries\FastLED-3.2.9/FastLED.h:65:0,

from C:\Users\Andre\Downloads\GyverLamp-master\GyverLamp-master\firmware\GyverLamp_v1.4\GyverLamp_v1.4.ino:73:

C:\Program Files (x86)\Arduino\libraries\FastLED-3.2.9/fastspi.h:115:23: note: #pragma message: No hardware SPI pins defined. All SPI access will

default to bitbanged output

# pragma message "No hardware SPI pins defined. All SPI access will default to bitbanged output"

^

Скетч использует 326888 байт (31%) памяти устройства. Всего доступно 1044464 байт.
Глобальные переменные используют 43696 байт (53%) динамической памяти, оставляя 38224 байт для локальных переменных. Максимум: 81920 байт.
esptool.py v2.6
2.6
esptool.py v2.6
Serial port COM6
Connecting....
Chip is ESP8266EX
Features: WiFi
MAC: ec:fa:bc:4c:4a:9d
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 331040 bytes to 235496...

Writing at 0x00000000... (6 %)
Writing at 0x00004000... (13 %)
Writing at 0x00008000... (20 %)
Writing at 0x0000c000... (26 %)
Writing at 0x00010000... (33 %)
Writing at 0x00014000... (40 %)
Writing at 0x00018000... (46 %)
Writing at 0x0001c000... (53 %)
Writing at 0x00020000... (60 %)
Writing at 0x00024000... (66 %)
Writing at 0x00028000... (73 %)
Writing at 0x0002c000... (80 %)
Writing at 0x00030000... (86 %)
Writing at 0x00034000... (93 %)
Writing at 0x00038000... (100 %)
Wrote 331040 bytes (235496 compressed) at 0x00000000 in 5.5 seconds (effective 479.0 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
......................................................................................................................
В порт после ресета выдает
port.jpg
Матрица молчит... Постоянное свечение синего светодиода модуля.
Подскажите, что может быть?
 
  • Лойс +1
Реакции: artist515

gunner47

★★★★★✩✩
18 Июн 2019
253
393
Впервые столкнулся с этим типом модулей, взял оба и NodeMCU и Wemos D1.
Вроде все по инструкции сделал в плане настроек IDE. Заливает прошивку нормально, но сборка не работает.

Матрица молчит... Постоянное свечение синего светодиода модуля.
Подскажите, что может быть?
Пока всё выглядит правильно со стороны модуля. Скорей всего что-то неправильно с подключением или с матрицей.
 

Andre128

✩✩✩✩✩✩✩
21 Июл 2019
8
2
@Andre128, меню инструменты - плата какая выбрана?
WeMos D1R1, как и рекомендовано, в т.ч. все настройки.

Пока всё выглядит правильно со стороны модуля. Скорей всего что-то неправильно с подключением или с матрицей.
Здесь подключить неправильно сложновато ;)
Дело в том, что сомнения появились до сборки. Пока матрица в пути была, прошил модули. А в порту абракадабра... Насторожило.
Win 7 Max, 64
прямо и не знаю.... Причем все три модуля- два Wemos D1 и один NodeMCU выдают в монитор порта одно и то же. И то, после ресета.
Обычно модули при включении монитора порта ответ выдают, а тут только после ресета.
 

Andrew Haronych

★✩✩✩✩✩✩
17 Июл 2019
64
37
Москва
Здесь подключить неправильно сложновато ;)
Дело в том, что сомнения появились до сборки. Пока матрица в пути была, прошил модули. А в порту абракадабра... Насторожило.
Win 7 Max, 64
прямо и не знаю.... Причем все три модуля- два Wemos D1 и один NodeMCU выдают в монитор порта одно и то же. И то, после ресета.
Обычно модули при включении монитора порта ответ выдают, а тут только после ресета.
Всё они нормально выдают. Эта строчка с мусором перед WiFi manager и должна быть. А вот то что после нее нет ничего это странно. Точка доступа точно не создалась? Список сетей смотрели? И я бы не исключал ошибку в подключении. Тут у некоторых путаница с пинами в том что в прошивке 2 пин матрица 4 кнопка, а по картинке d2 кнопка d4 матрица. А посмотреть что 2 пин выведен на d4, а 4 на d2 мало кто соображает
nodemcu_pin_map.jpg
 

gunner47

★★★★★✩✩
18 Июн 2019
253
393
Судя по строке "WiFi manager" правильно. Абракадабра выводится в порт, потому что baudrate при прошивке (обычно 921600) не совпадает с тем, что выставлен в мониторе порта (115200). Последние команды после заливки прошивки, например, команда перезагрузки модуля, интерпретируются монитором порта как непонятные символы. После прошивки и рестарта выполняется скетч, в нём Serial инициализируется на 115200, это совпадает с настройкой монитора порта, поэтому дальше текст выводится корректно.
 

Andre128

✩✩✩✩✩✩✩
21 Июл 2019
8
2
скорость порта правильно выставлена?
Да, 115200

Всё они нормально выдают. Эта строчка с мусором перед WiFi manager и должна быть. А вот то что после нее нет ничего это странно. Точка доступа точно не создалась? Список сетей смотрели? И я бы не исключал ошибку в подключении. Тут у некоторых путаница с пинами в том что в прошивке 2 пин матрица 4 кнопка, а по картинке d2 кнопка d4 матрица. А посмотреть что 2 пин выведен на d4, а 4 на d2 мало кто соображает

Да, все верно подключено D4- управление матрицей, D2- кнопкой. В приложении схема распайки чуть не в 3х плоскостях нарисована для особо одаренных. ;)
Модуль прошивается, по протоколу все в порядке, молчит в мониторе ,зараза. Был бы один такой, а ведь все три....
Подключал только один.
Но если все правильно, то хоть в мониторе бы ответили, А так..
Есть в загашнике под XP машина. На ней попробовать прошить надо .
!!! в сетях появился---- AutoConnectAP ...... :)

Шьется то в режиме точки доступа (ESP_MODE == 0) и должен быть GyverLamp, со всеми вытекающими..

значит, по факту не шьется... А по рапорту- все ок.

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

Andrew Haronych

★✩✩✩✩✩✩
17 Июл 2019
64
37
Москва
живет своей жизнью.
...
сбрасывает, в вай фае - пусто
просто прикола ради даблклик по кнопке. Если в монитор выдаст строку с цифрами значит прошилось и работает. А остальные проблемы у вас с матрицей и вайфаем. Матрицу бы проверить подключив к любому контроллеру для ленты, сразу понятно станет. Может у вас там четвертый диод накрылся и остальная матрица поэтому и молчит. А эти приколы в мониторе от того что модуль пытается подключиться к сети из настроек скетча, а сети такой у вас и нет. Совет, прошейте альтернативную прошивку. Тут выкладывались с правленым поведением вайфая при старте. Если не сможет подключиться к заданной точке создаст свою и будет возможность настроить. У Гайвера прошивка в этом смысле кривая, сменить сеть можно только перепрошивкой.
З.Ы. Ну или кусочек ленты на светодиодах ws2812 подключить к плате. Хотябы на десяток точек, работать будет всеравно. Сразу всё понятно станет
 

Flint

✩✩✩✩✩✩✩
14 Июл 2019
1
0
Доброго времени суток. Рябят может кто нибудь допилит скетч и приложение в режиме с точкой доступа настройку времени а то там с будильником все отваливается. (можно через приложении получать время из интернета и отправлять в лампу или сделать настройку времени в приложении). Для меня это сложно и долго.
 

Mazay

✩✩✩✩✩✩✩
19 Июл 2019
13
1
ПОЖАЛУЙСТА, не пропусти этот комент.

Алекс, у меня при подключении к созданному wifi не открывается страница конфигурации, да и в коде я не нашел, где она генерируется. Подскажи как это должно работать, а то очень интересно!!! И есть идеи для проектов с такой страницей, но в сети не нашел информации. Направь в нужном направлении. Спасибо.
В скетче указывается адрес конфигурации Wi-Fi, смотри там что-то типа 192.168.4.1
 

Dronolet

✩✩✩✩✩✩✩
26 Июн 2019
2
0
Проблема с сервером времени. Лампа замирает каждые 3 секунды, а время так и не устанавливается. Версия 1.4, NodeMCU, библиотека NTPClient установлена. Подскажите куда копать. С программированием, к сожалению, пока на Вы.
 

Lier Phoenix

✩✩✩✩✩✩✩
23 Июл 2019
1
0
Приветствую всех! Мне больше понравились эффекты в 1 версии лампы (без Wi Fi), можно ли их перенести в данную версию или достаточно будет использовать 4 куска ленты вместо матрицы?
 

Александр Вайдуров

★✩✩✩✩✩✩
11 Июл 2019
22
42
Отличная лампа получилась. Как обстоит дело с уровенем приема сигнала WiFi? По моим прикидкам он тем будет ниже, чем ниже плата будет опущена в металлический стакан.
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
@Александр Вайдуров, у меня получилось где то по середине в стакане, но стакан не заземлён я думаю и ви фи мешать не будет , до дому доберусь протестирую))), а так его можно к антенне подпаять и вообще будет с другой планеты добивать)))