требуется код для USB MIDI контроллера
- Войдите на сайт для отправки комментариев
Пт, 20/10/2017 - 00:35
Ищется исполнитель для реализации в жизнь простенького USB HID MIDI Controller'а
Устройство подключается к ПК по USB и определяется как Аудиоустройство ввода, имя значения не имеет.
Состав:
1шт Arduino Leonardo
8 Кнопок без фиксации, обычные switch NO
8 Светодиодов
8 Резисторов
Сдвиговые регистры и пр. лишние детали не нужны, все на пинах ардуино.
Требуется выполнять следующую логику работы контроллера(на примере одной кнопки):
Тапаем по кнопке и отпускаем, отсылается “note on C3” и загорается светодиод, который показывает, что для ноты C3 удерживается состояние note on . Второй тап по кнопке должен отослать “note OFF C3” и светодиод гаснет.
Всего 8 “групп” кнопка+светодиод, отличающихся между собой лишь нотой.
Скетчей подобных midi контроллеров на ардуино в сети немало и с кнопками, и с энкодерами, и с потенциометрами, и с дисплеями, но все они имеют немного иную логику работы.
Если найдется исполнитель, который, как и я больной на голову гитарной тематикой, но в отличии от меня рубит в программировании, буду очень благодарен.
Если можно подробнее.
типа этого https://www.arduino.cc/en/Tutorial/MidiDevice
Если можно подробнее.
типа этого https://www.arduino.cc/en/Tutorial/MidiDevice
Ну если в общих чертах, то да.
Этот пример проекта, как и многие другие используют полноценный USB HID, но логика работы отличается от того что предложил я.
Опять же ,на примере одной кнопки в этом проекте:
Нажали на кнопку полетело сообщение noteON C3, как только отпустили кнопку полетело noteOFF C3.
Мне нужно - первое нажатие полетело сообщение noteON C3, второе нажатие полетело noteOFF C3.
Пишите способ связи и делу конец.
Связь по igorkukuliev yandex.ru или VK, как Вам удобнее.
Напишу этот простенький скетч за 50 000 рублей. Был бы сложный, запросил бы сотку ! Че то "миди заказчики" активизировались... Фестиваль что ли у них скоро....
за 50 000 рублей.
Странно что не в $ )))
Объясните зачем такой сарказм, Вы можете мне помочь?
Я понимаю что готовые миди контроллеры есть по 30-40$, но хочется что то бюджетнее, т.к. не у всех музыкантов есть куча бабла на новые брендовые цацки :(
Я помочь могу, но это же работа, в любом случае. Вот вы хотите USB устройство. А для ардуино нет бескостыльных холявных решений Midi USB. Есть кривая херня... Сссылку на нее вам дали. Хотите нормальное решение - сделайте устройство с интерфейсом "настоящий" MIDI и купите кабель MIDI - USB. А теперь смотрите... Один только кабель вам обойдется в теже 30-40$.... Ну понимаете, к чему я.... Что такое имеет смысл заказывать только в случае серийного выпуска, в противном случае затраты времени и сил того не стоят, легче купить готовое.
А сарказм... Недалее как позавчера, тут один фантазер уже хотел.... http://arduino.ru/forum/ishchu-ispolnitelya/midi-miksher-na-traktor-2 Так вот разговор окончился тем, что "заказчик" искал исполнителя за еду, скетч то простенький, 100 строк кода, да за него ваще платить не нужно :)
Причем смешно... Тут все хотят исполнителя на "простенький скетч", при этом сами не понимают, простенький он или гладиолус... Ибо если бы понимали, то простенький сами бы сделали :)
О каких костылях идет речь? В Leonardo 32u4 есть режим HID, хоть мышкой прикидывается, хоть клавой, хоть аудиоустройством. Как раз избавляет от кучи костылей в виде доп ПО на компе и пр херни. Работает такой ардуино-миди контроллер и с Win, и с Linux, и с android устройствами без плясок с бубном
Ага , а драйвер на стороне компутера кто напишет ? С какого перепуга HID вдруг станет "хоть мышкой" ?
Ага , а драйвер на стороне компутера кто напишет ? С какого перепуга HID вдруг станет "хоть мышкой" ?
Как бы в первом посте обозначил - название устройства не критично, индивидуальные VID&PID мне не нужны, драйвера писать как бы лично под мои нужды не требуется. Я не приследую каких то коммерческих целей, а лишь хочу что бы в мое хобби "диванного" гитариста добавилось удобство в виде контроллера с индикацией.
Даже сейчас хоть с использованием библиотек USBMIDI, хоть c arcore ардуинка автоматически определяется в системе и висит в аудиодевайсах с именем Arduino Leonardo и прекрасно работает с гитарным софтом.
"зачем же снесли Ваш вопрос о том как HID может быть "хоть мышкой"? "
Я конечно не программист, но в общих чертах понимаю что такое USB HID.
Выдержка из WIKI:
USB HID (human interface device) class — класс устройств USB для взаимодействия с человеком. Этот класс включает в себя такие устройства как клавиатура, мышь, игровой контроллер. Класс USB HID определен в нескольких документах, предоставляемых USB Implementers Forum, в частности, Рабочей группой по работе с устройствами.
Одно из преимуществ хорошо определенной спецификации, такой, как USB HID — это обилие драйверов устройств, доступных в большинстве современных операционных систем. USB HID класс и его базовые функции описаны в USB-IF документации, без какой-либо привязки к конкретному программному обеспечению. Из-за таких общих описаний разработчикам операционных систем легко включить функциональные драйверы для таких устройств как клавиатура, мышь и другие устройства взаимодействия с пользователем. Включение основных драйверов способствует более быстрому распространению этих устройств и упрощению установки конечными пользователями.
Но согласитесь, не о том с Вами спорим, совсем не о том...
Озвучьте бюджет
Пока вы спорите, я уже три скетча с кнопками написал ))
"зачем же снесли Ваш вопрос о том как HID может быть "хоть мышкой"? "
Чего я снес ?
Че "не программист" не видит разницы между HID и миди устройством !?
Это значит вам не хватает вашей векипедии, которую я для вас написал. Ну сыграйте на мышке, че ... не получается ?
VID/PID ешкин дрын :)
Я с вами не спорил и спорить не буду. Рожать истину можно только с человеком понимающим о чем он рожает, а если он не понимает, то рожать ему в одиночестве :)
Вон выше вам человек уже три скетча с кнопками написал. Скорее купите ему пиво и забирайте кнопки !
И так... на вашем языке... У вам миди контролер должен быть в разделе "Звуковые, видео и игровые устройства", а хид оно у вас где ? Ну.... видите.
Offtop - Был вопрос - как HID может быть "хоть мышкой"? на него и был ответ вырезкой из WIKI.
Если дал некорректное, непонятное ТЗ, прошу прощения, завтра ближе к обеду набросаю подробно что к чему и отпишусь здесь.
Знания мои в программировании практически нулевые и я этого не скрываю.
Озвучьте бюджет
За халяву не прошу, но и не за цену готового девайса конечно, давайте завтра с более конкретным ТЗ все решим, но общаться я уже начал с sadman41.
Тему можно считать не актуальной, т.к. найдено очень простое аппаратное решение, что по индикации, что по удержанию состояния noteON - 3pdt кнопка с фиксацией.
Всего то нужно было.... Главное, что это не просто кнопка, а миди кнопка !!!
Блин, просто цирк с конями.
Пока вы спорите, я уже три скетча с кнопками написал ))
скетчедрочер.
Пока вы спорите, я уже три скетча с кнопками написал ))
скетчедрочер.
По итоговому выхлопу выходит, что так ))
А че стразу не понял, он же явно нихрена не понимает, не только предмет но и себя :)
Характер у меня плохой - всё помочь пытаюсь ))
Аааа.. Значит у меня характер хороший :)
Ну и ладно, зато ты хоть удовольствие получил :)
brokly пишет:...brokly пишет:...
- а пишет он много и не особо по делу для большинства...
Эх, Вы разобрались бы в себе что ли, в какую тему не заглянешь, везде пару коментариев с гнильцой, аля какие же вы все тут такие дураки, а я бл**ть(пропущено ЕА) такой самый умный и "особенный". Будьте "проще", зачем на всех кричать с высока?
Развели димагогию здесь ниочем, единственный кому благодарен в этой теме, так это Григорию aka sadman41, т.к. только с ним я смог нормально поговорить, без высокомерия и пр. х*ни, уж извините за выражение. Причем человек предложил ну очень смешную сумму за свою помощь, на один поход в продуктовый магазин и то больше денег требуется. Из диалога с ним я понял, что поставленная задача в первом сообщении выглядит для данного компьюнити, как рассказ 3х летнего ребенка, НО человек постарался понять суть проекта задав интересующие вопросы. И весь этот диалог натолкнул на более серъезный подход к изложению ТЗ, в процессе которого и родилась идея использования 3pdt кнопок, как оптимальное решение задачи, так и дальнейшего приведения устройства в божеский вид.
Всем добра! Всем без исключения, даже аФторам-пЕсателям вЕкипедии из #14 поста! С уважением, Игорь.
За халяву не прошу, но и не за цену готового девайса конечно, давайте завтра с более конкретным ТЗ все решим, но общаться я уже начал с sadman41.
Давайте посчитаем: допустим, кто-то продает некий "готовй девайс" за $30. Логично предположить, что программная начинка стоит не менее половины от стоимости прибора. Прибор выпущен серией ну, скажем, 10000 штук. Вопрос - сколько стоит работа программиста?
И если кому-то вдруг взбредет в голову блажь заказывать программную начинку для единственного экземпляра, то это не значит, что цена работы программиста уменьшится, это значит, что прибор станет просто бриллиантовым (т.к. золотой существенно дешевле).
Может для Вас, как для музыканта, будет понятнее - вот лично Вы согласитесь отыграть полноценный концерт группой (с арендой помещения, своей аппаратурой, звуко- и светотехниками, подтанцовкой и пр.) за цену одного экземпляра компакт-диска?
Развели димагогию здесь ниочем, единственный кому благодарен в этой теме, так это Григорию aka sadman41, т.к. только с ним я смог нормально поговорить, без высокомерия и пр. х*ни, уж извините за выражение. Причем человек предложил ну очень смешную сумму за свою помощь, на один поход в продуктовый магазин и то больше денег требуется. Из диалога с ним я понял, что поставленная задача в первом сообщении выглядит для данного компьюнити, как рассказ 3х летнего ребенка, НО человек постарался понять суть проекта задав интересующие вопросы. И весь этот диалог натолкнул на более серъезный подход к изложению ТЗ, в процессе которого и родилась идея использования 3pdt кнопок, как оптимальное решение задачи, так и дальнейшего приведения устройства в божеский вид.
Всем добра! Всем без исключения, даже аФторам-пЕсателям вЕкипедии из #14 поста! С уважением, Игорь.
Вы совсем в неадеквате... Люди тут работают за деньги, а вы как жлоб развели человека за спасибо, июо без его мозгов так бы и жили в своем миеке непонимания, так что про гниль кому нибудь другому расскажите.
Вы не находите, что это какое то странное сравнение? Я же никого не прошу собрать группу программистов, закупить\арендовать им топовые ПК, тру мех. клавиатуры и прочий стафф, арендовать ангар, организовать в нем освещение, обогрев\кондиционирование, нанять координатора проекта, помошников-подай-принеси-кофе и пр. и все это за бутылку самой дешевой водки?
Более корректно сравнивать интеллектуальный труд, в данном случае с Вашей стороны процесс написания кода программного продукта в "тепличных" домашних условиях, а с моей стороны создание музыкальной композиции, тексты, оранжировки и пр, опять же все в тех же "тепличных" домашних условиях.
а вы как жлоб развели человека за спасибо
Уважаемый, что же Вы опять ересь несете? Поинтересуйтесь у Григория, получил ли я от него хоть одну строчку кода? Задайте вопрос ему, выпрашивал ли я что то нахаляву и пр?
Мне это зачем ? Я вам сразу сказал, что вы сами не понимаете чего хотите. Это самое главное.
Мне это зачем?
Понятия не имею зачем Вы эту ху*ню написали, а теперь отнекиваетесь.
Я вам сразу сказал, что вы сами не понимаете чего хотите.
А Вы наверное во всех сферах "огромный" Специалист, можете с первого раза представить грамотное ТЗ, без последующих доработок и пр, причем в любой сфере, хоть программировании, хоть литье металла, да вообще где угодно :) Завидую я Вам, какая светлая голова пропадает в поисках работы на форумах...
Смеетесь, с такими заказчиками как вы, работа бывает только бесплатной. Вы это уже доказали.
Вы не находите, что это какое то странное сравнение? Я же никого не прошу собрать группу программистов, закупить\арендовать им топовые ПК, тру мех. клавиатуры и прочий стафф, арендовать ангар, организовать в нем освещение, обогрев\кондиционирование, нанять координатора проекта, помошников-подай-принеси-кофе и пр. и все это за бутылку самой дешевой водки?
Видите ли, концерт - это всего 2 часа. С моей точки зрения корректно сравнивать 2 часа работы группы людей с одним-двумя-тремя днями работы одного человека. Человко-часы те же.
Опять же, закупка ПК, оплата помещения для работы, отопления, освещения, канализации и пр. никуда не девается. Площадь меньше, зато срок больше. И Вы ведь не закупаете на каждый концерт комплект новой аппаратуры, а пользуетесь имеющейся. И помещение для Вашего концерта вряд ли строится новое, скорее, арендуется имеющееся. Так какая разница?
Более корректно сравнивать интеллектуальный труд, в данном случае с Вашей стороны процесс написания кода программного продукта в "тепличных" домашних условиях, а с моей стороны создание музыкальной композиции, тексты, оранжировки и пр, опять же все в тех же "тепличных" домашних условиях.
Да ради Бога.
Вы готовы написать шлягер за бутылку самой дешевой водки?
Вы готовы написать шлягер за бутылку самой дешевой водки?
Он не сможет :)
.......
Для конечного потребителя концерт действительно будет 2-2,5 часа.
А для меня это полный рабочий день, плюс неделя ген. репетиций.
Но не суть.
Хотите сказать, что на написание пусть даже с нуля приблизительного кода, который представлен ниже, у Вас уйдет несколько дней + бессонные ночи? :)
Неизлечимо. Это не рабочий пример.
Вот это
MIDIUSB, что ?
Такой хери я написать не смогу... Ее полно на просторах интернета. Я вообще за писанину денег не беру, она у меня в подарок к рабочеф прошивке.
Вы готовы написать шлягер за бутылку самой дешевой водки?
шлягеры нонче требуют серьёзных капиталовложений.
andriano, а ты готов написать шлягер за миллиард мёртвых президентов?
...отож. не от бабла писанина шлягеров зависит.
Неизлечимо. Это не рабочий пример.
Тяжелый случай)))) Вам что, видео работоспособности записать что ли?)))
Действительно, тяжелый случай. Вы вообще не понимаете о чем говорите. Вы мне видео того как этот бред компилируется пришлите :) Вот мы и поржем. Что там и где у вас работает, к этому тексту отношения не имеет.
Вы смотритесь смешно, просто анегдот. Вы пытаетесь судить о том о чем не имеете ни малейшего представления. Лучше не нужно....
Я вот вообще ситуацией наслаждаюсь. Приходит этакий Дартаньян на форум, раскидывает тут хотелки, ему предлагают цену, заметьте с ножем к горлу не лезут, в карты не обмишуривают, честно называют цену за которую готовы выполнить его хотелки. А он начинает орать как потерпевшая торговка, что дорого, грабят !!! Ты че, мил человек, охренел, тебе назвали цену, никто у тебя ничего не отнял. Не нравится, жди другого исполнителя "задешево".
Вот интересно, что руководит такими, мать их, Дартаньянами? Ну иди на рынок и ори там, мол грабят, мясо за тыщщу продают. Проснешся либо в дурке, либо в каталашке. А тут типа , мать Тереза, пришла мошенников обличать. Музыканты недоигравшие, что б их.
Для конечного потребителя концерт действительно будет 2-2,5 часа.
А для меня это полный рабочий день, плюс неделя ген. репетиций.
Ну, то есть за музыкантом право на "накладные расходы" Вы предусмотрели, а для программиста - нет?
Я вот по собственноум опыту: на 1 строку кода для Ардуино у меня прихрдится порядка 10-20 строк для ПК. Чтобы заранее просчитать то, что по скромным возможностям контроллера оказывается неподъемным.
Хотите сказать, что на написание пусть даже с нуля приблизительного кода, который представлен ниже, у Вас уйдет несколько дней + бессонные ночи? :)
Такой "приблизительный код" я могу набивать со скоростью несколько десятков байт в минуту (может, и до сотни). Только не буду это делать - зачем мне нерабочий код?
Кстати, попытайтесь угадать, сколько строк кода в среднем пишет за час квалифицированнывй программист?
PS. И, все-таки, за какую сумму Вы можете написать шлягер?
И, все-таки, за какую сумму Вы можете написать шлягер?
Для меня музыка - это хобби, которое чаще больше забирает в финансовом плане, но зато приносит душевную радость, вход на наши немногочисленные концерты чаще всего всегда свободый(скромное спонсорство местных предпринимателей, тех же баров), ну или символические 100 рублей. На крупных площадках, да, гонорар присутствует, но опять же, это инициатива организатора. Все что мы делаем с ребятами доступно в сети совершенно безвозмездно. Так что про написание шлягеров для третьих лиц - это не ко мне.
А по поводу кода - он крутится на демо контроллере с марта месяца и ничего, все прекрасно работает, за исключением двойных-тройных срабатываний(дребезг), но тут больше проблема в ультрабюджетных кнопках, которые разваливаются через 50 нажатий, но что на тот момент было под рукой, то и поставил.
PS Для уважаемого местного программиста, который кричал - что это за ересь в коде "MIDIUSB", работать не будет и т.д. вот ссылочка, ознакомьтесь если не жалко времени https://devhub.io/repos/rkistner-arcore
Вы кстати с Leonardo, Pro micro вообще знакомы?
Я и так про эту ссылочку знаю. И что ? Что либо делать с использованием этой нашлепки на адруино иде, да еще за деньги - себя не уважать. Это даже не библиотека, это именно нашлепка, причем которую автор забросил три года назад, так и не доведя ее до ума. И что !? Ну что дальше то, что доказали то ?
Блин устал, вы пытаетесь рассуждать о том в чем НИЧЕРТА не понимаете, да еще споритте. Конкретно. Чего доказываете ? Вы желаемый итог озвучьте, а то пурга одна.
Для меня музыка - это хобби, которое чаще больше забирает в финансовом плане, но зато приносит душевную радость, вход на наши немногочисленные концерты чаще всего всегда свободый(скромное спонсорство местных предпринимателей, тех же баров), ну или символические 100 рублей. На крупных площадках, да, гонорар присутствует, но опять же, это инициатива организатора. Все что мы делаем с ребятами доступно в сети совершенно безвозмездно. Так что про написание шлягеров для третьих лиц - это не ко мне.
Собственно, в данном случае не важно, для кого, важно - сам факт возможности написания. Ну и, исходя из этого, - грубой оценки стоимости.
Можно говорить о 4-х вещах:
1. Мелодия, которая пользуется популярностью (шлягер).
2. Мелодия, которая НЕ пользуется популярностью.
3. Программа, которая работает должным образом.
4. Программа, которая НЕ работает должным образом.
Попытайтесь найти аналогию между пп. 1-2 и пп. 3-4.
С моей точки зрения, озвученная Вами оценка "менее $30-40" - вполне адакватно описывает пп. 2 и 4. К какому п. относится та музыка, которую Вы пишете, не знаю. Подозрения - есть, но высказывать их я не буду. А вот приведенный в посте №32 код - очевидно относится к п.4.
С каких сумм начинается п. 3, Брокли Вам привел (кстати, с моей точки зрения очень скромная оценка). Подозреваю, что п.1. - стоит не дешевле.
А по поводу кода - он крутится на демо контроллере с марта месяца и ничего, все прекрасно работает..., за исключением двойных-тройных срабатываний(дребезг), но тут больше проблема в ультрабюджетных кнопках, которые разваливаются через 50 нажатий, но что на тот момент было под рукой, то и поставил.
Возможно, что-то у Вас и работает прекрасно, но это явно не код из поста №32.
Во-первых, как справедливо отметил Брокли, этот код просто не компилируется.
Во-вторых, в строке 2 Вы описываете массив из двух элементов, а потом внутри циклов в строках 23, 24 и 35 перебираете элементы в количестве 8 штук. И после этого Вы будете продолжать утверждать, что разместили рабочий код?
PS Для уважаемого местного программиста, который кричал - что это за ересь в коде "MIDIUSB", работать не будет...
...вот ссылочка, ознакомьтесь если не жалко времени https://devhub.io/repos/rkistner-arcore
В общем, у автора явно что-то либо с арифметикой, либо со слухом (либо и с тем, и с другим).
Вникать дальше желания не возникло.
Для меня музыка - это хобби, которое чаще больше забирает в финансовом плане...
О_О соседи бьют?
andriano, Вы совершенно правы, там закралась "ошибка"
Клапауций 112, слава богу нет ))) Да и дома мы не шумим гитарами, почти у всех детишки малые есть, в том числе и у меня. По кошельку бьют цены на муз. инструменты :(
https://www.realmusic.ru/id199216/music/ - критикуйте
andriano, Вы совершенно правы, там закралась "ошибка"
Аааааа.... пацталом !!!!! :)))))