Огненный светильник. Задания на доработку проекта

SoHo

✩✩✩✩✩✩✩
28 Мар 2019
1
0
Добрый день, задался таким вопросом, что если попробывать объеденить данный проект, с проектом где люди реализовывали вывод на Led градиент, использование 2 цвета плавно переходящие к друг другу. Получилось реализовать Gradient color palettes но заставить переливатся другим цветом не как. Подскажите пожалуйста, где можно взять более подробную информацию о том как указывать какой цвет показывать на выводе LED.
Менял значение в:
DEFINE_GRADIENT_PALETTE( heatmap_gp ) {
0, 0, 0, 0, //black
128, 255, 0, 0, //red
224, 255,255, 0, //bright yellow
255, 255,255,255 }; //full white

Но все безрезультатно, он все равно выдает красный желтый белый.
 

SEGA_1986

✩✩✩✩✩✩✩
24 Ноя 2019
3
0
Подскажите по коду, как сделать что-бы начиналось с другого эффекта, как удалить другие?
Пробовал менять "switch (thisMode)" имена и цифры - толку ноль, Если менять в effects - компилятор ошибку выдаёт..
(case 0: rainbow case 1: colors case 2: fire case 3: lighter case 4: sparkles case 5: lightBugs case 6: vinigret)
 

somon

★★★✩✩✩✩
20 Авг 2019
150
128
@SEGA_1986,
В строке:
this Mode = 1
Ставишь номер эффектов из скетча (0 (ноль) по умолчанию у Алекса, и 7 у VictorS)
1574614996555..jpg

А в:
switch (thisMode)
закомментируйте не нужные кейсы.
1574615277054..jpg
 

SEGA_1986

✩✩✩✩✩✩✩
24 Ноя 2019
3
0
@SEGA_1986,
В строке:
this Mode = 1
Ставишь номер эффектов из скетча (0 (ноль) по умолчанию у Алекса, и 7 у VictorS)

А в:
switch (thisMode)
закомментируйте не нужные кейсы.

Благадарю за ответ, первый режим сменился, если менять thisMode.

Но если закомменитровать 2-3 эффекта, то при переключении - они остаются, но не горят.
Тупо надо ждать 30с если включён АвтоПлей или принудительно переключать кнопкой...
 

somon

★★★✩✩✩✩
20 Авг 2019
150
128
@SEGA_1986, возможно что-то забыл ещё... Я не программист, делал подобные настройке под себя 4+ месяцев назад. Сегодня посмотрю ещё (на работе), если получится...

P. S. А вообще такие вещи нужно обсуждать в профильной ветке...
 

somon

★★★✩✩✩✩
20 Авг 2019
150
128
Благадарю за ответ, первый режим сменился, если менять thisMode.

Но если закомменитровать 2-3 эффекта, то при переключении - они остаются, но не горят.
Тупо надо ждать 30с если включён АвтоПлей или принудительно переключать кнопкой...
вот как надо, вспомнил...

закомментировать не нужные, а оставшимся присвоить сквозную нумерацию (счёт с ноля!), пример:
1574674310591.png
затем указать реальное количество оставшихся эффектов (счёт с денницы!), пример:
1574674422497.png
после всё корректно должно работать...

P.S. если добавлять эффекты, то так же: -копируешь новый эффект в закладку "effects"; его название добавляешь в список "switch (thisMode)"; присваиваешь порядковый номер; указываешь общее кол--во эффектов с учётом нового. вроде так всё я когда-то и делал...
 
  • Лойс +1
Реакции: SEGA_1986

SEGA_1986

✩✩✩✩✩✩✩
24 Ноя 2019
3
0
вот как надо, вспомнил...
закомментировать не нужные, а оставшимся присвоить сквозную нумерацию (счёт с ноля!), пример:
затем указать реальное количество оставшихся эффектов (счёт с денницы!), пример:
после всё корректно должно работать...
P.S. если добавлять эффекты, то так же: -копируешь новый эффект в закладку "effects"; его название добавляешь в список "switch (thisMode)"; присваиваешь порядковый номер; указываешь общее кол--во эффектов с учётом нового. вроде так всё я когда-то и делал...
Благадарю, всё получилось, убрал парочку эффектов, и упорядочил на свой вкус.
 

Dr_Off

✩✩✩✩✩✩✩
4 Дек 2019
55
4
Не кто не задумывался над тем, чтобы сделать в скетче запоминание (запись) последних настроек в ЕПРОМ? А то после того, как выключается питание приходится заново настраивать.
 

Trodef

✩✩✩✩✩✩✩
23 Апр 2020
6
2
День добрый. Возникло желание немного доработать светильник. Хочу сделать в виде бра, т.е. два плафона, две матрицы и один модуль СН-340. Подскажите как это сделать, чтобы управлялось одним модулем и лампы светили синхронно (не обязательно синхронно, просто в одинаковых режимах). Как изменится схема и скетч?
 

Gen@

★★✩✩✩✩✩
13 Апр 2020
60
57
День добрый. Возникло желание немного доработать светильник. Хочу сделать в виде бра, т.е. два плафона, две матрицы и один модуль СН-340. Подскажите как это сделать, чтобы управлялось одним модулем и лампы светили синхронно (не обязательно синхронно, просто в одинаковых режимах). Как изменится схема и скетч?
просто добавить в скетч ещё одну ленту.
перед прорисовкой первой ленты просто скопировать массив первой во вторую
и потом рисовать обе
 

Trodef

✩✩✩✩✩✩✩
23 Апр 2020
6
2
просто добавить в скетч ещё одну ленту.
перед прорисовкой первой ленты просто скопировать массив первой во вторую
и потом рисовать обе
А подключение управления второй матрицы брать с OUT первой или с отдельного пина модуля?
 

Gen@

★★✩✩✩✩✩
13 Апр 2020
60
57
А подключение управления второй матрицы брать с OUT первой или с отдельного пина модуля?
с отдельного пина модуля.
у меня например так сделана подсветка перил тут https://github.com/degterjow/LEDstairs/blob/master/firmware/LEDstairs_v1.1/LEDstairs_v1.1.ino
но разница в том, что у меня на перилах и на лестнице разное количество светодиодов, поэтому я рисую на каждой лентой по отдельности.
в Вашем случае ленты одинаковые, поэтому не стоит тратить ресурсы процессора на двойные вычисления
посчитали эффект для одной, скопировали на другую и показали обе
 

Gen@

★★✩✩✩✩✩
13 Апр 2020
60
57
Хотя возможно можно использовать один и тот же массив для инициализации обеих лент, тогда делать вообще ничего не надо.
C++:
LEDdata stripLEDs[STRIP_LED_AMOUNT]; 
microLED strip1(stripLEDs, STRIP_PIN1, STEP_LENGTH, STEP_AMOUNT, ZIGZAG, LEFT_BOTTOM, DIR_RIGHT);  // объект матрица

microLED strip2(stripLEDs, STRIP_PIN2, STEP_LENGTH, STEP_AMOUNT, ZIGZAG, LEFT_BOTTOM, DIR_RIGHT);  // объект матрица
 

Trodef

✩✩✩✩✩✩✩
23 Апр 2020
6
2
Хотя возможно можно использовать один и тот же массив для инициализации обеих лент, тогда делать вообще ничего не надо.
C++:
LEDdata stripLEDs[STRIP_LED_AMOUNT];
microLED strip1(stripLEDs, STRIP_PIN1, STEP_LENGTH, STEP_AMOUNT, ZIGZAG, LEFT_BOTTOM, DIR_RIGHT);  // объект матрица

microLED strip2(stripLEDs, STRIP_PIN2, STEP_LENGTH, STEP_AMOUNT, ZIGZAG, LEFT_BOTTOM, DIR_RIGHT);  // объект матрица
Спасибо большое. Попробую
 

Gen@

★★✩✩✩✩✩
13 Апр 2020
60
57
хотя немного добавить всё таки придётся.
Замените все вызовы strip1.show() просто на show() и добавьте функцию
C++:
void show() {
    strip1.show();
    strip2.show();
}
при условии, что обе ленты инициализированы одним и тем же массивом, обе ленты должны гореть идентично
 

IamNikolay

★★★✩✩✩✩
15 Янв 2020
460
107
А подключение управления второй матрицы брать с OUT первой или с отдельного пина модуля?
Берете исходную прошивку и к 1 выводу ардуины подключаете 2 ленты и все, этого будет достаточно для вывода синхронных режимов, не нужно там дополнительных массивов и прочего...
 

Diman

★★✩✩✩✩✩
20 Апр 2019
311
67
Здравствуйте! Подскажите в каких строках кода можно изменять скорость регулирования параметра "масштаб" при использовании кнопки. Собрал упрощённый вариант на Ардуине, всё работает но трудно настраивать цвет "огня". Скорость настройки цвета огня слишком быстрая, на других эффектах и регулировках скорость настройки нормальная.
 

Diman

★★✩✩✩✩✩
20 Апр 2019
311
67
хотя немного добавить всё таки придётся.
Замените все вызовы strip1.show() просто на show() и добавьте функцию
C++:
void show() {
    strip1.show();
    strip2.show();
}
при условии, что обе ленты инициализированы одним и тем же массивом, обе ленты должны гореть идентично
Если делать на каждую матрицу отдельный выход, то имеет смысл сдвинуть по времени на 1 - 5 сек. сигнал для второй матрицы для избежания синхронности отображения.
 
  • Лойс +1
Реакции: Gen@

IamNikolay

★★★✩✩✩✩
15 Янв 2020
460
107
Если делать на каждую матрицу отдельный выход, то имеет смысл сдвинуть по времени на 1 - 5 сек. сигнал для второй матрицы для избежания синхронности отображения.
так человек хочет чтобы было синхронно, по этому я и сказал чтобы к 1 выходу подключил 2 ленты.

День добрый. Возникло желание немного доработать светильник. Хочу сделать в виде бра, т.е. два плафона, две матрицы и один модуль СН-340. Подскажите как это сделать, чтобы управлялось одним модулем и лампы светили синхронно (не обязательно синхронно, просто в одинаковых режимах). Как изменится схема и скетч?
 

Diman

★★✩✩✩✩✩
20 Апр 2019
311
67
так человек хочет чтобы было синхронно, по этому я и сказал чтобы к 1 выходу подключил 2 ленты.
Синхронно будет некрасиво, особенно в режиме "огонь". Для синхронности нет смысла во втором выходе.
 
  • Лойс +1
Реакции: Gen@

IamNikolay

★★★✩✩✩✩
15 Янв 2020
460
107
Синхронно будет некрасиво, особенно в режиме "огонь". Для синхронности нет смысла во втором выходе.
1. красиво/не красиво у каждого свое, задача поставлена - синхронно, решение дано.
2. про выход я говорил
 

stepko

★★★★★✩✩
26 Июн 2020
1,038
333
Предлагаю добавить изменения скорости, масштаба, реагирования на звук, rtc, будильник рассвет, еффекты из гиперкуба, и прочие
 
Изменено:

Константин 271

★✩✩✩✩✩✩
12 Июл 2020
425
41
Закомментируй обработку трехкратного нажатия кнопки, и поменяй начальное значение переменной whiteMode на true.
Получится перманентно включенный режим белого, без возможности отключить.
хотелось бы оставить всё как в проекте с лампой, но белый - первый в списке.