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

Valex

✩✩✩✩✩✩✩
2 Окт 2019
14
0
Ребята,добрый день!Установил версию на 82 эффекта.Вроде все эффекты работают,но во всех этих эффектах в нижнем 16 ряду постоянно по кругу переключается пиксель красным цветом.Можно ли убрать это?Спасибо.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@Valex,
можно.
Почитайте под спойлером Часто возникаюшие вопросы в описании прошивки (там где вы брали ссылку на архив).
 
  • Лойс +1
Реакции: Vladimir100a

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@Сотнег, Сегодня собрал лампу. Прошил 86в1 . ЕСП мод =1. Библиотеки из этой прошивки. Поставил 30секунд ожидание соединения с wifi. Отправил роутер в перезагрузку и передёрнул питание лампы. Роутер перезагружается примерно 20 секунд. Из них 5 секунд я передёргивал питание лампы. Лампа зависла намертво. Ждал 5 минут. В точку доступа сама то же не переключилась. Выходит из ступора только по передёргиванию питания. Проверил несколько раз. Видимо , надо ещё что то в библиотеке wifi менеджера править.:cautious:
 
Изменено:
  • Лойс +1
Реакции: Сотнег

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@alvikskor,
я хз, чего там надо делать.
Я только "пнуть собаку" воткнул в цикл ожидания подключения,
чтобы лампа по вочдогу не перезагружалась.
 

Gosha_Piter

✩✩✩✩✩✩✩
26 Янв 2021
2
0
Прошу прощения, полистал тему, но не увидел.
Как и где в прошивке от "Шайтана" уменьшить уровень громкости?
А то включается лампа и орет как потерпевшая.
Я бы поставил на 2-3 деление и дальше если надо, то же добавлять.
СПАСИБО!
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@Gosha_Piter,
вроде, отдельный эффект должен быть Громкость.
Ну и в приложении на Андроиде на телефоне качелькой громкости можно.
 
  • Лойс +1
Реакции: Gosha_Piter

Gosha_Piter

✩✩✩✩✩✩✩
26 Янв 2021
2
0
@Сотнег, к сожалению не работает (не меняется громкость), хотя на экране бегает "громкость 0-30"
В эффект "громкость" захожу и тоже все три ползунка не влияют на громкость ((
Еще хотел спросить, вот на схеме-картинке подключение динамика на SPK-1 и SPK-2
Это правильно? (пробовал перепаять и так и так, но мало ли в этом какой-то великий смысл был)
 

SergLightman

✩✩✩✩✩✩✩
31 Июл 2020
47
7
Доброго всем дня/вечера!
Сразу хочу вознести хвалу всем, начиная с Алекса Гайвера, кто создает, развивает и поддерживает этот ресурс! Все, что вы делаете -- КЛАССНО! От души БлагоДарю!
Прочел и посмотрел множество постов, где ребята выложили свои реализации Лампы. Я тоже собираюсь поделиться своей версией эпичной версии лампы, но, сначала, хочу максимально довести свой вариант до логического завершения. Заранее прошу простить, что мое послание такое длинное.
Краткое резюме, для начала: заняться совершенно неизвестным мне Ардуино меня сподвигло видео Алекса о своем "нереальном светильнике", которое я увидел осенью прошлого года. Решил собрать и себе такой. Как это ни парадоксально, -- получилось сразу. Первая версия светильника с матрицей 24х54 оказалась, действительно, в высшей степени "магической". Прошивка была (и есть) от Ганнера, "73 в 1". Из-за широкого угла рассеивания с/диодов, картинка получалась очень красивой, но размытой. Поэтому решил сделать ее еще больше, полностью переработав конструкцию "колонны", и с применением 3D-печати.
Вторая версия это матрица 28х54, на Wemos D1 mini. С установкой ограничения по току, ее вполне тянет БП на 12А.
Несколько дней назад попробовал установить прошивку "86 в 1", после запуска которой появилось несколько вопросов, на которые очень хотелось бы найти ответы. Знатоки, помогите, пожалуйста!

1. Почему в некоторых эффектах по-разному работают режимы скорость/масштаб. В том смысле, что эффект от них получается обратным.
2. Почему эффекты, требующие небольших вычислительных ресурсов (например, "спирали") работают значительно медленнее более "тяжелых" эффектов ("Лава", "Павлин" и др.)?
3. Почему эффект "ДНК" работает только на нижней половине моей матрицы, будто она квадрат 28х28
4. Почему эффект "Верховой огонь" в "73 в 1" работает, как "ДНК", -- в центре моей матрицы, а в "86 в 1" -- в вершине матрицы?
5. Почему в самой первой моей прошивке, полугодичной давности, эффект "Радужный змей" работал прекрасно, а в "86 в 1" лампа на нем виснет и отключается?

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

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

Заранее благодарю всех за терпение (прочли до конца :) ) и помощь.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
1. Почему в некоторых эффектах по-разному работают режимы скорость/масштаб. В том смысле, что эффект от них получается обратным.
Наверное, так просто получилось неумышленно. А исправлять особого смысла нет.
Но зря вы не перечислили, о каких эффектах речь. А то бы я себе пометочку оставил на следующий релиз.


2. Почему эффекты, требующие небольших вычислительных ресурсов (например, "спирали") работают значительно медленнее более "тяжелых" эффектов ("Лава", "Павлин" и др.)?
Видимо, всё наоборот, и Спирали более "тяжелые".
Код эффектов никто особо не смотрел. Взяли, да и вставили в прошивку без изменений.
На 16х16 не тормозит - мне этого достаточно. Появятся желаюшие - займутся оптимизацией.


3. Почему эффект "ДНК" работает только на нижней половине моей матрицы, будто она квадрат 28х28
Косяк, наверное. Надо разобраться.
Вы покрутите бегунок Масштаб - он там до 50 один рисунок, после - другой. Дайте более подробное описание проблемы.


4. Почему эффект "Верховой огонь" в "73 в 1" работает, как "ДНК", -- в центре моей матрицы, а в "86 в 1" -- в вершине матрицы?
Наверное был косяк, который был исправлен.


5. Почему в самой первой моей прошивке, полугодичной давности, эффект "Радужный змей" работал прекрасно, а в "86 в 1" лампа на нем виснет и отключается?
У вас изменился размер матрицы. Решение тут: https://community.alexgyver.ru/thre...denie-prilozhenija-ot-koteyka.2966/post-77936


И отсюда вытекает общий вопрос, в какой-то степени объединяющий предыдущие 5, -- могу ли я самостоятельно, обладая самыми начальными навыками программирования (начала Паскаля), пользуясь лишь подсказками знатоков на форуме, внести все необходимые изменения в код эффектов, чтобы лампа заработала, как мне нужно? В планах у меня матрица 50х120.
В теории можете, хотя язык Си вас неприятно удивит много раз.
А вот в такой размер я сомневаюсь, что прошивка скомпилируется.
Там несколько буферов размера в матрицу расходуют память.


И еще: инструкция на вкладке effectTicker, по изменению и копированию эффектов, подходит для того, чтобы удалить лишние и создать список эффектов, который удовлетворит мои предпочтения?
Если только список редактировать - да.
 

SergLightman

✩✩✩✩✩✩✩
31 Июл 2020
47
7
А вот в такой размер (50х120) я сомневаюсь, что прошивка скомпилируется.
Там несколько буферов размера в матрицу расходуют память.
В описании проекта GyverPanelWiFi (vvip-68) указано, что поддерживается матрица размером до 128. К сожалению, задать вопрос по своему размеру не смог, т.к. не нашел ветки обсуждения проекта от VVIP. На его утверждении, собственно, и основывался, когда собирался сделать такую матрицу...

Наверное, так просто получилось неумышленно. А исправлять особого смысла нет.
Но зря вы не перечислили, о каких эффектах речь. А то бы я себе пометочку оставил на следующий релиз.
Статистику по этому вопросу, с фото и видео, соберу и сброшу сюда.
 
  • Лойс +1
Реакции: Сотнег

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@SergLightman, можно удалить какие-то из буферных массивов и эффекты, их использующие. Будет как у VVIP.

Но кроме памяти ещё останется время обновления каждого пикселя на матрице.

К тому же, многие эффекты оперируют размером объектов в 1 пиксель.
И на больших матрицах им будет слишком просторно.

Я бы для большой лампы делал бы упор на рассеивателе, а количество светодиодов больше 32 по любой стороне избегал.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
Вторая версия это матрица 28х54
Наверное вам стоит остаться на старых прошивках, с таким то размером.
Скажу вам по секрету, - пока вы собирались создавать что-то более эпическое (в размерах) сами прошивки ушли очень далеко в плане развития движков рисования. Движки сильно потяжелели. К примеру субпиксель (максимально используемый в новых эффектах движок) физически не в состоянии обслужить более 1024 диода (32х32), тупо не хватает вычислительной мощности esp8266, а часто и тупо памяти.
Я бы вообще остановил горячие головы на размерах не более 24х24. А то дай волю - вы начнете к контроллеру 4К экраны подключать.

Итак. Ни одна из современных прошивок на форуме не сможет физически работать на вашем размере. Примите как данность. Ваш удел с таким размером - оригинальный Гуннер47, либо прошивка от Vip-68.

Маленький ликбез, раз вы с программированием таки знакомы. Ваша матрица суть лента, использующая сериальный протокол, каждый светик это плюс 3байта. Считайте сами, ваша лента в ОЗУ занимает количествоХ3 байт памяти. И на каждый светодиод нужно увеличивать время вывода картинки на н-ную величину (тупо ножкой контроллера дрыгать). Пока контроллер дрыгает ножкой, он не может делать ничего другого, ни считать новый кадр, ни подгружать данные - ничего, только дрыгать. То есть, кроме того, что с каждым новым светодиодом вы увеличиваете время на обсчет буфера памяти кадра, сам буфер, но и время вывода на ленту (это она только кажется матрицей, она лента). То есть задержки растут по экспоненте. Как то так.

Это можно решить на esp32, и только если используется rtos. Тогда одно ядро могло бы считать кадр, пока другое "дрыгает ножкой" Но таких прошивок я пока не видел.
 
Изменено:

kostyamat

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

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@Сотнег,
Попробовал я сделать управление случайным выбором настроек эффектов в цикле с помощью "секретных команд" , пока управление из приложения не работает. Вставил кусок после 615 Строки . Но , к сожалению , нет глубокого понимания всего кода. И работает не так как ожидалось. Я думал, что комнда RND_Z у Вас должна отключать случайные настройки полностью (// вернуть настройки по умолчанию всем эффектам) . Но она действует аналогично RND_0. Только на текущий эффект. Вообще хотел сделать , чтобы можно было "секретной командой" включить или выключить случайный подбор параметров эффектам в цикле без перепрошивки лампы (комментирования-раскомментирования RANDOM_SETTINGS_IN_CYCLE_MODE). Предпологал, что RND_1 и RND_Z так и будут работать. Где я ошибся?
C++:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////        
              #if defined(RANDOM_SETTINGS_IN_CYCLE_MODE)
    else if (!strncmp_P(inputBuffer, PSTR("TXT-rnd="), 8)) // управление включением случайных настроек
    {
       if (!strncmp_P(inputBuffer, PSTR("TXT-rnd=0"), 9)) // вернуть настройки по умолчанию текущему эффекту
       {
         setModeSettings();
         updateSets();
         sendCurrent(inputBuffer);
         showWarning(CRGB::Orange, 500U, 250U);     //Мигаем 1 раз в качестве индикации
       }
       else if (!strncmp_P(inputBuffer, PSTR("TXT-rnd=1"), 9)) // выбрать случайные настройки текущему эффекту
       { 
         selectedSettings = 1U;
         updateSets();
         showWarning(CRGB::Orange, 1000U, 250U);    //Мигаем 2 раза в качестве индикации
       }
       else// if (!strncmp_P(inputBuffer, PSTR("TXT-rnd=z"), 9)) // вернуть настройки по умолчанию всем эффектам
       {
         restoreSettings();
         selectedSettings = 0U;
         updateSets();
         sendCurrent(inputBuffer);
         showWarning(CRGB::Orange, 1500U, 250U);   //Мигаем 3 раза в качестве индикации
         #ifdef USE_BLYNK
         updateRemoteBlynkParams();
         #endif
       }
    }
    #endif
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
В описании проекта GyverPanelWiFi (vvip-68) указано, что поддерживается матрица размером до 128. К сожалению, задать вопрос по своему размеру не смог, т.к. не нашел ветки обсуждения проекта от VVIP. На его утверждении, собственно, и основывался, когда собирался сделать такую матрицу...
Его прошивка (как и наша) поддерживает работу на ESP32, а там RAM раз в 10 больше, чем в ESP8266 - соответственно можно и бОльшего размера матрицы использовать без особых проблем. Т.е. будет лишь замедление в передаче данных на такое кол-во светодиодов, но под буферы места хватит. Т.е. из ганнер-подобных прошивок вариант от ввипа наиболее предпочтителен, правда там эффектов не то чтобы много относительно других прошивок. Автор отвечает в гите, можете там ему вопросы задавать.
Итак. Ни одна из современных прошивок на форуме не сможет физически работать на вашем размере. Примите как данность. Ваш удел с таким размером - оригинальный Гуннер47, либо прошивка от Vip-68.
Это не соответствует действительности. Работать смогут как минимум две прошивки - наша и ввипа. Другое дело насколько хорошо. Ну и на счет субпикселя это вопрос к эффектам по большей мере, т.к. этот самый сабпиксель можно элементарно отключать на матрицах большого размера, более того можно делать это автоматически.
Это можно решить на esp32, и только если используется rtos. Тогда одно ядро могло бы считать кадр, пока другое "дрыгает ножкой" Но таких прошивок я пока не видел.
При чем тут RTOS? Вы путаете теплое с мягким. Увеличить производительность вывода можно лишь за счет DMA разного рода, сегментации по контроллерам/каналам. В общем-то это все. Но это не меняет того о чем вам говорил @vortigont неоднократно. У нас множество весьма коряво написанных эффектов, где все сделано из разряда "работает на 16*16, ну и ладно". Ну в других прошивках ситуация правда еще хуже :)
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
Нигде.
Отдельное включение/выключение режима случайных настроек
подразумевает под собой новый параметр, сохраняемый в энергонезависимую память.
Я решил, что проще привязать его к режиму "Цикл". Тем более, что приложений для управления включением всё равно не существует.

То есть пока "Цикл" работает - настройки случайные.
Если "Цикл" выключить - настройки будут те, которые в последний раз были.
Если охота побаловаться со случайными настройками вручную - включаем "Цикл" и ставим ему время в 1 час.

Вроде, всё нужное есть.

Вы только не поняли, что прежде чем вернуть настройки по умолчанию,
нужно отключить режим Цикл.
 
Изменено:

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
Это не соответствует действительности. Работать смогут как минимум две прошивки - наша и ввипа. Другое дело насколько хорошо. Ну и на счет субпикселя это вопрос к эффектам по большей мере, т.к. этот самый сабпиксель можно элементарно отключать на матрицах большого размера, более того можно делать это автоматически.
Можно, но этого никто пока не делал, потому как а) всем не угодишь; б) тестировать не на чем (нет ни одного эмулятора, и матриц таких ни у вас, ни у меня нет; в) мы пишем лампу, а не табло для стадиона, из этого и исходим. У нас и так самая продвинутая поддержка нестандартных матриц.

У нас множество весьма коряво написанных эффектов, где все сделано из разряда "работает на 16*16, ну и ладно". Ну в других прошивках ситуация правда еще хуже
не совсем, я точно проверяю все промежуточные размеры от 8х8, до 32х32, но стандартные, то есть 8х8, 16х8, 8х16, и т.д. Плюс есть проблемы с некоторыми функциями самого FastLED, beatsin например. Для больших и нестандартных, придётся сильно менять код эффектов, менять beatsin8 на beatsin16, коэффициенты и т.п. Это не благодарный труд (и тестировать не на чем, особенно частные случаи).
 

andy040670

★★★✩✩✩✩
13 Ноя 2019
353
109
54
Интересно что вы можете ещё там увидеть, freeos или что то иное? Может я конечно что то пропустил, но esp32s то же на одном ядре, что S и говорит single, но тоже на rtos, но частота цп 240, ну и оперативки по более, как и гемороя с библиотеками.
То есть не аргумент.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@andy040670, ну в случае с одним ядром конечно не аргумент. А в случает с двумя - вполне. DMA классно конечно, но раздать рутину и вывод на матрицу на одно ядро, а второе только кадры считает и буфер набивает - можно очень выиграть в ФПС эффектов, имхо.

*** Предлагаю на этом полемику не развивать. Это мое имхо, и пока такие прошивки не появятся, проверить как оно - не получится.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@andy040670, ну в случае с одним ядром конечно не аргумент. А в случает с двумя - вполне. DMA классно конечно, но раздать рутину и вывод на матрицу на одно ядро, а второе только кадры считает и буфер набивает - можно очень выиграть в ФПС эффектов, имхо.

*** Предлагаю на этом полемику не развивать. Это мое имхо, и пока такие прошивки не появятся, проверить как оно - не получится.
Дополнительное ядро в ESP32 в самых оптимистических раскладах, на специально под это заточенные задачи может дать ну путь 75% прироста производительности, но это лишь на узком диапазоне задач. Впрочем ничего не мешает отключить вывод на матрицу, т.е. метод Fastled.Show() и сравнить насколько все сильно меняется с ним и без него. Так вот... основные задержки у сейчас вовсе не на выводе информации на матрицу и тут разнесение по ядрам или разнесение по контроллерам/сегментам погоды не сделают. Да, при матрицах огромного размера ситуация изменится, но, повторюсь - прежде всего имеет смысл оптимизировать эффекты как таковые, а решать задачи более скоростного вывода лишь для тех случаев, когда это становится узким местом.
 
  • Лойс +1
Реакции: andy040670

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@kDn, никто и не спорит. Но даже плюс 75% это те же 50+ фпс на матрице у Serge55 (30х30), на эффектах, которые у него сейчас выдают менее 30. И вполне комфортные 25-30+ на матрицах до 64х64, возможно и выше.

прежде всего имеет смысл оптимизировать эффекты как таковые
У меня нет профильного образования, опыта, да и математику подзабыл (48 лет все таки). Я вполне допускаю, что что-то где-то можно делать более эффективным алгоритмом. И всегда стараюсь оптимизировать, по своему разумению. Не всегда получается.

Впрочем ничего не мешает отключить вывод на матрицу, т.е. метод Fastled.Show() и сравнить насколько все сильно меняется с ним и без него.
Кстати да, интересно будет замерить скорость итераций эффектов без вывода на матрицу, чисто ради понимания процесса.
---------------------------------------------------------------------------------------

@kDn,
Кстати да, интересно будет замерить скорость итераций эффектов без вывода на матрицу, чисто ради понимания процесса.
Хм. Вывод на матрицу размером 16х16 занимает ~ 2-3 миллисекунды. Из этого - 32х32 до 12 мс, 64х64 до 48 мс (это дохирища!) Если даже взять за факт (что не возможно), что весь обсчет эффекта занимает 2 мс, я уже молчу про рутины самого ядра лампы, то ФПС на матрице 64х64 физически не может быть выше 20фпс. Это фиаско! :rolleyes:
Вывод на зигзагообразную матрицу размером в 128х128 будет занимать 192 мс, - это в абсолюте максимум 5! ФПС. Тут уж оптимизируй как хочешь, а нихрена из этого не будет. Придется либо параллелить вывод + DMA, либо это бессмысленно даже на core i7 10700F, на 5Ггц.
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Но даже плюс 75% это те же 50+ фпс на матрице у Serge55 (30х30), на эффектах, которые у него сейчас выдают менее 30. И вполне комфортные 25-30+ на матрицах до 64х64, возможно и выше.
Вы не поняли 75‰ к отдельной задаче, а не эффекту. Вы не получите удвоения ФПС, сделайте эффект заливки лампы одним цветом и проверьте разнеся по ядрам таски. Там программу писать минут 10. Сделайте, поглядите и подумайте почему так, а не иначе. Нормально объяснять мне лень и много текста. :)