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

Anatolii123

✩✩✩✩✩✩✩
7 Дек 2023
7
1
@Anatolii123, прошейте бинарником плату
Спасибо за ответ ,но сегодня весь вечер, допоздна провозился .bin фалом тоже никак.
Данные платы -
Chip is ESP32-S3 (QFN56) (revision v0.2)
Features: Wi-Fi, BT 5 (LE), Dual Core + LP Core, 240MHz, Embedded PSRAM 2MB (AP_3v3)
Crystal is 40MHz
MAC: fc012c2d88a8
Manufacturer: 68
Device: 4017
Status value: 0x400200
Detected flash size: 8MB
Может что-то не то в программе неправильно выставляю.
Нигде в интернете не нашёл однозначной настройки приложения для записи подобных проектов.
Запись идёт, но результата нет, иногда открывает точку доступа, но в браузере не открывается.
 
Изменено:

VadZher

★✩✩✩✩✩✩
4 Ноя 2021
142
39
Омск
@Anatolii123,
Скачайте архив, ссылку на который любезно предоставил AnCore, распакуйте его и зайдите в папку bin_LedPanelWiFi_v.1.14.2025.0311\NO_OTA\BIG_FONT 0\ESP32-S3 (ESP32S3 Dev Module). В этой папке будут лежать 4 бинарных файла, которые нужно загрузить в память Вашего контроллера при помощи утилиты flash download tool по следующим адресам:
LedPanelWiFi.bootloader.bin по адресу 0x0000
LedPanelWiFi.partitions.bin по адресу 0x8000
LedPanelWiFi.bin по адресу 0x10000
LedPanelWiFi.littlefs.bin по адресу 0x210000
Перед загрузкой лучше сделать полную очистку памяти контролера при помощи этой же утилиты.
Пробуйте, у Вас всё получится.
 
  • Лойс +1
Реакции: AnCore

Anatolii123

✩✩✩✩✩✩✩
7 Дек 2023
7
1
@VadZher,
Так и делал.
И с полной очисткой, и с записью чистой прошивки. Что самое непонятное - каждый раз результат разный - чаще всего зелёный индикатор моргает 1-2 Гц. но очень тускло, при новой попытке один раз моргал синий. Последний раз горит только красный, к точке доступа подключаюсь но по адресу 192.168.4.1 не открывается.
Потому и спрашиваю - галочки в настройках загрузчика какие ставить (хотя пробовал разные варианты), все четыре файла писать разом или по одному, в каком порядке открывать в загрузчике (или без разницы) ?
 

Александр_Ава

✩✩✩✩✩✩✩
23 Фев 2025
6
0
Уважаемые разработчики, у меня такой вопрос: Матрица имеет размер 20х40 и в одном из режимов идёт не полное заполнение.
 

Вложения

vvip

★★★★✩✩✩
18 Дек 2018
577
254
@Александр_Ава,
видимо, поэтому:
1765979528313.png

А вот почему такие ограничения - вопрос к автору эффекта. Я не помню.
Да и не нужно было в этом разбираться.
 

AnCore

★★★✩✩✩✩
27 Янв 2020
375
142

Вложения

VadZher

★✩✩✩✩✩✩
4 Ноя 2021
142
39
Омск
@Anatolii123,
Настройки («галочки») я не менял, всегда оставлял те, что были по-умолчанию, загружал все четыре файла за раз, порядок - по возрастанию адресов ячеек памяти.
При подключении к точке доступа Вы с какого устройства пытались зайти на адрес 192.168.4.1? Не на базе iOS, случайно? А очистку кэша браузера после неудачных попыток выполняли?
 

Юрий Мариуполь

✩✩✩✩✩✩✩
25 Дек 2025
4
0
Здравствуйте. Я новичок в этом деле. Собрал матрицу 23х30 на WS2812В с вертикальным зигзагом (точка снизу слева) с версией v 1.13 потом с v 1.14. и всё работает. Решил сделать панель на улицу с ленты светодиодов WS2811 L=50 (получилась матрица 40х25 горизонтальные зигзаг с точкой с право низ) и вот возникла такая проблема. Не корректно отображается текст (часы, погода и т.д.). Вторая строчка пикселей сверху и вторая строчка пикселей снизу смещается на один пиксель в сторону. Что это такое и как это устранить? Прошивки менял с 1.13 на 1.14 глюк тот же. Матрицу проверял - везде по 40 светодиодов в строчке.
 

vvip

★★★★✩✩✩
18 Дек 2018
577
254
@Юрий Мариуполь, так дело на в объявлении чипа в скетче, а в самой ленте. Вам бы прорстеньким скетчем зажигая по одному светодиоду проверить - при включении одного диода на ленте горит один или все же сразу три. Что происходит при включении следующего по адресу? У самого лент 2811 не было, но мне поминится, что кто-то писал, что они адресуются по три диода на ленте. То есть, если натягивать как обычную WS2812 - матрица не получится. Проверьте. Там хоть и написано 1 LED / Pixel, но...
 

Юрий Мариуполь

✩✩✩✩✩✩✩
25 Дек 2025
4
0
@vvip, Вот китаец описывает так HarrisonTek Номер модели WS2811 IC:
Технические характеристики:
Рабочее входное напряжение: 5 В постоянного тока.
Протокол: WS2811
Заказ цвета: G R B (не RGB)
SMD: SMD3240
Выходная мощность: 0,1 Вт/шт. светодиод.
Цвет излучения: WS2811/WS2812 RGBIC.
Выходной ток R/G/B: 5,5 мА
Провод:#26AWG, 3-контактный провод (VCC+,DATA,GND)
 

Юрий Мариуполь

✩✩✩✩✩✩✩
25 Дек 2025
4
0
@vvip, Ну я сам только месяц как в это дело вникать начал. Хотел внукам праздник сделать. Коада стартует матрица, то как и на первой по середине зелёные в ряд диоды означающие подключение сети, потом эффекты, которые вроде не отличаются по рисунку с другой матрицей а вот когда появляется текст и он портит вид своими нечитаемыми символами.
 

vvip

★★★★✩✩✩
18 Дек 2018
577
254
@Юрий Мариуполь, чего его искать то? Спросите у любого ИИ он вам за 5 минут напишет. Хоть у того же GigaChat - не сочтите за рекламу. Я вот спросил - он мне вот что написал. С первого взгляда не вижу причин, чтобы это не работало
Тестовый скетч:
#include <FastLED.h>

#define DATA_PIN 2       // Используем GPIO2 (D4 на плате Wemos D1 Mini)
#define NUM_LEDS 100     // Количество светодиодов

CRGB leds[NUM_LEDS];     // Массив светодиодов

unsigned long previousMillis = 0; // Хранит отметку последнего обновления состояния
byte currentLedIndex = 0;         // Текущий индекс активного светодиода

void setup() {
  Serial.begin(115200);           // Опционально, для дебага
  FastLED.addLeds<WS2811, DATA_PIN, GRB>(leds, NUM_LEDS); // Инициализация ленты
}

void loop() {
  unsigned long currentMillis = millis(); // Получаем текущее время в миллисекундах

  if(currentMillis - previousMillis >= 1000) { // Проверяем, прошло ли больше одной секунды
    previousMillis = currentMillis;           // Сохраняем текущее время

    fill_solid(leds, NUM_LEDS, CRGB::Black); // Гасим весь массив светодиодов
    leds[currentLedIndex++] = CRGB::White;   // Активируем следующий светодиод белым цветом
    if(currentLedIndex >= NUM_LEDS) {        // Проверяем выход за пределы массива
      currentLedIndex = 0;                   // Возвращаемся к первому светодиоду
    }
    FastLED.show();                          // Отображаем новое состояние ленты
  }
}
 
  • Лойс +1
Реакции: Юрий Мариуполь

Юрий Мариуполь

✩✩✩✩✩✩✩
25 Дек 2025
4
0
@vvip, Спасибо за помощь!!!! С помощью этих программ, сначала по очереди всю ленту 1000 один (1000-й - это я так думал не загорался, потому что после сборки было 3 лишних!!!). Запустил другой скетч, где по очереди должно загораться 5 светодиодов! А загорается всего 4и тут осенило! Размотал изоленту а там первый светодиод оказался а в сборке получился второй стартовый!!! Что значит не внимательность!
 

Александр_Ава

✩✩✩✩✩✩✩
23 Фев 2025
6
0
Всех с наступающим Новым Годом. Собрал я большую панель 40х40 светодиодов из такой же ленты, что и @Юрий Мариуполь. Но оказалось, что у меня цветовая последовательность RGB. Прошивку в контроллер я заливал бинарником, а там по умолчанию GRB. Когда я пытаюсь поменять её на RGB, мало того, что ничего не меняется, так ещё и количество светодиодов в матрице уменьшается на 1 и становиться 1599. Помогите, пожалуйста, решить проблему.
 

Вложения

vvip

★★★★✩✩✩
18 Дек 2018
577
254
@Александр_Ава,
никаких несоответствий нет. Если у вас нумерация начинается с 0 - далее идет 1600 светодиодов в цепочке. Если вы ставите вывод не с 0, а с 1 диода - далее в цепочке остается 1599 диодов, т.к самый первый с индексом 0 - пропускается.. Так что - у вас нет проблемы.

Кстати, а почему вывод с 1, а не с 0? На конфигурацию матрицы это никак не повлияет. Если вы наклеили ее со смещением - всё так и будет выводиться со смещением, хоть с 1, хоть с 10. Мотому что конфигурация матрицы задается ФИЗИЧЕСКОЙ ее наклейкой, а тут задается просто начало вывода на матрицу, а не логические смещения. Если наклеили матрицу так же как и Юрий Мариуполь с промахом на один диод, то и решение то же самое - физически отрезать первый скрытый светодиод.
 
Изменено:

Александр_Ава

✩✩✩✩✩✩✩
23 Фев 2025
6
0
@Александр_Ава,
никаких несоответствий нет. Если у вас нумерация начинается с 0 - далее идет 1600 светодиодов в цепочке. Если вы ставите вывод не с 0, а с 1 диода - далее в цепочке остается 1599 диодов, т.к самый первый с индексом 0 - пропускается.. Так что - у вас нет проблемы.
Это я понимаю, но...

Кстати, а почему вывод с 1, а не с 0? На конфигурацию матрицы это никак не повлияет. Если вы наклеили ее со смещением - всё так и будет выводиться со смещением, хоть с 1, хоть с 10. Мотому что конфигурация матрицы задается ФИЗИЧЕСКОЙ ее наклейкой, а тут задается просто начало вывода на матрицу, а не логические смещения. Если наклеили матрицу так же как и Юрий Мариуполь с промахом на один диод, то и решение то же самое - физически отрезать первый скрытый светодиод.
В том-то и дело, что это не я ставлю, а при попытке переключения из GRB в RGB система сама выставляет эти установки и всё равно возвращается в GRB. В этом-то вся и проблема!

Может есть возможность сделать мне бинарник с RGB по умолчанию под ESP32-S3 c SD-картой и шрифтом - 0, а то праздник на носу, а у меня вместо красивой красной плазмы какое-то болото зелёное :`(

P.S. И я ничего не клеил (я имею ввиду саму ленту). В праздники постараюсь написать как именно я её сделал. Надеюсь моя идея кому-нибудь зайдёт и он захочет её повторить.