Цветомузыка на Arduino. Задания на доработку

technotrasher

★★★★✩✩✩
14 Ноя 2019
501
223
Всем привет! Подскажите кто шарит, можно ли вместо одного из ненужных эффектов например стробоскоп вставить пламя(перлин)?
легко!

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

Возможно ли добавить в прошивку будильник рассвет?
а это как???? интересная идея.
 

razalt

✩✩✩✩✩✩✩
31 Июл 2020
1
0
Всем привет!
Только начинаю изучать работу с Arduino по урокам Gyver'а.
Очень хочется поменять работу режима 7.1.
Хочу сделать так, чтобы статично светились 4 участка ленты разными цветами.
Если не затруднит, товарищи, объясните, как это можно сделать?
Заранее премного благодарен!)
P.S. проект спаял, все отлично работает, за что огромное спасибо Alex!)
 

Maxim9775

✩✩✩✩✩✩✩
26 Авг 2020
2
1
Есть ли способ сделать начало (низкий уровень) не из центра к краям, а из начала к центру или из начала вдоль всей линии(режим моно)?
 
  • Лойс +1
Реакции: 10Maks

Alekandron

✩✩✩✩✩✩✩
2 Ноя 2020
21
1
Привет!!! Переработал я схему да скетч. очень понравился проект, да не понравилась реализация. Хотелось и того и сего и вот так чтобы.
Большая благодарность OlegAnadyr. Я взял его доработку. На устранение всех ошибок ушла неделя. Очень криво было написано. Но устранение ошибок - по закону, порождало новые ошибки . Пришлось хорошо поработать. Схему я взял такую - хочу и микрофонный и линейный входы. никаких моно с линейного. обрабатываем оба выхода. регулировки чувствительности - и в первом режиме. Не лез исправлять в математическую часть. Лезть по конспектам 20 летней давности пока нет интереса. поэтому правил только "механику". И ещё раз благодарность OlegAnadyr за режим 0 - добавок к скетчу с очень красивыми эффектами! на режиме 1 теперь есть регулировка чувствительности. на пульте не хватило кнопок для включения микрофона. Поэтому сделал кнопку физическую. В скетче есть закомментированные блоки для отладки. Обязательно раскомментируйте - проверьте на макетке все параметры перед сборкой. Состояние при выключении - сохраняется. включается в ВЫКЛЮЧЕННОМ состоянии. Регулировка чувствительности - 4 раза в "тишине" нажать ОК. НО!!!! сначала нажать один раз! переход в меню. Светодиод горит зелёным! И теперь уже 4 раза. На последнем зелёный светодиод мигнёт! Если нет - то повторяем, пока не получится. :) И не спешим, и не делаем медленно. В НАЧАЛЕ скетча все расписано! Все режимы и что где. Больше в эту цветомузыку на данной arduino ничего не влезет. :) Код можно оптимизировать вечно. если кто сделает - будет хорошо. По БП! У меня три метра - 180 светодиодов потребляет в пике -2 Ампера!!! Так что 1А на метр - избыточно, если 60 светодиодов на метре. Совет - в работе меньше тыць кнопки. так как все происходит в слепую, то можно такого её наклацать, что придется идти, перешивать, обнулять. Посему - чувствительность остальное - аккуратно. Идея - сделать физ. кнопку обнуления памяти.
p.s. - Эту прошивку можно отлично использовать и со схемой Alexa. так как пины основные все на месте! и будет работать линейный вход. и пульт от wavgat.
обновил скетч. поправил баги.

в ходе тестирования выяснилось - конденсаторы С3 и С4 не нужны. заменить перемычками. Резисторы R3, R4 и R5 не нужны. их просто не устанавливать.


10 апреля 2020 год.
Всем привет! я сделал новую версию! полностью переработал некоторые части. исправил баги. доработал работу с микрофоном. Кое какие идеи взял у mikuz (благодарность!). Все работает идеально. и от линии и от микрофона. Все проверенно неоднократно. Именно так как есть. Читайте документацию. которую вот нифига не читаете. в начале скетча все подробно так же расписано. прибор перед эксплуатацией требует настройки. шумы. регулировки. согласование уровней. смотря от чего будете подавать сигнал.
Обновление. добавленны два огненных эффекта. fireLinePerlin: плавный огонь на шуме Перлина и fireLineZones: огонь с фиксированным количеством зон.
Вызываются кнопкой 0 на пульте и далее # до нужного эффекта.
осталось 12% не занятой памяти...
обновление. исправлен "дубляж" сохранения шумов. и отключено чтение значений шумов при старте из памяти. тестирование показало - приводит к многим проблемам. ручная настройка рулит!
так же обновлена библиотека EEPROM.
23 мая 2020 год.
Доработал и разгрузил память. убрал несколько лишних эффектов. убрал пару режимов в цветомузыке. Доделал сброс настроек через кнопку на пульте (благодарю за идею Slenk). Убрал багу с выводом параметров для тестирования. Сразу все "вздохнуло с облегчением" :). режим 2 пока пуст. очень не хочется туда ставить эффект для подсветки ресторана или бара. Хочется режим ЦМУ. ну и корпус в автокаде. в корпус помещается сама плата, БП, и преобразователь 12 в 5 В для работы от авто акб. Описание работы ЦМУ теперь в начале скетча.

4.07.2020 - новая версия ЦМУ. добавлены новые режимы. Особая благодарность Slenk. без его доработок не было бы очень интересного режима работы!!!
18.08.2020 - доработки. освобождена память. что то убрано, что то добавлено. оптимизированно.
6.09.2020 - ещё добавлен один эффект.
Здравствуйте! А, реально добавить в скейтч, чтобы светодиоды в режиме ЦМУ гасли до конца в режиме воспроизведения музыки, а когда наступает пауза в воспроизведении, например более 2 секунд, включать подсветку.
 

technotrasher

★★★★✩✩✩
14 Ноя 2019
501
223
заполнение паузы - можно точно. как на лайтпортале в цму. а с первым не понял. гасли до конца??? а они не гаснут? а в каком режиме?
 

Alekandron

✩✩✩✩✩✩✩
2 Ноя 2020
21
1
заполнение паузы - можно точно. как на лайтпортале в цму. а с первым не понял. гасли до конца??? а они не гаснут? а в каком режиме?
В режиме ЦМУ, чтобы во время пауз не было темно, светодиоды настроены на минимальное свечение, которое присутствует во время воспроизведения музыки.
 

technotrasher

★★★★✩✩✩
14 Ноя 2019
501
223
понял. там изначально так было. но. память была не резиновая и я выбросил этот режим. если влезет - верну взад. :) или скажите какой режим лишний.
 

novvel

★★★✩✩✩✩
29 Сен 2018
568
191
@Slenk, появилось предложение к следующей версии, лежал тут щелкал режимы и т.п. : нужно сделать во всех режимах цвета на одни и те же кнопки, а то где то цвет выбираешь влево/вправо, а где то вверх/вниз. Нужна унификация, а то теряешься, долго не мог понять почему не меняется цвет в 9 режиме))) Я могу конечно себе это переписать сейчас наверное, но думаю для всех будет удобнее в след версии.
 
  • Лойс +1
Реакции: fastdron

Slenk

★★★★★★✩
21 Янв 2020
382
588
34
Краснодар
@Slenk, появилось предложение к следующей версии, лежал тут щелкал режимы и т.п. : нужно сделать во всех режимах цвета на одни и те же кнопки, а то где то цвет выбираешь влево/вправо, а где то вверх/вниз. Нужна унификация, а то теряешься, долго не мог понять почему не меняется цвет в 9 режиме))) Я могу конечно себе это переписать сейчас наверное, но думаю для всех будет удобнее в след версии.
Согласен, самого бесит, но есть проблемка)))
1610350728718.png
Допустим поменяю я в режиме 1.2 настройки местами. И "цвет" станет на вверх/вниз, как на режимах "2", но тогда "насыщенность" станет не стандартизирована) И тд.)
Если есть идеи как всё это красиво уложить, то я только за. С тебя инструкция (она же ТЗ), с меня код))

Читканул кстати эту ветку на пару сообщений вверх, вчера как раз написал кусок кода, что бы во время тишины включалась подсветка (сам выбираешь какая из режимов 1 и 2), но надо отладить. На этих сраных огоньках (режим 8.1) работает через ж...
 
  • Лойс +1
Реакции: SeverTV и novvel

novvel

★★★✩✩✩✩
29 Сен 2018
568
191
@Slenk, Я себе поменял местами кнопки вверх/вниз и вправо/влево только в 8 режиме, стало более привычно пока что. Остальные вроде не путались у меня раньше) Еще в огоньках странный феномен заметил: быстрые идут плавно, а медленные как бы с фризами плывут, не знаю это код или просто восприятие так играет. Кстати может подскажешь как как исправить баг с сменой цвета фоновой подсветки на малой яркости? Допустим у меня аква стоит цвет, но на последних 3-4 градациях яркости цвет переходит в зеленый, а на последней начинает заметно мерцать. Это баланс белого или глюк самой библиотеки/кода/ленты и как вычислить кто виноват?

ЗЫ: плохо когда понимаешь только суть кода в общем смысле и не разбираешься в тонкостях....:D
ЗЫЗЫ: с кнопками я подумаю как организовать и оптимизировать, если что придет в голову, то отпишу или тут или в личку, но это не быстро, потому что не так часто переключаюсь туда-сюда, обычно пару режимов настроил и забыл. Во время тестов только выявил неудобство вот одно.
 
Изменено:

Slenk

★★★★★★✩
21 Янв 2020
382
588
34
Краснодар
@novvel, это издержки переноса плавного изменения скорости на "дискретную" ленту.
Самые быстрые пикселы сдвигаются на один пиксел за один проход цикла. Таким образом один огонек плавно проходит 100 пикселов за 100 тактов.
А вот если скорость равна допустим 90% от максимальной, то получится, что огонек будет "замирать" на один такт в каждом 10 пикселе (ну плюс/минус, смысл думаю ясен) и это воспринимается как глюк.
Хз как с этим бороться, я поднял минимальную скорость - стало получше вроде, но это костыль. Что бы совсем избавиться от эффекта "замирания" можно уменьшать скорость кратно (тогда огонек станет пропускать 1/2/3/4 такта в КАЖДОМ пикселе), но это слишком много мне кажется, хотя может и стоит попробовать. Оставить допустим всего 3-5 уровней громкости.
Еще были мысли запилить типо Anti-aliasing/ClearType, но это конечно жестко)) Надо поискать, может есть готовые реализации, что бы велосипед опять не изобретать.

"Это баланс белого или глюк самой библиотеки/кода/ленты и как вычислить кто виноват? " начни с проверки питания) Точно ли есть 5 вольт на ленте? Если питания не хватает, то то цвет может уходить в сторону (красные держатся до последнего).
 
Изменено:

novvel

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

Первая неделя после праздников думаю у меня без энтузиазма и пока не буду ничего трогать.
 

Slenk

★★★★★★✩
21 Янв 2020
382
588
34
Краснодар
@novvel, подкрутить не получится, там надо будет всю логику переписать. У меня плотность максимально возможная, но всё равно заметно)) А вот на минимальной в 30 диодов/метр как раз таки я этого не замечал. В видео наверно всё вместе роль играет и плотность, и длинна, и тот факт, что это видео. Я когда выставляю все 288 - видно фризы. Если только 100 (70 сантиметров), то они очень быстро проскакивают и глюков не заметно.
 

111mike111

✩✩✩✩✩✩✩
17 Янв 2021
1
0
Всем привет. Не могли бы подсказать как залить и прошивку цветомузыки и прошивку стороннего ик пульта? Так как при загрузке одного скетча, другой стирается. Спасибо
 

bort707

★★★★★★✩
21 Сен 2020
2,894
860
Всем привет. Не могли бы подсказать как залить и прошивку цветомузыки и прошивку стороннего ик пульта? Так как при загрузке одного скетча, другой стирается. Спасибо
никак. Надо переписывать код и обьединять скетчи
 

novvel

★★★✩✩✩✩
29 Сен 2018
568
191
@Slenk,
в общем по пульту такие предложения:
Чувствительность из режимов 4, 5, 6 везде выпиливаем и оставляем только через кнопку "ОК" и вешаем ее на кнопки * и #, что бы не путаться, в режиме 8 меняем местами настройки цвета и насыщенности. Пока только это из неудобств обнаружено.
 

Adrenalinadin

✩✩✩✩✩✩✩
27 Янв 2021
1
0
Всем привет,подскажите.Есть ли программа на андроид для управления сего чуда через ir.
 

novvel

★★★✩✩✩✩
29 Сен 2018
568
191
@Adrenalinadin, берешь там любой пульт, считываешь коды и вписываешь в прошивку, как это сделать написано на 1й странице скетча у сленка, у алекса в видео или на странице проекта.
 
  • Лойс +1
Реакции: Adrenalinadin

Sanek200

✩✩✩✩✩✩✩
16 Фев 2021
4
0
Доброго дня!
Разрезал ленту (116 диодов) на два участка. Хочу повесить в комнате по углам, а в углу поставить контролер и провода пустить по углу.
При таком подключении столкнулся с проблемой что середина ленты это в моем случаи края т.е. свет от краев к середине идет. Я понимаю что можно просто повернуть ленту, но тогда контролер и провода посередине стены получаются((((
Отсюда вопрос: можно изменить при моем подключении направление светящих диодов? Или сделать что бы два куска ленты работали отдельно друг от друга?

P.S. Делаю светомузыку с таким расчетом что бы можно было перемещать(Квартира, дача, гараж ну так по пьяне может где пригодится) два куска по 1м, а не один двух метровый. Делаю так чтобы объединить три режима(микрофон, 3,5 аудио джек и выход с колонок) через переключатель.

Спасибо!
 

Вложения

Slenk

★★★★★★✩
21 Янв 2020
382
588
34
Краснодар
@Sanek200,
в этой прошивке есть настройки для "разворота" эффектов, если я правильно понял вопрос.

#define CMU_CENTER 1 // 0 - к центру, 1 - из центра
#define FIRE_CENTER 0 // Режим "Огонь" ( 0 - к центру, 1 - из центра )

Можете там посмотреть как это реализовано.
 
  • Лойс +1
Реакции: Sanek200

PerHakS

✩✩✩✩✩✩✩
7 Дек 2020
13
3
@Senya, добро пожаловать в клуб)))))
Скажите пожалуйста, можно ли сделать как нибудь так, чтобы режимы все или частично или выборочно шли по порядку, в настройках желательно чтобы можно было выбирать время идущего режима и ещё что-то, просто надоедает один и тот же режим и щёлкать самому не хочется.. :)
 
  • Лойс +1
Реакции: Vasyatko