WiFi лампа-будильник. Обсуждение прошивки от vvip-68

WiFi лампа-будильник. Обсуждение прошивки от vvip-68
Всем добрый день. Собрал светодиодную матрицу на wemos d1r1 и на прошивке от vvip-68(за прошивку огромное ему спасибо). Матрица получилась размером 102 на 16 пикселей. Захотелось управлять гирляндой с телефона, чтобы wemos был подключён к домашнему роутеру. Плата подключается к WiFi но не получает данных о погоде и данных с сервера времени. Гирлянда зависает, и плата так и не может получить данные из интернета. Монитор порта выглядит вот так:1645769623394.png
Буду благодарен любой помощи в решении проблемы.
Заранее спасибо!
 
Изменено:

Комментарии

LikePod

✩✩✩✩✩✩✩
15 Сен 2023
10
0
@vvip,
Ошибок стало меньше, но пока еще не компилируется.. Может еще чего-нибудь посоветуете?..

upd. Все скомпилировалось, спасибо большое! (Оказалось не все закоментировал)
 

Вложения

Изменено:

LikePod

✩✩✩✩✩✩✩
15 Сен 2023
10
0
Нда. Второй день ушел коту под хвост - не взлетела у меня эта гирлянда на esp32 S2 (скомпилировалась, спасибо @vvip, в COM данные отладки отправляет, но точку доступа создать не может. Точнее судя по логам - создает, но пк ее не видит). Если у кого-то заработает в данной конфигурации - дайте знать пожалуйста. Пока отправил в ящик. Вернулся к esp8266. Скажите, какой режим самый сложный для гирлянды - как понять, хватит мне 8266 на 784 пикселя или нет? Сейчас доступа к гирлянде пока нет - настраиваю через led-матрицу. в настройках поставил 16х49 светодиодов. Если эффекты выводится, и фпс не умирает - значит, что все хорошо? Есть какой-нибудь "народный стресс тест" для этой системы?
 

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@LikePod, самый стресс-тест для нее, когда начинаешь по WebUI шариться. После этого у нее как правило быстро фрагментируется память и она уходит в перезагрузку... И для ESP8266 - 764 пикселя, думаю многовато... Скорее всего не будет стабильно работать, будет часто перегружаться...

ПК точку доступа не видит... А в сети она есть? Телефон ее видит? А другой телефон?
А если запустить этот ESP32, чтобы он точку доступа создал, а на ESP8266 запустить тестовый скетч из примеров, который сети WiFi сканирует и список выводит? Она там есть? А ваша ESP32 - со встроенной антенной или к ней внешнюю подключать нужно?

По размеру требуемой памяти - самые ресурсоемкие - шумовые эффекты типа Облака, Лава и т.п. Они для работы создают в памяти квадратный массив с размерностью большей стороны. В вашем случае - 49x49x3 байта -> 7К памяти сразу отъедают... Если в это время на ESP8266 гулять по Web-интерфейсу, а еще хуже - перезагрузить его - весьма вероятно что контроллер упадет и перезагрузится по нехватки памяти. Потому что Web-сервис тоже хочет откусить память под отправку данных в сеть, а ее мало и она фрагментами
 
Изменено:

antidote

✩✩✩✩✩✩✩
16 Фев 2022
11
0
@vvip Подскажите, а почему веб-интерфейс выдает пустую страницу? Матрица сама работает, но с любого устройства - пустая страница. Включена эмуляция сд карты, загружал пару эффектов jinx. Может данные интерфейса слетели? Плата esp32
 

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@antidote, Попробуйте обновить страницу в браузере. На компе это Ctrl-F5 или Ctrl-Shift-R
Если на телефоне - просто несколько раз нажимайте кнопку браузера "Обновить"

Проблема в том, что микроконтроллер устройство довольно медленное и в нем мало памяти. Поэтому, когда файлов web-страницы браузером еще не скачаны - или передача обрывается по таймауту (пока контроллер отдает один файл, другой не дожидается очереди и браузер закрывает соединение по таймауту). В худшем случае - микроконтроллер не может выделить достаточно памяти под буфер и микроконтроллер перезагружается.

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

В еще более худшем случае, когда контроллер ESP8266, матрица на нем большого размера - у него просто не остается памяти для коммуникации с браузером. И при каждом запросе данных микроконтроллер "падает" и перезагружается. Тут надо смотреть

а) в логе в мониторе порта - перезагрузки там будут видны
б) в браузере на компе - F12 - вкладка "Сеть" - там можно увидеть что загрузилось (черным, код 200, размер - (кэш диска)) и что не смогло - красным - ошибка загрузки.
 

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@antidote,
ну, первый файл у меня (в последней версии) присутствует.
второй файл в последней версии у меня обозначен как styles.18fcb54374aeb63d.css

А вообще - в мониторе порта при старте контроллера пишет какие файлы найдены в файловой системе микроконтроллера в папке web.
Типа такого:

1702839955494.png

Есть в этом списке файлы, которые типа "не найдены?
Ну, попробуйте снова загрузить файловую систему микроконтроллера.
Если у вас есть SD-карта - сделайте предварительно бэкап настроек. На всякий случай.
Настройки эффектов не должны пропасть - они в EEPROM хранятся. А вот текстовые строки пропадут...
Они хранятся в файловой системе, которая будет переформатирована и загружена новыми данными
Ну и версия скетча желательно тоже должна соответствовать версии веб-морды...
 

6yJlka

✩✩✩✩✩✩✩
27 Ноя 2023
24
1
Всем добрый день!
Возникли непонятки с подключением Sd карты к wemos D1. Припаял к МК, все гуд. Отформатировал карту в FAT32, загрузил на SD карту анимацию, пытаюсь включать. При выборе режима «SD карта», все сбрасывается и включается другой рандомный эффект. То есть, эффекты с карты не играются.
При этот при компиляции выдает «Аппаратные контакты SPI не определены».
Куда копать, в чем может быть проблема?
IMG_7029.jpeg
IMG_7031.jpeg
IMG_7025.jpegIMG_7045.png[/ISPOILER]
 

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@6yJlka, ну про SPI - это FastLED пишет, а вовсе не про SD-карту...
А что в мониторе порта непосредственно после старта микроконтроллера?
А проблем может быть масса - от неправильного включения SD-карты (все пины пропаяны?) до неправильного размещения информации на карте...
 
Изменено:

Intel1024

✩✩✩✩✩✩✩
30 Окт 2019
17
0
Добрый день.
Нестандартную ленту 2812 побороть так и не получилось , откатился на 13 версию и ESP core 2.7.4 - в такой конфигурации всё работает.

Теперь решил попробовать на ESP32 - скетч прошил, а вот с установкой файловой системы что то застрял. На ESP8266 всё работало, для ESP32 скачал arduino-esp32littlefs-plugin-master распаковал в TOOLS. Я так понимаю в меню должно появится ESP32 LitleFS Data Upload. Но ничего не появилось. В меню только для 8266. Что еще нужно сделать?
 

Вложения

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@Intel1024, этого достаточно. Ну разве что еще - перезагрузить Arduino IDE.
Если не появилось - значит не туда или не то скопировали. Покажите содержимое папки Arduino/tools и собственно что внутри самой папки с плагином
А откуда "скачал arduino-esp32littlefs-plugin-master"?
 
Изменено:

Intel1024

✩✩✩✩✩✩✩
30 Окт 2019
17
0
Даже в два места положил, у меня от 8266 в документах лежит. Я так понимаю что esp32littlefs.jar отвечает за появление пункта в меню?
arduino-esp32littlefs-plugin-master скачал тут https://github.com/lorol/arduino-esp32littlefs-plugin ссылка с инструкции github.com/vvip-68/GyverPanelWiFi/wiki
Там кстати шестым пунктом-"В Arduino IDE в меню "Инструменты" выберите пункт "ESP8266 LittleFS Data Upload" Про ESP32 ничего не сказано.
 

Вложения

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@Intel1024,
да, esp32littlefs.jar отвечает за появление пункта меню.
из приведенных на скриншотах вариантах я не вижу ни одного правильного.
Что лежит внутри папкe arduino-esp32littlefs-plugin-master, где по идее и должен лежать этот jar-файл? Хотя куда более логично его было бы назвать по аналогии как вы это сделали для 8266 , как это и описано в инструкции

1702962483793.png

1702962576013.png
Я не понимаю что тут непонятного...

И довольно бессмысленно брать инструкцию из одной версии проекта (https://github.com/vvip-68/GyverPanelWiFi/wiki) и применять ее шаги к другой версии. Да, что-то общее есть, но есть и различия...
 
Изменено:

Intel1024

✩✩✩✩✩✩✩
30 Окт 2019
17
0
Да вроде все так и делаю. По ссылке из инструкции попадаю на github.com/lorol/arduino-esp32littlefs-plugin Но там скачивается файл arduino-esp32littlefs-plugin-master.zip Кажется я не нахожу файл ESP32LittleFS.zip
 

Вложения

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@Intel1024,
а вот это предложение вам ни о чем не говорит?
1702965993202.png

Чтобы не скачивать - есть уже все скачанное - оно лежит в папке tools проекта.
Но уж если вы зачем-то захотели именно скачать исходники, а не скомпиленную версию плагинов - не нужно исходники забрасывать в эту папку. Вы же саму гирлянду не тексты с исходным кодом загружаете, а предварительно компилируете их в код. Так почему же скачав исходный код плагина вы его не компилируете, прежде чем положить в папку tools?
 

6yJlka

✩✩✩✩✩✩✩
27 Ноя 2023
24
1
@vvip,, доброго дня! Хочу сперва выразить огромную благодарность за проект. Это нечто!
Так, по поводу анимации с SD карты. Отвечая на ваш вопрос - в мониторе порта выводится какая то чушь. Иероглифы и знаки вопроса в разные стороны.
Решил накатить скетч для проверки работоспособности карты, дабы убедиться в правильном подсоединении и вообще в пайке. Все робит, тест проходит, файлик на карте создается.
Залил снова проект гирлянды. Уже даже сохранил резервную копию на сд карту- сохранилось всё. Но….
Анимация так и не робит, сразу после выбора Sd-карты включает другую рандомную анимацию. Оговорюсь, заливал анимацию из папки data, с расширением .out .
Может быть такое, что сами файлики под матрицу 16*16, а у меня матрица вышла 18*11 и из-за этого не выводит?
Нужно же просто закинуть анимацию на карту, не создавая папку с именем размера матрицы моей?
Заранее спасибо за ответ!
 

VadZher

★✩✩✩✩✩✩
4 Ноя 2021
120
30
Омск
@6yJlka,
Возможно, я Вас удивлю, но Вам нужно в программе Jinx создать файлы анимации для матрицы размером 18х11 и поместить их в корень SD в папку 18х11.
 
  • Лойс +1
Реакции: 6yJlka

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@6yJlka, именно! Она ищет папку, соответствующую размерам матрицы и если ее не находит - файлов нет - проигрывать эффект карты нечего - автоматически переключается на другой.

Закидывать из папки 16x16 в другую - бессмысленно. При загрузке оно проверяет размер кадра и если не совпадает с матрицей - а 16x16 совершенно точно не совпадет с18x11 оно пропустит эти файлы с неверным размером кадра. И все повторится вновь и вновь - нет файлов - нечего воспроизводить - будет переключаться на другой эффект.

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

Про чушь в мониторе порта - выставьте ему скорость 115200 - именно на этой скорости происходит коммуникация с контроллером
 
Изменено:
  • Лойс +1
Реакции: 6yJlka

Intel1024

✩✩✩✩✩✩✩
30 Окт 2019
17
0
Спасибо! "ESP8266 LittleFS Data Upload" появился.
ESP32 с 14 версией и нестандартной лентой работает отлично!!!:D
 

VadZher

★✩✩✩✩✩✩
4 Ноя 2021
120
30
Омск
@Intel1024,
Лента, ранее отображавшая артефакты, заработала на ESP32? А версия прошивки прежняя - v.1.14.2023.1114?
 

vvip

★★★★✩✩✩
18 Дек 2018
503
225
@VadZher, только ядро разное. Одно под ESP8266, другое под ESP32, насколько я понимаю.
От ядра много зависит все-таки...
 
  • Лойс +1
Реакции: Alexis 111186

Intel1024

✩✩✩✩✩✩✩
30 Окт 2019
17
0
VadZher
Да, заработала, v.1.14.2023.1114 на ESP32 Версия ядра: ESP32 v1.0.6,
Правда сейчас наблюдаются какие то глюки с питанием. Сижу, пытаюсь разобраться.
Нормально работает когда плата по питанию подключена к УСБ компа а лента запитана от отдельного источника.
Надо вариант с диодом попробовать.
 

VadZher

★✩✩✩✩✩✩
4 Ноя 2021
120
30
Омск
@Intel1024,
У Вас стоит токоограничивающий резистор на 270 Ом, на заводской матрице 16х16, работающей нормально, стоит резистор 75 Ом, общее сопротивление на проводе с данными 345 Ом. Попробуйте теперь увеличить номинал резистора в схеме с проблемной лентой. VVIP прав, этот резистор нужен для защиты пина и не оказывает влияния на артефакты, но мне как-то это помогло с гирляндой на ws2811. Я тогда и пины менял, и настройки прерываний - всё было безрезультатно…
 

Evgeny50

✩✩✩✩✩✩✩
30 Янв 2021
4
0
Добрый день. Подскажите. Две одинаковые ленты, покупались в разное время, разные цвета при включении. Эффект огонь, первая светится красным, вторая зелёным. Где можно это поправить.