ARDUINO Цветомузыка на Arduino. FireEdition.

Что нужно сделать в первую очередь?

  • Оптимизировать/исправить баги в текущем варианте

  • Добавлять новых эффектов/функций

  • Улучшить обработку звука

  • Автору виднее, что лучше.


Результаты будут видны только после голосования.
Цветомузыка на Arduino. FireEdition.
Всем здрасте) Представляю своё видение данного проекта.

В общем собрал систему на основе прошивки от technotrasher (за что ему респект). Ленту 30 диодов на метр и длинной 102 диода приклеил под подоконником на балконе. Решил добавить «Огонь» на Пёрлине, а дальше всё как в тумане…

ВНИМАНИЕ! Данная прошивка УСЛОВНО совместима с оригиналом от Гайвера. Отличается БОЛЬШИМ количеством дополнительных функций/настроек/эффектов, все подробности под спойлерами.
Прошивка хоть и основана на Гайверовской, но ощутимо отличается как по функционалу, так и по управлению и программной части. Поэтому далее по тексту будет не сравнение с оригиналом, а просто описание основных возможностей. В связи с тем, что проще указать, что в них общего, нежели перечислять отличия.
В прошивке несколько десятков эффектов. Половина из них зависят от звука, а половина выступают в роли обычной Подсветки. В данной реализации они по возможности логично разделены на 9 групп (Режимов). И каждый Режим разделяется на Подрежимы (Эффекты).

Может работать от микрофона или от линейного входа. Либо одновременно с возможностью переключения.

Настройки для каждого Эффекта не зависят друг от друга и сохраняются отдельно.

Настроить можно скорость/яркость/плавность и т.д., в зависимости от Эффекта.

Функция «Демо», при которой Подрежимы в выбранном Режиме будут автоматически сменять друг друга.

Функция «Тишина». В случае, если на определенное время музыка останавливается, то система переключается на Подсветку. При появлении звука вновь возвращается к Режиму цветомузыки.

Возможно управлять с ик пульта или с двух физических кнопок.

Возможно настроить «плотность пикселей», чтобы на ленте 30 диод/метр и 144 диод/метр Эффекты выглядели более-менее одинаково.

Присутствует индикация (нажатие кнопок, дежурный режим и т.д.) либо на распаянных светодиодах, либо на самой ленте.

Можно изменить ориентацию направления Эффектов, где анимация идёт от краёв к центру или от центра к краям. Полезно, если лента разделена на две части (два вертикальных столба) и уже смонтирована.

Функция ДопКанал (ДК). Это возможность в дополнение к «адреске» подключить к системе обычную RGB ленту любой длинны или RGB прожектор’ы (да вообще любые RGB источники света). В зависимости от выбранного режима ДК будет либо жить «своей жизнью» и, например фигачить стробоскоп, либо дополнять основной Эффект.

Возможно выбрать как стартовать после отключения питания. Либо с последнего активного режима, либо всегда с определенного. Во втором случае в зависимости от модели использования можно, например выбрать старт с «режима ожидания», чтобы лента не вспыхивала среди ночи после скачка электричества. Либо наоборот повесить систему на обычный выключатель света (подсветка рабочей зоны на кухне, верхний свет и т.д.), выбрать старт с «Белого» и использовать как обычный источник света, а в режиме «вечеринки» использовать пульт. Либо в случае исключительно «дискотечного» использования всегда с ходу включать «цветомузыку» без лишних движений.

Всё это по возможности максимально «модульное», то есть нужное можно подключить, а ненужное отключить.
Прежде чем задать вопрос в обязательном порядке необходимо ознакомиться с информацией под всеми спойлерами. В том числе там описано как именно нужно задавать вопрос. Не торопитесь писать мне в личку, тут ответят гораздо быстрее.
Активируется настройкой "IR_REMOTE"
Настройка "WAVGAT" - "1"
Использование пульта WAVGAT не рекомендуется. Особенно если планируется пользоваться всем функционалом прошивки. Управление будет сильно перегружено. И сам по себе WAVGAT плохого качества.
1645565730405.png
Настройка "WAVGAT" - "0"
Желательно использовать какой-нибудь пульт от старой техники. Они намного более качественные и на них больше кнопок.
Вот пример как можно настроить управление при наличии большего количества кнопок.
1647204883874.png
Активируется настройкой "BUTTONS"

Имеется Кнопка А и Кнопка В
1. Кнопка А листает режимы с 1 по 9 (и в обратную сторону при двойном клике).
2. Кнопка В листает подрежимы, то есть аналог "*" (и соответственно двойной клик - "#")
3. Длинный клик на А - аналог "0"
4. Длинный клик на В - аналог "Ок"
5. Зажать кнопку А и клацать на В - аналог вверх (двойной клик - вниз)
6. Зажать кнопку В и клацать на А - аналог вправо (двойной клик - влево)
7. Тройной клик на А - аналог повторного нажатия на цифру текущего режима.
8. Тройной клик на В - аналог 4/6-кратного нажатия "Ок"
Функция ДопКанал (ДК). Позволяет в дополнение к адреске подцепить обычную RGB ленту любой длинны (или прожектор например).
А - всё тоже самое, что и на первой кнопке,
В - тоже что и третья кнопка (стробоскоп),
С - "Авто" подстраивается под происходящее на адреске. Если на адреске стробоскоп - то и на ДопКанале стробоскоп, если на адреске зеленый цвет - то и на ДК зеленый цвет, если на адреске плавный огонь - то и ДК переливается в этих же оттенках и тд. Пока "Авто" не оптимизирована под все эффекты.
D - отключен.
Хз кому всё это нужно, но на мой взгляд прикольно. Можно зафигачить по периметру всей комнаты RGB, а допустим над окном адреску. Использовать как обычный свет/подсветку в обычной жизни, а в режиме вечеринки всё это дело будет вызывать эпилепсию. Либо при сборке какой-то переносной конструкции можно будет интересней обыграть проект. Либо использовать ДК вместо "яркость негорящих".

В общем у меня был чисто спортивный интерес к реализации.

Варианты подключения:
На контакты 9-11 через RGB Amplifier китайский или самодельный. Подробно об RGB лентах ТУТ. Поставить в настройках "SUB_CHAN". Так же в настройках можно указать общий катод или анод. При этом индикация на диодах самовыпилится.
Подцепить к последнему пикселу адрески еще один дополнительный адресный чип. И далее уже к нему подпаять RGB Amplifier.

Добыть этот чип можно разными способами:

1 - Купить адресную гирлянду на 50 пикселов ТАКУЮ. Отрезать последний пиксел. Расковырять. Припаять RGB Amplifier вместо/параллельно диоду. Оставшуюся гирлянду использовать по назначению. (я именно так и тестировал).

2 - Купить минимальный отрезок устаревшей WS2811 у которой диоды объединены в группы по три. Отрезать одну такую группу. Припаять RGB Amplifier вместо/параллельно диоду. (планирую испытать, но проблем быть не должно).

3 - Умудриться купить чип отдельно (и тогда поделиться информацией где). Я находил только пачкой в 500 штук.

В настройках "SUB_LEDS" указать количество дополнительных пикселов от 1 до много. Поясняю:

У вас есть 100 пикселов адрески. И вы решили прицепить еще один пиксел с припаянным RGB Amplifier. Значит нужно оставить в основных "NUM_LEDS" 100, а в "SUB_LEDS" указать "1"

У вас есть 100 пикселов адрески. И еще остался обрезок на 20 пикселов и вы решили просто посмотреть как это вообще будет работать и надо ли оно. Цепляете этот обрезок в конец своей ленты. В "NUM_LEDS" оставить 100, а в "SUB_LEDS" указать "20"

Самые умные и ленивые уже поняли, что если впадлу суеиться, но интересно протестировать можно сделать так: В "NUM_LEDS" указать допустим 70, а в "SUB_LEDS" указать "30".
Свой пульт с большим количеством кнопок. Рекомендуется.
Необходимо забиндить дополнительные кнопки пульта на переключение Режимов и Подрежимов ДК.

Пульт WAGWAT. Не рекомендуется.
Два раза нажать "ОК"

Активируется режим настройки ДК. Первые 4 диода горят синим.

Цифры на пульте: 1 - Первый Режим, 2 - Авто, 3 - Стробоскоп, 4 - Выкл.
Кнопки */#: переключают Подрежимы, но не адрески, а ДК.

Нажать "ОК" что бы выйти из режима настроек ДК.

Умные задаются вопросом, а как же теперь с 4-кратным нажатием. Да, теперь при активации ДК оно стало 6-кратным.

У меня не работает. Что делать?
Очень жаль. Не знаю.

Не ну правда?
Правда не знаю.

Ардуина вообще работает? Накатите тестовый скетч «блинк» и проверьте. (в приложении)
Лента вообще работает? Накатите тестовый скетч для ленты и проверьте. (в приложении)
Пульт вообще работает? Накатите тестовый скетч для пульта и проверьте. (в приложении)
Микрофон вообще работает? Накатите любой тестовый скетч для микрофона и проверьте. Тестовые скетчи искать в интернетах, кто первый найдет и оптимизирует (под наши пины) весь комплект - присылайте, прикреплю (часть я уже сделал).

Если что-то из этого не работает по отдельности, то не нужно пытаться запустить всё в сборе и надеяться, что оно само починится. Не починится, разберитесь сначала со своими «железками». Не нужно сразу всё паять, собирайте на макетке иначе вообще никогда не поймете в чем проблема.

Если по отдельности всё работает (на тех же пинах, что и в схеме), значит хоть что-то и с прошивкой должно работать. Напишите конкретно какие режимы не работают или работают неправильно, какая версия прошивки, какая схема (что конкретно и к каким пинам подключено) и при каких настройках.


Хочу как на схеме, микрофон + стереовход!
Делай как на схеме, и настройку «MONO_STEREO» меняй на «0».

Хочу только микрофон!
Ставь только микрофон (как на схеме), и настройку «MONO_STEREO» меняй на «1».

Хочу только линейный стереовход!
Ставь только линейный вход (как на схеме), и настройку «MONO_STEREO» меняй на «2».

Хочу только линейный моновход!
Ставь линейный вход на пин для микрофона, и настройку «MONO_STEREO» меняй на «1».

Хочу три микрофона, один линейный моновход и два дополнительных стереовхода, но я уже всё припаял на первые попавшиеся пины!
Переписывай прошивку. Очень многое прокомментировано. Переназначить пины – элементарно если потратить 10 минут и разобраться.

Как мне откалибровать шум?
1. Включить нужный вход (MIC или LINE) - нажимать "0" в режиме настроек "ОК". Микрофон и линейный калибруются независимо друг от друга!
2. Включить нужный эффект 4-7 (частоты) или 8-9 (уровни). Эти две группы калибруются независимо друг от друга!
3. Нажать 4 раза "ОК"
4. НО!!! Если имеется переменный резистор (крутилка), то повторяйте пункт "3" в разных положениях резистора. По центру, в крайнем правом, в крайнем левом и т.д. Ищите оптимальное положение! Затем уже ПОСЛЕ калибровки ОПЯТЬ можно немного покрутить. Экспериментируйте.


У меня не очень хорошо работает реакция на звук и особенно на частоты.
У меня тоже, а особенно реакция на частоты. Но если все собрать даже на макетке, поставить прошивку, сбросить настройки и откалибровать шум – то худо-бедно работать должно, а дальше уже играться с настройками чувствительности и крутить резистор подгоняя под свою систему. На форуме есть разные решения. А я потихоньку буду ковырять код и сообщать об успехах.
Вот одно из решений.
Итак, первая партия тестовых скетчей. 3 штуки.
Первый - обычный "Blink", для проверки самой платы. Просто мигает встроенным светодиодом раз в секунду. Если у Вас даже это не работает, то стоит призадуматься.
Второй - проверка ленты и питания. Указываем количество светодиодов и лимит по току (если надо). Запускается простенькая анимация Радуги. Через пять секунд включается стробоскоп с довольно "агрессивными" настройками и через 5 секунд опять Радуга. Так до бесконечности.
Если первые 5 секунд всё работает нормально, а потом плата зависает на стробоскопе - я Вас поздравляю, что-то с питанием. На "вспышке" оно сильно проседает и плата зависает. Меняйте блок питания, меняйте провода на более толстые, ставьте конденсаторы, уменьшайте лимит по току в настройках и т.д.
Третий - проверка пульта. Накатываем скетч, открываем монитор порта (выставляем 9600). Жмакаем кнопочки. Названия кнопочек ("Звездочка", "Решетка" и т.д.) выводятся в порт. Помимо этого выводится еще код кнопки. Если кнопка не распознана, то выведет код кнопки и напишет "Нипанятна!". Если ничего этого не происходит - делаем очевидный вывод.

П.С. при тестировании Третьего скетча выяснилась интересная особенность и причина одного "бага". Пульт WAVGAT - редкостное говно.
При нажатии на одну и ту же кнопку может выдать сразу два-три кода (основной и паразитные). С первого раза может вообще не распознаться код. Если зажать кнопку и не отпускать - не распознается. В общем в том числе и поэтому ЦМ с первого нажатия далеко не всегда срабатывает.
П.П.С первый попавшийся пульт от телека отрабатывает как положено и таких глюков не имеет. Стабильно выдает один и тот же код на одну кнопку.

Скетч для проверки/настройки звука будет позже, там сложнее.
  • Дальнейшая оптимизация - теперь поддержка до 300 диодов. Благодарность за тестирование и наводку Aleksandr1612
  • Добавлена возможность изменять ориентацию режимов "Шкала громкости" и "Огонь" - от центра/к центру.
  • Эффекты на "Пёрлине" (Плавный огонь, Облака, Плазма и тд.) теперь реагируют на звук. Каждый немного по своему. Если 3 секунды звука нет, то они возвращаются к своему обычному состоянию.
  • Теперь прошивка совместима со схемой от tehnotraher и OlegAnadyr, в прошивку добавлена соответствующая настройка (протестировать возможности нет, буду рад отзывам)
  • Добавлена настройка отключения индикации на ленте и на диодах
  • Добавлена настройка отключения LINE
  • Добавил несколько цветовых эффектов - ничего особо примечательного, просто для массовки
  • Настройка яркости теперь реализована "правильно" и распространяется на все эффекты
  • Оптимизация - переназначил половину переменных, констант и дефайнов. Оптимизировал функции, дописал новые и тд.
  • Еще глубже оптимизирована структура кода (занятной памяти и строк в коде становится меньше, а функционал растёт), исправлены ошибки/баги. Добавлены комментарии.
  • Исправлено отключение MIC и LINE если используется что-то одно (настройка в прошивке - "MONO_STEREO").
  • Исправлена работа пульта (индикация и сохранение настроек теперь работает правильно).
  • Добавлена возможность переключения MIC/LINE с пульта для схемы без тумблера (в режиме настроек "ОК" нажать кнопку "0").
  • Добавлена возможность выбора цвета стробоскопа (повторное нажатие "3" меняет режимы белый/цветной, */# - выбор цвета).
  • Цветомузыка 3/5 полос теперь на одной кнопке - "6" (повторное нажатие "6" - выбор 3/5 полос, */# - перебор всех возможных комбинаций).
  • Анализатор спектра уехал на кнопку "7", а на "8" теперь с подачи tehnotraher и при его участии новый режим в тестовом варианте. (В зависимости от громкости с разной скоростью вылетают огоньки с краю/центра).
  • Исправлена досадная ошибка с фигурными скобками, о которой много раз отвечал в личке и на форуме.
  • Выпилил выбор схемы. Теперь одна простая универсальная модульная схема (во вложении). Не нужны диоды? Не паяем и отключаем в настройках (INDICATE_ LED 0). То же самое с кнопками (BUTTONS 0), микрофоном и аудиовходом. Микрофон питается напрямую от пина (по потреблению там всё ок), кому надо тот сам разберется куда вставить транзистор или вообще запитать на постоянный +. Не забываем про конденсаторы на питание, чем жирнее – тем лучше. Ну и подсказка: даже если используете один вход можно поставить в настройках два и тогда при переключении просто будет отключаться реакция на звук, мало ли может пригодится кому-то.
  • На кнопке «8» добавлены режимы и настройки. Повторное нажатие «8» - переключает способ «раскрашивания»: радуга/рандом/пара близких цветов. */# - перебор режимов, кнопки «верх/низ» - насыщенность, «лево/право» - цвет пары цветов.
  • Добавлена индикация на ленте режима MIC (первые 4 диода – зеленые), LINE (красные). Для переключения между MIC и LINE – нажать «ОК», а затем «0».
  • Почистил баги, добавил новые. Написал кучу комментариев и тд.
  • Исправил режим 8.2. Ломался если было больше 200 пикселей.
  • Добавил настройку отключения имитации стерео для режима «Уровень громкости». Теперь за это отвечает настройка: «PSEUDO», 1 – включено, 0 – отключено.
  • Добавил функцию отслеживания «тишины» и автоматического включения подсветки спустя n секунд. В настройках: «SILENCE», 1 – включено, 0 – отключено. «SILENCE_TIME» - через какое время включать подсветку.
Работает так:
1. Выбираешь подсветку какая больше нравится (из 1 или 2 режима) настраиваешь по душе.
2. Потом если нужна "цветомузыка", переключаешь на нужный режим пусть будет 9 (Уровни)
3. Если музыка не звучит более 3 секунд (можно настроить), то устройство переходит в режим, который был настроен в пункте 1.
4. Как только появляется звук, то переключается обратно в режим из пункта 2
и так далее до бесконечности.
  • Добавил настройку, отвечающую за «плотность ленты» (количество светодиодов на метр). Настройка: «STRIPE_DENSE», 1 – низкая плотность (30 диодов на метр), 2 – средняя плотность (60-90 диодов), 3 – высокая плотность (144 диода). Пока не очень оптимально, нужна обратная связь, пробуйте разные варианты – говорите, что подкрутить. В предыдущих прошивках настройки режимов соответствуют «низкой плотности».
  • Поправил режим 5 «Бегущие частоты», теперь приоритет на «высокие» (как в оригинале) и не должно заливать всё красным.
  • Опять «покрутил» режим «8», вроде немного получше стало, но еще не идеально.
  • Улучшил баги, добавил ошибки…
  • Выпилил и переписал кучу кода, отвечающего за "Уровни". Поправил баг с оранжевым на концах. За одно добавил туда палитру "Океан".
  • Обновил библиотеку FastLed. Не забудьте скачать новый архив с библиотеками.
  • Настройки подсветки "Тишины" теперь сохраняются 4-кратным нажатием "Ок"
  • Сделал возможным работу на малом количестве диодов (проверял на 10)
  • Добавил падающие точки в "Уровни", спасибо Fantazm. Отключаются через параметр "PEAKS". За одно добавил туда несколько стандартных палитр из библиотеки.
  • Добавил подрежим "Демо" на каждой "цифре". Если его включить, то все эффекты этой кнопки меняются по кругу через каждые 15 секунд (параметр "TOOGGLE_TIME"). Просто #/* листаем до него.
  • Много изменений под капотом, но это всё равно никому не интересно)
  • Изменен алгоритм для обработки уровней. Старый код вырезан вместо него используется код из библиотеки Гайвера.
  • Добавлено новое "полноценное" управление на 2 кнопках. И заменена кнопочная библиотека. Включение: настройка "BUTTONS".
  • Добавлена функция ДопКанал (ДК). Позволяет в дополнение к адреске подцепить обычную RGB ленту любой длинны (или прожектор например).
  • Полностью переписано хранение/сохранение настроек. Теперь для каждого эффекта свои уникальные настройки.
  • Добавлены настройки запуска системы после отключения питания.
  • Все настройки на первой страницы перегруппированы и разбиты на блоки для удобства.
14.03.2022 v3.1:
  • Исправлено огромное количество багов.
  • Добавлено более гармоничное управление пультами с большим количеством кнопок.
  • Переписан "Стробоскоп". Вырезана плавность старта и затухания. Добавлен двухцветный Подрежим.
1. Расширить функционал ДК:
  • оптимизировать режим "Авто" под все эффекты.
  • добавить "реакцию на звук".
  • добавить новых "комбо" режимов с изначально продуманной совместной работой ДК и Адрески.
2. Добавить поддержку 7-сегментного индикатора совместно с SeGAD.
3. Использовать библиотеку MicroLed.
4. Улучшить обработку звука.
Скачать: прошивка, библиотеки, тестовые скетчи.
Шпаргалка для пульта тут, не забудьте поставить лайк энтузиасту.

П.С. большая благодарность всем кто отписывает на форуме, это сильно помогает и вдохновляет.
1616446492224.pngaaf83d60-ac6c-415d-a03e-62069d61db0f.jpg
 

Вложения

Изменено:

Комментарии

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
@novvel,
@Slenk, Я вот просто раньше не замечал, было такое или нет с ней, редко использовал этот режим палитры, в основном огненная стояла. Может попробовать просто залить палитрой ленту и проверить? Это наверное как то связано с количеством светодиодов или с делением пополам, Потому что именно один пиксель по краям ленты только так работает, до этого я писал уже что был такой баг в середине палитры/уровня VU метра, но потом он исчез, не смог найти это сообщение свое, его удалили может))

ЗЫ: В скетче опять какое то старое описание кстати, пропал пункт 2.20 :D
Предлагаю навести порядок в прошивках, убрать все ненужное далеко и работать с одним экземпляром стабильным и вторым прибранным бета, ну и наверное все таки создать отдельную тему и закрепить ссылку))
Да вот я сам не знаю. Я же ей вообще не пользуюсь по назначению))) Вчера опять пол ночи ковырялся, видео Гайвера на замедленном пересматривал (такое чувство, что у него в некоторых моментах тоже края оранжевые). Пробовал просто заливать всё одним цветом, без каких-то промежуточных вычислений. ТУПО вбил 255, должно светить красным, а светит желтым. От количества диодов и прочего не зависит, я напрямую выводил. Да и компилировал на разном количестве. Так не один пиксел работает, а больше у меня. Еще зависит от типа палитры.

Вот, что нашел внутри библиотеки:
/// Approximate "black body radiation" palette, akin to
/// the FastLED 'HeatColor' function.
/// Recommend that you use values 0-240 rather than
/// the usual 0-255, as the last 15 colors will be
/// 'wrapping around' from the hot end to the cold end,
/// which looks wrong.
extern const TProgmemRGBPalette16 HeatColors_p FL_PROGMEM;
Говорят, юзайте типо диапазон от 0 до 240 вместо 0-255. Ибо последние 15 значений начинают показывать в обратную сторону. Но это написано для одной конкретной забинденной палитры. Но наша "самопальная" глючит ровным счетом так же, мне пришлось ограничить до 240, что бы заканчивалось красным. Причем я сначала ограничил, и потом нашел это описание. Совпадение? Не думаю...

Пункта 2.20 там вроде никогда и не было, я его просто еще не дописал))

Да я в принце один экземпляр и пересохраняю нарастающим итогом. Ветвления как такового нет.
 
  • Лойс +1
Реакции: fastdron

Мах

✩✩✩✩✩✩✩
18 Фев 2020
7
2
Помогите пожалуйста, собрал все по схеме Алекса, только с микрофоном и пультом, залил вашу прошивку, но работает только белый цвет и радуга. Думал что-то напутал, но собрал вторую, та же история. Может в прошивке надо что-то менять или по вашей схеме собирать. Та же схема на прошивке 2.0 работала.
 

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
Помогите пожалуйста, собрал все по схеме Алекса, только с микрофоном и пультом, залил вашу прошивку, но работает только белый цвет и радуга. Думал что-то напутал, но собрал вторую, та же история. Может в прошивке надо что-то менять или по вашей схеме собирать. Та же схема на прошивке 2.0 работала.
Для начала почитайте пожалуйста вот тут:
Мне кажется, у Вас аналогичная проблема. Ну еще почитайте все изменения в прошивке по версиям, там описывал, что нужно выставлять в настройках и где.

А я попутно буду составлять "форму вопросов":
1. Что именно и куда припаяно (но в Вашем случае вроде понятно)
2. Какая версия прошивки?
3. Какие настройки изменили в прошивке?
4. Что именно и как не работает? Какие именно режимы? Не переключаются режимы? Переключаются и не реагируют на звук? Плохо реагируют на звук? Подсветки тоже не работают?
 
Изменено:
  • Лойс +1
Реакции: fastdron

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
@Slenk,
в общем по пульту такие предложения:
Чувствительность из режимов 4, 5, 6 везде выпиливаем и оставляем только через кнопку "ОК" и вешаем ее на кнопки * и #, что бы не путаться, в режиме 8 меняем местами настройки цвета и насыщенности. Пока только это из неудобств обнаружено.
Дело в том, что "чувствительность" и "настройка шума" - это разные вещи))
 
  • Лойс +1
Реакции: Мах и fastdron

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
Писал в другой теме, но повторюсь. Начал ковырять "звук", пока только уровни. Повыкидывал лишнее, и переписал саму анимацию (теперь ~20 строчек вместо ~50). Обновил библиотеку FastLed. В итоге освободилось примерно 2% оперативки и пол килобайта памяти. Природа глюка с "оранжевым на концах" мне до сих пор не понятна. Но пока решил "костылём". Думаю накинуть в уровни еще других стандартных палитр, чисто для массовки.
Частоты рано или поздно тоже поковыряю, расчихлю свой осциллограф, достану из кровати синтезатор и вперед... Но всё же склоняюсь к использованию для этих целей отдельной микросхемы (MSGEQ7).
Пока планирую нормально оформить тему. Написать инструкций и ответов на частые вопросы. А также подготовить пачку тестовых скетчей. А то у вас обычно просто: "НИРАБОТАИТ!!!" И для тех у кого "ниработаит" будет штук пять скетчей, накатывая которые по очереди можно будет отсекать проблемы. Первым скетчем проверяем работоспособность ардуины, вторым ленты, третьим пульта и т.д. А то всем форумом приходится гадать, что там за проблема у вас.
 

wadimsuv

★★★✩✩✩✩
17 Ноя 2020
191
108
@Slenk, Если будет возможность и время, то сделайте пожалуйста на какую ни-будь кнопку (или комбинацию кнопок) возможность запуска режимов с 4 по 9 в ДЭМО. Т.Е. что бы цветомузыкальные режимы менялись с определенным интервалом времени. Я видел что подобная просьба уже была, но все же.
 
  • Лойс +1
Реакции: Vasyatko и galchik22

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@Dinozavr, да уж... из 3 микросхем 3 нерабочие это явная хрень... Спасибо за информацию, буду знать.
 
  • Лойс +1
Реакции: technotrasher

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
@wadimsuv, да руки до этого никак не дойдут) Вообще планировалось.

@kDn, я вроде нашел место, где "Мамой клянутся", что всё 100% проверено и рабочее. Тут пока не выкладываю, потому что сам еще не проверил, но могу в личку кинуть.
 

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
Продолжаю лить поток сознания (в первую очередь для себя). Забыл написать, что хочу попробовать перевести всё это хозяйство на MicroLed. Тогда теоретически до 1000 диодов будет поддержка, но надо пробовать.
Еще хочу посмотреть что там в "новогодней герлянде" из соседней темы, может кто-то уже может сказать, что позаимствовать?

Ну и в процессе споров в теме про подсветку лестницы родилась идея сомнительной полезности, но мне чисто из спортивного интереса хочется поковырять в эту сторону. Суть такова: задействовать последний (или первый) диод, расширив его функционал (и размер). Вместо диода подключить голую схему ws2811 и повесить на неё два-пять-двадцать метров обычной RGB ленты, которая сможет выводить одноцветные эффекты (например стробоскоп или "ультрафиолет" по периметру комнаты) одновременно с основной цветомузыкой, при этом (теоретически), практически не нагружая дополнительно ардуину. Этакий "сабвуфер" если проводить аналогию со звуком, стоит в углу, в звуке особо не участвует, но создает "атмосферу" и "глубину", без него тоже можно, но с ним прикольнее)) Будет такое единое "хай-гуляй" устройство, что бы десятком пультов и "коробочек" не жонглировать. Ну это так, мысли в слух.
 
Изменено:

novvel

★★★✩✩✩✩
29 Сен 2018
568
192
Дело в том, что "чувствительность" и "настройка шума" - это разные вещи))
тогда это нужно отдельно пояснить для чего нужна чувствительность, потому что я разницы не вижу :D уменьшаю уровень по шуму до момента срабатывания помехи и пару шагов вверх, работает от шепота фактически. может это нужно для линейного входа...

Писал в другой теме, но повторюсь. Начал ковырять "звук", пока только уровни. Повыкидывал лишнее, и переписал саму анимацию (теперь ~20 строчек вместо ~50). Обновил библиотеку FastLed. В итоге освободилось примерно 2% оперативки и пол килобайта памяти. Природа глюка с "оранжевым на концах" мне до сих пор не понятна. Но пока решил "костылём". Думаю накинуть в уровни еще других стандартных палитр, чисто для массовки.
Частоты рано или поздно тоже поковыряю, расчихлю свой осциллограф, достану из кровати синтезатор и вперед... Но всё же склоняюсь к использованию для этих целей отдельной микросхемы (MSGEQ7).
Пока планирую нормально оформить тему. Написать инструкций и ответов на частые вопросы. А также подготовить пачку тестовых скетчей. А то у вас обычно просто: "НИРАБОТАИТ!!!" И для тех у кого "ниработаит" будет штук пять скетчей, накатывая которые по очереди можно будет отсекать проблемы. Первым скетчем проверяем работоспособность ардуины, вторым ленты, третьим пульта и т.д. А то всем форумом приходится гадать, что там за проблема у вас.
ну природа глюка скорее всего в библиотеке зарыта, раз весь код перекопан. А тестовые скетчи есть в стандартной сборке по идее, у меня когда не работало я так и заливал по очереди и искал. Синтезатор если что можно использовать онлайн, генераторов куча в инете, что бы не лазить по комнатам в поисках железного коня синтезатора))

Да, и выложи бету 265 то, а то тестировать не кому будет, раз переехали сюда :D

Я готов на любые прошивки, если они не будут отличаться от текущей схемы, я ленивый и не готов паять новые устройства и печатать новый корпус)
 
Изменено:
  • Лойс +1
Реакции: Slenk

ig3757

✩✩✩✩✩✩✩
7 Ноя 2020
18
5
ColorMusic_Fire_Edition_v2.6.5- как то странно работает. Прошил с такими настройками: (#define MONO_STEREO 2; #define CURRENT_LIMIT 5000; #define STRIPE_DENSE 2; #define POTENT 0( не ставил); #define HIGH_COLOR HUE_BLUE(вместо YELLOW, вроде так красивше)). Всё заработало, потом может перестать включаться, на пульт не реагирует, тыкаеш пульт может заработать. Поставил ColorMusic_Fire_Edition_v2.6- без вопросов. Это у меня одного?
 

Мах

✩✩✩✩✩✩✩
18 Фев 2020
7
2
Для начала почитайте пожалуйста вот тут:
Мне кажется, у Вас аналогичная проблема. Ну еще почитайте все изменения в прошивке по версиям, там описывал, что нужно выставлять в настройках и где.

А я попутно буду составлять "форму вопросов":
1. Что именно и куда припаяно (но в Вашем случае вроде понятно)
2. Какая версия прошивки?
3. Какие настройки изменили в прошивке?
4. Что именно и как не работает? Какие именно режимы? Не переключаются режимы? Переключаются и не реагируют на звук? Плохо реагируют на звук? Подсветки тоже не работают?
спасибо, все заработало))
 

novvel

★★★✩✩✩✩
29 Сен 2018
568
192
@ig3757, у меня нормально, первый старт был тяжелый, сейчас нормально.
 

ig3757

✩✩✩✩✩✩✩
7 Ноя 2020
18
5
А у меня старт сразу ок, потом вдруг потухла и то работает, то нет. С 2.6 всё ок.
 

Мах

✩✩✩✩✩✩✩
18 Фев 2020
7
2
На прошивке 2.0 все работает отлично, на эту же сборку залил прошивку 2.6 ,не работает 8 и 9 режим, только когда притрагиваюсь рукой микросхеме или на расстоянии 5 мм палец, начинает реагировать. Это магия?)))
 

novvel

★★★✩✩✩✩
29 Сен 2018
568
192
@Мах, откалибруй уровень шума, тут разные настройки на первые и на 8-9 вроде.
 

Slenk

★★★★★★✩
21 Янв 2020
382
591
34
Краснодар
Итак, первая партия тестовых скетчей. 3 штуки.
Первый - обычный "Blink", для проверки самой платы. Просто мигает встроенным светодиодом раз в секунду. Если у Вас даже это не работает, то стоит призадуматься.
Второй - проверка ленты и питания. Указываем количество светодиодов и лимит по току (если надо). Запускается простенькая анимация Радуги. Через пять секунд включается стробоскоп с довольно "агрессивными" настройками и через 5 секунд опять Радуга. Так до бесконечности.
Если первые 5 секунд всё работает нормально, а потом плата зависает на стробоскопе - я Вас поздравляю, что-то с питанием. На "вспышке" оно сильно проседает и плата зависает. Меняйте блок питания, меняйте провода на более толстые, ставьте конденсаторы, уменьшайте лимит по току в настройках и т.д.
Третий - проверка пульта. Накатываем скетч, открываем монитор порта (выставляем 9600). Жмакаем кнопочки. Названия кнопочек ("Звездочка", "Решетка" и т.д.) выводятся в порт. Помимо этого выводится еще код кнопки. Если кнопка не распознана, то выведет код кнопки и напишет "Нипанятна!". Если ничего этого не происходит - делаем очевидный вывод.

П.С. при тестировании Третьего скетча выяснилась интересная особенность и причина одного "бага". Пульт WAVGAT - редкостное говно.
При нажатии на одну и ту же кнопку может выдать сразу два-три кода (основной и паразитные). С первого раза может вообще не распознаться код. Если зажать кнопку и не отпускать - не распознается. В общем в том числе и поэтому ЦМ с первого нажатия далеко не всегда срабатывает.
П.П.С первый попавшийся пульт от телека отрабатывает как положено и таких глюков не имеет. Стабильно выдает один и тот же код на одну кнопку.

Скет для проверки/настройки звука будет позже, там сложнее.
 

Вложения

  • 3.6 KB Просмотры: 55
Изменено:

BigDog

★★✩✩✩✩✩
30 Июн 2020
116
51
Второй - проверка ленты и питания. Указываем количество светодиодов и лимит по току (если надо). Запускается простенькая анимация на Пёрлине. Через пять секунд включается стробоскоп с довольно "агрессивными" настройками и через 5 секунд опять Пёрлин.
Предложил бы добавить или заменить один из эффектов на бегущую радугу. Это поможет не только проверить работоспособность ленты в целом, но и оценить визуально способность каждого светодиода отображать цвета. Был такой прецедент. Только надо или время работы эффекта увеличивать, или скорость, чтобы радуга успела пару раз полностью пробежать всю ленту.
 
  • Лойс +1
Реакции: Slenk