ARDUINO Крутая гирлянда на ёлку. Обсуждение проекта

АртемЗар

✩✩✩✩✩✩✩
17 Дек 2020
4
0
Здравствуйте! Подскажите пожалуйста в чем может быть проблема, до утра сидел, не понял - Купил 2 ленты по 50 диодов с колпачками 2811 на 5v, всё прошивается, эффекты переключаются, но лента безостановочно рябит белыми вспышками, на каких-то эффектах вся, на каких то кусками рандомными. Подключал и одну и другую ленты и вместе и отдельно, всего 100 диодов. Рябь везде сохраняется. Грешу на БП - 5v3a, может быть из-за малого тока? Но Алекс писал, что нужно мин 2а на 50 диодов. Но лента и на 50 рябит
🤷‍♂
это не эффект мерцания/блесток, все эффекты в прошивке отключил выглядит как шум, по видео эффекты не так выглядят. И когда зажимаю кнопку для увеличения яркости через несколько секунд гаснет полностью, не плавно, а сразу. В скетче поменял только ленту на 2811 и силу тока, эффекты при последующих прошивках отключал, ничего не помогает.
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@АртемЗар, Для начала в конфиге проверь настройки типа светодиодов. Иногда тип не совпадает с купленным, запросто могут стоять 2812-е светодиоды, или с последовательностью RGB.
Поставь электролиты в начале и конце линии. Попробуй поменять пин от которого адресуется лента. Есть ли защитный резистор по входу?
По поводу питания, в скетче можно ограничить максимальный ток. Можно даже подключить 1000 светодиодов, только светить они будут тусклее.
 
  • Лойс +1
Реакции: АртемЗар

АртемЗар

✩✩✩✩✩✩✩
17 Дек 2020
4
0
@АртемЗар,
Поставь электролиты в начале и конце линии.
Есть ли защитный резистор по входу?
Извиняюсь, но гугл мне не помог, о каких электролитах говорите?
Резистор есть на 220 на управляющем проводе, остальное вечером пробовать буду. Спасибо.
 
Изменено:

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
Извиняюсь, но гугл мне не помог, о каких электролитах говорите?
Резистор есть на 220 на управляющем проводе, остальное вечером пробовать буду. Спасибо.
По краям ленты на питание поставь 2 электролитических конденсатора. Емкостью чем больше - тем лучше, от 1000мкФ. Габариты - по своему усмотрению. Напряжение от 6.3 В. Можно даже сделать такого вида переходник или заглушку.
Это поможет отфильтровать возможную помеху по питанию вначале гирлдянды и сгладить провалы напряжения в конце линии.
 

АртемЗар

✩✩✩✩✩✩✩
17 Дек 2020
4
0
Попробовал ещё с 2 блоками, на 5В3А и 5В5А эффект не изменился, перепаял всё на другую нано, всё то же самое. Конденсаторы 1000/6,3 несколько снижают мерцание, но не сильно. Кстати блок на 5А ещё и шипит чтоли, на блоках 3А не замечал такого. Видео через сервисы не понял как выложить. Кстати диоды свободные от эффектов горят и мерцают синим или красным цветом.
 

АртемЗар

✩✩✩✩✩✩✩
17 Дек 2020
4
0
@Palpalych,
Попробовал на 5,7,8 к сожалению не то. Заменил в БП провода на более толстые, тоже нет. Вроде получилось видео
 
Изменено:

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@АртемЗар, Случаем не разгонял плату?
Попробуй еще обновить библиотеку FastLED до последней
Посмотри, может в конфиге поиграться стоит с прерываниями ?
C++:
#define FASTLED_INTERRUPT_RETRY_COUNT 0        // default: 2; // Use this to determine how many times FastLED will attempt to re-transmit a frame if interrupted for too long by interrupts
#define FASTLED_ALLOW_INTERRUPTS 0                // default: 1; // Use this to force FastLED to allow interrupts in the clockless chipsets (or to force it to disallow), overriding the default on platforms that support this. Set the value to 1 to allow interrupts or 0 to disallow them.
Еще вопрос - с другими лентами нормально?
 

BOPOH

✩✩✩✩✩✩✩
19 Дек 2020
5
0
Собрал (из исходников на github-е) для модуля на esp32. Лента на 300 штук ws2813. Вроде работает, но есть вопросы.
Почему-то не работает если упраление гирляндой ставить на GPIO#2 (#define LED_DT 4). На 4м работает. С самим pin-ом все нормально (Aircoookie/WLED с лентой на этом pin-е работает). С чем может быть связано? я не понял.

Некорректно работают 2 режима 22(светит примерно 50 первых) и 37(вообще все виснет). Оба реализуются в noise16_pal() - исключил их работы.

Странно работает заполнение фона. Вместо слабого равномерного синего, получается мерцание (несколько раз в секунду переключается выключено<->слабый_синий). Если поставить режим solid_blue и придушить яркость то получается равномерный слабый синий - то есть дело не в возможности ленты отработать слабую яркость и не в питании, а какая-то странность с алгоритмом заполнения фона. Хотелось бы починить, но как - не понял :( Может есть советы по исправлению?

Кнопки не подключал (все равно лазить нажимать никто не будет), а подключил ИК приемник+пульт. С этим тоже странности, но уже аппаратные. Есть два одинаковых IR приемника, но почему-то если заменить один приемник на другой, то принимаемые коды изменяются (сам пульт один и тот же). То есть 1й приемник 9 из 10 раз принимает одно, 1 из 10 - ничего или мусор. Второй приемник 8 из 10 принимает другой код (не тот, что первый но одинаково), 1 из 10 - тот же код, что и первый приемник, и 1 из 10 мусор или ничего. Почему разное - не понял.
 

kamijqk

✩✩✩✩✩✩✩
9 Окт 2020
1
0
Добрый день
У меня лента WS2812B (которая все направленная и залита чем-то). И вот один светодиод в середине ленты живет своей жизнь. То есть он может допустим вместо еле тусклого синего светить синем но ярче (хотя все остальные горят тускло). У соседних слева и справа горит желтым а он горит то желтым то белым. Можно ли с этим что-то сделать?
Пробовал разные БП и разные ардуинки. Пробовал подключать к ардуинки где последовательно идет 3 такие ленты (вместо последней) и этот диод так же ерунды творит
 

agshy

✩✩✩✩✩✩✩
12 Май 2019
1
0
Великий Новгород
Всех с наступающим!
Сын с другом прикупили в местном магазине ленту и попросили сделать гирлянду. Во время подключения оказалось, что лента четырехпроводная (точнее RGB светодиоды с контроллерами залиты эпоксидкой и соединены проводами). Разглядел на плате надпись GS8206, кроме V и GND там еще были входа данных... Короче, залил скетч под WS2812b а выход на ленту подключил к одному из входов данных (не помню как на плате было написано, но второй кажется FBI был - как ФБР :))) Все заработало.
Но как оказалось у этой ленты была еще и своя прошивка. Т.е. можно было просто подключить к ней 5 вольт и она начинала перебирать свои эффекты, а при нажатии кнопки на Ардуинке включались эффекты по прошивке... Два в одном получилось :)))
Может конечно стоило в скетче прописать GS8206 и подключить сигнал синхронизации, но... лень матушка взяла свое :)
Это для информации.

Да, возможно я невнимательно изучил материал, прошу сильно не пинать пенсионера :))) Но подскажите, есть ли где-то весь список 40 эффектов, т.е. какой номер и какой эффект?
 

clawham

✩✩✩✩✩✩✩
23 Дек 2020
1
0
парни кто собирал из исходников - как вы это делаете для esp8266?
у меня что бы я ни делал -
C++:
C:UsersD~1AppDataLocalTemparduino_build_344555sketchgetirl.h: Assembler messages:
C:UsersD~1AppDataLocalTemparduino_build_344555sketchgetirl.h:874: Error: unknown opcode or format name 'jmp'
ставил разные версии ардуины, ставил разыне версии sdk ставил разные версии fastled - всеравно не собирается хоть ты лопни!
 

BOPOH

✩✩✩✩✩✩✩
19 Дек 2020
5
0
C++:
C:UsersD~1AppDataLocalTemparduino_build_344555sketchgetirl.h: Assembler messages:
C:UsersD~1AppDataLocalTemparduino_build_344555sketchgetirl.h:874: Error: unknown opcode or format name 'jmp'
ставил разные версии ардуины, ставил разыне версии sdk ставил разные версии fastled - всеравно не собирается хоть ты лопни!
Для esp32 аналогично. В esp-шках и других микроконтроллерах не разбираюсь, поэтому просто заменил эту строчку на "ESP.restart();" - будет перезагрузка гирлянды. И чтобы не ругалось на этот restart - перед началом функции bootme() (правильней в 1main, но сойдет и так) добавить строчку
#include <Esp.h>
То есть в целом этот кусок:
C:
#include <Esp.h>
void bootme() {  // This is used to reset all the Arduinos so that their millis()    counters are all in sync.

  // asm volatile("jmp 0"); // 
    ESP.restart();
} // bootme()
 

Palpalych

★★★★★✩✩
24 Дек 2019
766
405
@clawham, В ESP нужно переподключать на свои внутренние и внешние библиотеки, а они отличаются интерфейсом.
 

alexei82

✩✩✩✩✩✩✩
6 Дек 2020
2
0
Поделитесь скетчем на 300 светодиодов с хорошими режимами, которые не зависают. А то новый год на носу.)
 

pfff

✩✩✩✩✩✩✩
26 Дек 2020
5
1
Всем привет. Я новичок, нужна помощь. Все спаял, прошивку установил, включаю питание горит только один диод. В чем проблема, где искать.
 

tienye

✩✩✩✩✩✩✩
27 Дек 2020
1
0
А у меня одного на версии 1.1 после переключения двумя кликами в следующий режим из любого предыдущего гирлянда остается на эффекте радуги (юникорн вомит) и больше не идет дальше дальше по таймеру в демо режиме? Основная версия прошивки, кстати, ушла дальше, похоже, но в ней хоть и используются библиотеки гайвера, но я не смог разобраться как настроить управление с одной кнопки. Может кто подскажет как?
 

bnflfrbvffc

✩✩✩✩✩✩✩
11 Дек 2020
2
0
А у меня одного на версии 1.1 после переключения двумя кликами в следующий режим из любого предыдущего гирлянда остается на эффекте радуги (юникорн вомит) и больше не идет дальше дальше по таймеру в демо режиме? Основная версия прошивки, кстати, ушла дальше, похоже, но в ней хоть и используются библиотеки гайвера, но я не смог разобраться как настроить управление с одной кнопки. Может кто подскажет как?
Если я правильно понимаю то ручное переключение отключает деморежим. Так что или деморежим или ручками
 

beast

★✩✩✩✩✩✩
28 Сен 2020
29
11
Народ, кто подскажет, почему не компилится при включении отдельного пина с Cloc-ом, для 4х проводных лент. в частности ws2813(2815)


ругается на эту строчку -
#if LED_CK
LEDS.addLeds<CHIPSET, LED_DT, LED_CK, COLOR_ORDER>(leds, MAX_LEDS);

в логах
exit status 1
no matching function for call to 'CFastLED::addLeds(CRGB [150], int)'


------ настройки ленты -----
#define COLOR_ORDER GBR //Очередность цвета светодиодов RGB или GRB
#define CHIPSET WS2813 //Тип микросхемы светодиодов в гирлянде

#define LED_DT 2 // Номер пина куда подключена гирлянда
#define LED_CK 3 // Номер пина для подключения тактов, применяется для светодиодов WS2801 или APA102
//ЕСЛИ НЕ ИСПОЛЬЗУЕТСЯ ЗАКОМЕНТИРОВАТЬ

#define POWER_V 12 // напряжение блока питания в Вольтах
#define POWER_I 1000 // Ток блока питания в милиАмперах
 

beast

★✩✩✩✩✩✩
28 Сен 2020
29
11
ктонить попробуйте скомпилить раскоментировав вот эту строчку
#define LED_CK 11 // Номер пина для подключения тактов, применяется для светодиодов WS2801 или APA102