Универсальный пульт ДУ для Lightorgel и не только

Надоело мне тыкать кнопки на платах.
И после получения очередной ардуины решил сделать уневерсальное ду.

Плюсы:
Работает с любым пультом (наверное).
Работает с командами до 4х байт (брендовые пульты).
(Было протестировано на SAMSUNG, LG, и кучи китайского уг.
С брендом работает как часы, ну а уг, оно и в Африке уг :))))).)
Не нужно прошивать команды. Приемник сам сохраняет их в EEPROM.
Возможность расширения функционала. (В планах подключение ISP потенциометров).
Минусы:
Под разные устройства необходимо править прошивку.
Или приспосабливать то что есть.

Версия 1.0
Заточена под Lichtorgel_WS2812.

Используется 7 кнопок на пульте:

  1. кнопка 1 Runlight
  2. кнопка 2 Runlight дольше 3 секунд
  3. кнопка 3 Fadespeed
  4. кнопка 4 Fadespeed дольше 3 секунд)
  5. кнопка 5 Runlight+Fadespeed дольше 3 секунд
  6. кнопка 6 Переключение входов (переключение входов, если есть)
  7. кнопка 7 Только эффекты (отключает все входы, если есть)

Вот схемы. На желтом фоне приемник с обвязкой.

Модуль был задуман как самостоятельное универсальное устройство.
Просто для проверки был заточен под Орган. Можно заточить под Аврору, Союз и т.д.
Да хоть под самодельный музыкальный центр.

В архиве две схемы (328р и Nano v3) с коммутатором входов.
Два HEX файла. Один для 328р, другой для Nano v3 (с загрузчиком).
Текстовый файл с описанием программирования команд с пульта.
Скетч+текстовый файл с кодами.

Скетч использует 7768 кБ. Если код скомпилировать в Atmel Studio, немного его подправив (большинство кода на С), то все поместится в Мегу8.
25.06.2017
Обновление.
IR_eeprom_Lichtorge_WS2812_LCD_V2.2.
Оптимизация кода, косметический ремонт, ну и т.д. smile
Прошивка Lichtorgelws2812 ( в комплекте ) максимально совместима с оригиналом.
Есть косметические отличия.
С авторской прошивкой не работает.
Вывод РВ2 Lichtorgel нужно будет подключить на ADC6 приемника.
ADC6 отсутствует в DIP корпусе.
После использования DEMO режима для корректного отображения
нужно сбросить настройки на дефолтные.
Адрес I2C дисплея 0x3F . Дисплей 1602.
02.08.2017

Что нового: 

Регулировка входного сигнала на линейном входе цифровым SPI потенциометром МСР41010.
Этот потенциометр при включении устанавливается в средний уровень. Поэтому предусмотрено при включении автоматическая установка уровня потенциометра
в последний сохраненный уровень. Микрофонный вход на основе MAX9814. Возможность менять усиление с пульта. LCD 2004, 4 строки по 20 символов.
Выводится название текущего эффекта, Fadespeed mode, Aggressive mode, линейный или микрофонный вход, уровень цифрового потенциометра или усиление микрофонного усилителя. Изменение уровня подсветки дисплея (+ 1 провод на дисплей). Предусмотрена возможность переключения на другой контроллер эффектов.

Фотки с LCD:

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

MCP41010 (потенциометр) 
D13 (PB5) – SCK
D11 (PB3) – SI
D10 (PB2) – CS

CD4066 (переключатель входов) 
D8 (PB0) – line In
D7 (PD7) – Mic In

MAX9814 (микрофонный усилитель) 
D6 (PD6) – Gain

D4 (PD4) – PRG Кнопка программирования
D3 (PD3) – LED Индикаторный светодиод (анод)
D2 (PD2) – IR Out Выход инфракрасного приемника

CD4066 (переключатель выходов) 
A0 (PC0) – Out Lichtorgel
D5 (PD5) – Out Внешний контроллер

Lichtorgel (контроллер) 
A1 (PC1) – A0 (PC0)
A2 (PC2) – D9 (PB1)
A3 (PC3) – D8 (PB0)
A6 (ADC6) – D2 (PD2)

LCD (дисплей) 
A4 – SDA
A5 – SCL
D9 – PWM (на подсветку, желательно через транзистор)

 

Пульт ДУ на Алиэкспрессе.
Ардуинка на Алиэкспрессе.
ИК датчик VS1838B на Алиэкспрессе.

Успехов всем!

Superman (Anahoret), 2017.

0 0 votes
Рейтинг статьи

Автор публикации

не в сети 7 дней

Radan

0
Комментарии: 957Публикации: 191Регистрация: 30-11--0001
Поделиться
Войти с помощью: 
Подписаться
Подписаться на
78 комментариев
новые
старые рейтинг
Inline Feedbacks
View all comments
Ildus
2 лет назад

Здравствуйте.
Не могли бы Вы поделиться не прошивкой, а исходниками своей конструкции, если можно конечно?

Anahoret
3 лет назад

Неправильное отображение эффекта паузы даже после сброса
вызвано тем что у автора в описании 11 эффектов паузы.
А в прошивке 12 эффектов. В прошивке для ESP8266 этот баг устранен.
Скоро дойдут руки и до прошивки для Меги smile

Anahoret
3 лет назад

В связи с нехваткой времени нужны бета тестеры прошивки V8.
Цель тестирования:
отсутствие рассинхронизации при использовании только ПУ.

Juris_3D
Reply to  Anahoret
3 лет назад

У меня немного недоделанно всё.. Точнее, работает ЦМУ WS2811 сама по себе, и тестировал на предмет "работает" приёмник+LCD. Но не соединял. А что надо бы конкретно тестировать в новой версии? Обратной связи (реальной информации по номеру режима) там наверное не появилось?

Anahoret
Reply to  Juris_3D
3 лет назад

Тест: как можно чаще переключатся в демо режим и обратно.
Полноценной обратной связи пока нет. Трудности
с UART возникли в обеих прошивках.
Но был сделан "ход конем". V8 + fftestpatch=пожизненная синхронизация. (надеюсь).

Anahoret
3 лет назад

Прошивка V7.4 уже в папке smile
Работает на МК в любом корпусе.
Пин PD2 (D2) Lightorgel подключить на пин D4 (PD4) ДУ.
Только для LCD 2004.

Anahoret
3 лет назад

Обновленная прошивка для LCD1602 уже в свободном доступе smile

Anahoret
3 лет назад

Выложил прошивку V7.3
Теперь пока пульт не будет запрограммирован
будет выводится надпись о необходимости его запрограммировать ( на английском).

Anahoret
3 лет назад

Прикрутил ESP8266-12E
Все вопросы в профильной теме http://lightportal.at.ua/forum/2-21-1

Juris_3D
Reply to  Anahoret
3 лет назад

Безусловно интересно !!

Anahoret
3 лет назад

Новая прошивка V7 для ПДУ.
Новая плата V7.
Добавлены для отображения новые эффекты и новый режим
для новой прошивки от m1x. Работает с оригинальной
прошивкой без переделок.
Небольшие изменения в плате. Вариантов плат 2.
Один с аудио разьемом на плате. Другой с возможностью
установки ВТ аудио модуля. Кнопки на плате опциональны.
В пршивке не задействованы.
Опубликована полная схема.
На скринах вариант дальнейшего развития ПДУ.
Возможность установки RS485.

Juris_3D
Reply to  Anahoret
3 лет назад

Спасибо большое при-большое! biggrin

Juris_3D
Reply to  Anahoret
3 лет назад

Ура, сегодня я получил 20х4 дисплейчик с напаянным преобразователем, MCP поц тоже есть, буду мудить конструкцию по мере свободного времени smile

Juris_3D
Reply to  Anahoret
3 лет назад

Я тут сделал быстрый тестик, на предмет показывет ли. Залил Nano v3, екран у меня 20х4 синий. В принципе работает, но как то вроде по рядам напутанно. При старте показывает во втором ряду "WS2811GEL", то есть, как бы тексты двух рядов в одном. Потом показывает только второй и третий ряд, вот так:
Aggressive mode
Fadespeed mode 255
P.S.: вроде замыканий лишних нет нигде.

Anahoret
Reply to  Juris_3D
3 лет назад

Прошивку перезалил V7.2.
Пробуйте. Если будут проблеммы с отображением,
скрины в студию smile

Juris_3D
Reply to  Anahoret
3 лет назад

Вот тут две фотки что я получаю на v7.2
http://bildites.lv/a/xprbner3#e4djs8wk
К ардуине подключен только LCD.
Эта ардуина и LCD мною проверялись пробными скетчами, все ряды работали.
Адрес I2C правильный (3F), посмотрел специальным скетчем.
Кстати, если загрузить прошивку для 16х2, то пишет заставку в первых двух рядах, потом пусто.

Anahoret
Reply to  Juris_3D
3 лет назад

Только что сделал скрины.
У меня все работает.
Скрины в папке https://disk.yandex.ru/client/disk/IR%20%20receiver

Juris_3D
Reply to  Anahoret
3 лет назад

eto realjnyj link?

Anahoret
Reply to  Juris_3D
3 лет назад

Реальный , но только для меня biggrin
Это расшаренный https://yadi.sk/d/tHsYSSi53Ld8bz

Juris_3D
Reply to  Anahoret
3 лет назад

Да, я уже прошил v7.3. А как надо реагировать (всмысле, чем) на вопросы про потенциометр, итд? Спасибо.

Anahoret
Reply to  Juris_3D
3 лет назад

Той же кнопкой которой запускается режим программирования.
Время на раздумье 3 секунды.

Juris_3D
Reply to  Anahoret
3 лет назад

Спасибо за конструкцию и пояснения. Там наверное в архив надо Readme с инструкциями, с предупреждениями smile
Мда, очень надо бы какой байтик присылать от цветомузыки, о реальном состоянии дел разных.

Anahoret
Reply to  Juris_3D
3 лет назад

Описание кинул в папку с прошивкой.
Одним байтиком не обойтись. Нужно минимум 3.
А если использовать стандартные протоколы то еще больше biggrin
Дело не в количестве байт а в том что много гемора с добавлением этого в авторскую прошивку.

Juris_3D
Reply to  Anahoret
3 лет назад

Ну да, понятно. Конечно, логичнее кажетса, если бы ИК модуль был бы просто нажимателем кнопок (а также комутация и усиление), а индикация была бы в самой цветомузыке.

Anahoret
Reply to  Juris_3D
3 лет назад

Тогда мегу нужно заменить на более мощный МК.

Anahoret
Reply to  Juris_3D
3 лет назад

Все ясно. Вы пульт не программировали.
Поэтому из памяти считывается не то что нужно.
В результате часть информации не отображается.

Juris_3D
Reply to  Anahoret
3 лет назад

А, ну ладно. Спасибо за подсказку. Хотя… на будущее, для новых собирателей, наверное неплохо бы, чтоб экран сразу логично бы выглядел. Если возможно.

Anahoret
Reply to  Juris_3D
3 лет назад

Я подумаю об этом smile

Juris_3D
Reply to  Anahoret
3 лет назад

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

Anahoret
Reply to  Juris_3D
3 лет назад

Я уже писал тут, но ндо еще в папку будет файл с описанием полпжить.
После подключения и программирования пульта нужно сбросить настройки на дефолтные. Обязательно с пульта !!!!
Тогда названия эффектов будут отображаться правильно!
После использования режима рандом (DEMO) для правильного отображения названия эффектов нужно снова сделать сброс настроек с пульта. Возможно в будущем между контроллерами будет реальный обмен данными, и тогда сброс будет не нужен.

Anahoret
3 лет назад

Спасибо m1x за унификацию оригинальной прошивки с прошивкой ПДУ.
V6 работает с ней без проблем. Но поскольку в новой прошивке есть новые эффекты и
поддержка WS2811, для коректного отображения на LCD ждите версию V7.
V7 будет выложена через несколько дней после официального релиза новой пршивки от m1x.

Juris_3D
Reply to  Anahoret
3 лет назад

Отличные новости! Я тут жду когда приедет дисплейчик (есть у меня 4х20, но без преобразователя), и тогда буду оформлять конструктивно это дело, версия новая наверное подоспеет. Сейчас у меня просто на хвосте гирлянды пикселей висит Arduino Pro Mini smile
А вот всё же, идея про другие индикаторы (с меньшими физическими размерами), OLED, TFT – не тянет Авторов в ту сторону? :)

Anahoret
Reply to  Juris_3D
3 лет назад

На меньщие размеры не тянет. Много инфы можно увидеть на дисплее с диагональю 0.96 дюйма на расстоянии несколько метров ? Дисплей с диагональю 3-4 дюйма то что надо. Но такие дисплет уже требуют 2 порта МК!
Есть переходник для них , но его цена сопоставима с ценой дисплея. У меня есть другая задумка. Прикрутить RS485.
Тогда дисплеем может быть как экран монитора , так и экран смартфона. Плюс управление включая программы типа "умный дом".
Если у вас есть дисплей меньшего размера, с интерфейсом I2C, символьный, могу дать исходник V6 (V7 пока не существует). Адаптируете под свой дисплей.

Juris_3D
Reply to  Anahoret
3 лет назад

P.S.: я тут так подумал, подумал, и я тут согласен, экранчик тут маленький непрактичен будет. Скoро буду собирать на 20×4.

Anahoret
3 лет назад

Прошивка LCD 1602 обновлена до версии 6.5.3

Anahoret
3 лет назад

Прошивка для LCD 2004 обновлена до V6.5.3
Изменения в текстовом файле.

Juris_3D
Reply to  Anahoret
3 лет назад

А по которой ссылке всё это теперь?

Anahoret
Reply to  Juris_3D
3 лет назад

Все по той же
https://yadi.sk/d/tHsYSSi53Ld8bz

Juris_3D
Reply to  Anahoret
3 лет назад

cool  up

Anahoret
3 лет назад

Выложил принципиальную схему. Пока в виде картинки.
Желающие могут ознакомится.

Anahoret
3 лет назад

По просьбе трудящихся на плате предусмотрен
United Sexy Boys victory формата micro.
Только для питания.
Файл платы перезалит.

Juris_3D
Reply to  Anahoret
3 лет назад

Ю эс би форева!

Anahoret
3 лет назад

Прошивка для LCD 1602.
IR_Lichtorgel_WS2812_LCD_1602_0x3F_V6_5_2_PWM.
Написана в соавторстве с котярой biggrin

Juris_3D
Reply to  Anahoret
3 лет назад

Это всмысле так же, но на 2-рядный LCD ?
И, как там перспектива (это не срочно) по прошивке / прошивкам на 48 пикселей? Спасибо.

Anahoret
Reply to  Juris_3D
3 лет назад

Да, это на 2х строчный LCD.
По поводу прошиви. Автор пока не ответил.
Если очень надо, сделаю smile

Juris_3D
Reply to  Anahoret
3 лет назад

Не, мне не критично сейчас вот так сразу smile

Anahoret
3 лет назад

Новые прошивки тут https://yadi.sk/d/tHsYSSi53Ld8bz

Anahoret
Reply to  Radan
3 лет назад

Плата пока не изготавливалась и даже не проерялась на ошибки.
Выложена вместе с прошивками.

Anahoret
Reply to  Radan
3 лет назад

А вы зайдите туда еще раз
1 IR LCD 2004-15.lay6 smile

Juris_3D
Reply to  Anahoret
3 лет назад

Спасибо за продвинутую версию. Буду по немножку собирать (всё ещё летний режим, конструкции не так быстро строятса smile ). Я могу очень очень попросить вариант прошивки на 48 пикселей? Заранее Большое Спасибо!

Anahoret
Reply to  Juris_3D
3 лет назад

Я связался с автором прошивки.
И если уважаемый m1x сочтет возможным,
все последующие прошивки будут совместимы.
Если нет, выложу прошику.

Juris_3D
Reply to  Anahoret
3 лет назад

Отлично! Особенно, если прошивки "поравняютса".

Anahoret
3 лет назад

Новая версия ДУ для Lichtorgel.

Что нового:

Регулировка входного сигнала на линейном входе цифровым SPI потенциометром

МСР41010.
Этот потенциометр при включении устанавливается в средний уровень. Поэтому

предусмотрено при включении автоматическая установка уровня потенциометра
в последний сохраненный уровень.

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

LCD 2004, 4 строки по 20 символов.
Выодится название текущего эффекта, Fadespeed mode, Aggressive mode,
линейный или микрофонный вход, уровень цифрового потенциометра или усиление

микрофонного усилителя.

Изменение уровня подсветки дисплея (+ 1 провод на дисплей).

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

Фотки с LCD.
comment image

Juris_3D
Reply to  Anahoret
3 лет назад

Отлично!! smile

Anahoret
Reply to  Radan
3 лет назад

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

Прошивка скоро будет. Небольшой косметический ремонт smile

Спойлер
MCP41010 (потенциометр)
D13 (PB5) – SCK
D11 (PB3) – SI
D10 (PB2) – CS

CD4066 (переключатель входов)
D8 (PB0) – line In
D7 (PD7) – Mic In

MAX9814 (микрофонный усилитель)
D6 (PD6) – Gain

D4 (PD4) – PRG Кнопка программирования
D3 (PD3) – LED Индикаторный светодиод (анод)
D2 (PD2) – IR Out Выход инфракрасного приемника

CD4066 (переключатель выходов)
A0 (PC0) – Out Lichtorgel
D5 (PD5) – Out Внешний контроллер

Lichtorgel (контроллер)
A1 (PC1) – A0 (PC0)
A2 (PC2) – D9 (PB1)
A3 (PC3) – D8 (PB0)
A6 (ADC6) – D2 (PD2)

LCD (дисплей)
A4 – SDA
A5 – SCL
D9 – PWM (на подсветку, желательно через транзистор)

Anahoret
3 лет назад

Обновление.
IR_eeprom_Lichtorge_WS2812_LCD_V2.2.
Оптимизация кода, косметический ремонт, ну и т.д. smile
Прошивка Lichtorgelws2812 ( в комплекте ) максимально совместима с оригиналом.
Есть косметические отличия.
Качаем, пробуем, высказываем свое ФИИ…
https://yadi.sk/d/sqXCxmEc3KS99v

P.S.
Доступ к аккаунту superman утрачен благодаря дебилам из юкоза.
Будем востанавливать. Пока пользуюсь этим аккаунтом.
На прошлый аккаунт пришли несколько ЛС. Просьба переслать их сюда.

Juris_3D
Reply to  Anahoret
3 лет назад

Доброе время! Вот, после некоторой паузы я тут решил покопатся в цветомузыках. Вопрос по данной модификации. Вижу в описании (TXT), что основанно на июньской прошивке от m1x, плюс функция долгого нажатия кнопки "Demo". А вопрос такой: прошивка существует только на вариант ленты 96 "пикселей"? У меня 48, половинка.

Anahoret
Reply to  Juris_3D
3 лет назад

У меня 100 пикселей. Поэтому скомпилировал на 96 пикселей.
Могу скомпилировать на другое количество.

Juris_3D
Reply to  Anahoret
3 лет назад

Я очень был бы признателен за вариант на 48 пикселей. Заранее Большое Спасибо! smile
По индикации, китайский OLED со входами SDA/SCL не будет ничего показывать? smile Попробую, когда соберу/прошью.

Anahoret
Reply to  Juris_3D
3 лет назад

Для инициализации дисплея в программе нужно указать адрес дисплея, количество символов в строке, количество строк.

Anahoret
Reply to  Juris_3D
3 лет назад

48 пикселей
https://yadi.sk/d/brp6B13j3KpBK9

superman
3 лет назад

В архиве:
Схема
Описание
Прошивка для Lichtorgelws2812
Прошивки для IR приемника.
Прбуйте smile
https://yadi.sk/d/I-TbH6AL3KPQMq

superman
3 лет назад

Прошивка почти готова.
Есть желающие потестить ?
Нюансы:
С авторской прошивкой не работает.
Вывод РВ2 Lichtorgel нужно будет подключить на ADC6 приемника.
ADC6 отсутствует в DIP корпусе.
После использования DEMO режима для корректного отображения
нужно сбросить настройки на дефолтные.
Кнопки к приемнику пока не прикручены.
Адрес I2C дисплея 0x3F . Дисплей 1602.

comment image

comment image

comment image

Juris_3D
Reply to  superman
3 лет назад

Отличное продвижение! Я бы мог попробовать, через недельку или где то так по времени.
А то сейчас у нас Праздники smile Можно сказать, главные в году:
http://www.latvia.travel/en/article/summer-solstice-celebrations
https://www.google.lv/search?….bih=891

superman
4 лет назад

Прототип PSB . Для любителей дисплеев. Особенности: Возможность подключить как I2C так и SPI дисплей. При небольшой доработке можно подключить тач дисплей. Возможность подключения энкодера. Возможность подключения до 7 аналоговых кнопок. Коммутатор входов он боард, HEF4066 или аналогичный.. Можно коммутировать либо 4 моно входа. Либо 2 стереовхода. Возможность подключить SPI потенциометры (+ SPI дисплей). До 7 управляющих выходов (зависит от количества подключенной переферии). Возможность управлять любым пультом ДУ. Плата однослойная. Размер 80Х36 (размер LCD 1602 на psb). Использование Arduino NANO V3. Прошивка меняется через стандартный разьем ISP6Pin. Если не использовать RXD TXD выводы, скетч заливаем через USB. Недостатки: Плата универсальная.… Читать далее »

Juris_3D
4 лет назад

superman, Спасибо за разработку! smile Я временами большой маньяк на разные пульто-прибамбасы smile wink

superman
Reply to  Juris_3D
4 лет назад

Я похоже тоже biggrin
Уже есть код для работы с LCD.
К сожалению LCD в пути. Так что проверка в железе откладывается.

Juris_3D
Reply to  superman
4 лет назад

Да, на каком LCD мы можем уже что-то потестировать? smile
У меня коллекция всяких набралась, может уже есть нужный.

superman
Reply to  Juris_3D
4 лет назад

Заказал пока самый простой 1602.
Плюс модуль I2C.
Если есть желающие потестит, могу выложить HEX файл.
Компилятор на код не ругается, но полная работоспособность не гарантирована.
И еще. На оригинальных прошивках будет работать с глюками.
Поэтому в комплекте будет патченная прошивка.

superman
4 лет назад

"Модуль был задуман как самостоятельное универсальное устройство."

А вот и прототип задумки.
comment image smile
4 коммутируемых входа.
4 SPI потенциометра.
Энкодер.
LCD дисплей на I2C.
5 выходов имитирующих нажатие кнопки.

artemmaksimov2004
4 лет назад

Спасибо! biggrin smile