
Друзья, наконец собрался с силами и опубликовал новую версию прошивки. На самом деле было более 3-х промежуточных версий, которые строились на различных конфигурациях таймингов и таблиц яркостей. Очень трудно было выбрать фаворита, ибо на разном музыкальном материале смотрелась лучше то одна версия, то вторая. После продолжительных “втыканий” в моргающие лампочки, в конечном итоге, решил пока оставить изначальные значения таблицы яркости. В будущем, вполне вероятно, кривая экспоненты таблицы яркости будет не такая резкая. В этом случае будет доступно больше ступеней яркости, что позволит плавнее гаснуть светодиодам и улучшит дифференциацию уровня сигнала каждого канала.
Ключевыми изменениями в данной версии можно отметить оптимизацию отображения эффектов и их алгоритмов работы, изменение алгоритмов работы VU-метра, добавление возможности динамического изменения количества задействованных светодиодов, а также попытка адаптации эффектов под малое количество светодиодов. При количестве светодиодов до 50 будут использованы другие значения таймингов, однако от тенденции “меньшее количество светодиодов = более быстрая работа” никуда не денешься.
- Устранено возможное мерцание эффектов ввиду несогласованности момента отправки данных на ленту и прерывания, в котором готовится массив данных на отправку;
- Обработка затухания эффектов вынесена на отдельный 8-и битный таймер. Таймер включается при переходе в режим паузы и выключается при выходе из него;
- Убрана подмена значений RGB при работе в разных цветовых пространствах, теперь библиотека возвращает сразу нужные значения;
- Полностью переписаны алгоритмы работы режимов VU-метра. Обработка вынесена в отдельный цикл. Теперь расчет осуществляется сразу на половину ленты, а затем зеркалируется на вторую половину. Затухание реализовано попиксельно сверху-вниз, а не по всей длине, что вызвало паразитное мерцание. Положение Fadespeed влияет на скорость затухания. Исправлен расчет цветов в зависимости от количества светодиодов. Режимы VU-метра включены в случайный выбор при активации Demo-режима;
- Уменьшен шаг изменения скорости затухания для разных положений “Fadespeed”;
- Эксперементально добавлена возможность отключения функции окна библиотеки FHT. Библиотека будет отрабатывать чуть быстрее, ценой качества разделения по каналам. В будущем ее место займет что-нибудь более полезное. Настройку можно сохранить. Настройку можно сбросить на значение по-умолчанию – выключено;
- Добавлена возможность динамического изменения количества задействованных светодиодов. Теперь нет необходимости делать кучу прошивок под разное количество светодиодов. Есть одна прошивка в которую можно растянуть/ужать на необходимое количество светодиодов и нет необходимости каждый раз перепрошивать МК. Шаг изменения – по 8. Диапазон – от 8 до 240. По умолчанию установлено 8х3=24 светодиода. Настройку можно сохранить. Настройку можно сбросить на значение по-умолчанию – 8х3=24;
- Если количество светодиодов меньше 50, то добавляется один пустой цикл в обработку таймера обработки кнопок/эффектов и применяется больший коэффициент к значению затухания, что должно немного сдержать скорость работы эффектов в режиме паузы на малом количестве светодиодов.
В связи с нововведениями обновлено руководство по использованию восьмиканальной цветомузыкой и добавлено демонстрационное видео по изменению количество светодиодов, задействованных в работе устройства.
Прошивка от 24.11.2018, исходные коды и более краткий changelog, опубликованы в разделе прошивок. Обращу внимание, что в отличии от предыдущих версий теперь исполняемый hex-файл один, а не “зоопарк” заранее подготовленных под некоторое количество светодиодов прошивок. Необходимое количество светодиодов устанавливается в процессе работы устройства с возможностью сохранения данного значения в память.
нелюблю читать
Здравствуйте M1X!
Давно слежу за вашей работой над цветомузыкой и есть желание повторить вашу работу, но чтобы начать хочу поинтересоваться, не планируете ли Вы использовать в проекте инфракрасное ДУ? По идее можно использовать любой пульт, от любого телевизора. Уменьшится количество кнопок на самом устройстве, проще будет разводка платы, удобство использования опять же.
Привет! Да, в планах такое есть. Пока не очень понятно как сделать удобно вход в режим обучения, процесс обучения, и индикацию обучения… Как вариант брать определенный перечень комманд и жмякать по порядку кнопки на пульте… Тут надо хорошенько подумать.
С наступающим Новым Годом!!!
С наступающим!!! =)
Попробуйте поиграться со входом”AR” – это временная задержка.
Пробовал 5 разных микрофончиков, все рабочие, игрался с замыканием пинов и с Gain(усиление) и с AR(Attack/Release) по этой инструкции https://www.adafruit.com/product/1713, надоело, купил max4466 и все заработало “из коробки”, потом уже подкрутил на микрофончике усиление.
По поводу АРУ думаю немного другое имелось ввиду. Наверное что-то вроде MAX9814 – это микрофонный предусилитель с АРУ на борту. Недавно пару платок приехало с али, но пока не разбирался как оно работает.
Работает нормально, но у цветомузыки не хватает чувствительности. По этому и проси добавить чувствительность.
Сколько микрофончиков не перепробовал, лучший эффект достигается только на max4466, MAX9814 и им подобные отвратительно работают, после резкого пика заваливают усиление на 0, и все пропадает на 1сек примерно, что для них свойственно как для АРУ, заваливает низкие частоты очень сильно, вообщем минусов настолько много, что АРУ не успевает отрабатывать, АРУ в виде микросхемы здесь не нужно.
Вот вам АРУ, http://prntscr.com/lyiisl
Можно выложить видео последнего обновления?
Уже думал обновить видео, поэтому недавно заказал на али ленту в 1 метр на 96 светодиодов. Когда приедет можно будет сделать новое видео.
Уважаемый M1X, возможно ли в фильтр нижних частот встроить АРУ?
Да, программно. Но яркостью жертвовать не надо, если не получится, то оставьте как есть. Спасибо.
Что имеется ввиду под чувствительностью? Если чувствительность устройства к уровню входящего аудио сигнала, то его можно немного программно поднять. Правда для этого придется пожертвовать некоторым количеством градаций яркости. Возьму на заметку. Если это не скажется негативно на работе, то можно будет попробовать.
Здравствуйте, давно наблюдаю за вашим проектом, можно ли не много увеличить чувствительность?
Отлично! Спасибо огромное m1x, наконец то появилась возможность изменять количество светодиодов! И еще очень много приятных изменений! Очень рад что проект не заброшен и развивается дальше!!! Успехов вам!