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

Re: MIDI контроллер

Вт сен 23, 2014 19:54:03

Ферштейн, только вот ком-порт музыкальными программами у меня не определяется... :dont_know:

Re: MIDI контроллер

Вт сен 23, 2014 20:19:21

нужно установить виртуальный МИДИ порт и драйвер для пересылания на него данных с ком порта. если найду, скину названия этих программ

midi-yoke виртуальный миди
RolandSerialMidi для работы с компортом

Re: MIDI контроллер

Вт сен 23, 2014 20:49:55

Ооо.. Спасибо за инфу)

Re: MIDI контроллер

Вт сен 23, 2014 22:07:49

Вот только как они работают под новыми форточками?

http://www.tobias-erichsen.de/software/loopmidi.html - вот нашел что-то еще, заявляют, что работает под 7кой и даже 8кой

Re: MIDI контроллер

Чт сен 25, 2014 04:27:08

Пробовал так-же преобразователь COM-USB на чипе FT232, настроенном на прием потока MIDI. Ставил какие-то подобные программы, какие-то MIDI-Yoke, что-то от Roland и Yamaha, но получил миллисекундные задержки, даже на быстрых компьютерах, что очень заметно при живой игре. Потом подумал, что дополнительный софт не нужен, если в спецификации USB есть специально для этого предназначенный класс. По-итогу собрал платку для MIDI-клавиатуры. Всю работу делает PIC18F2550 с аппаратным USB и я убеждён, что все интерфейсы должны реализовываться только аппаратно, а программно - это уже костыли, тем более и без того, не самый вразумительный USB. Допиливал библиотеку от Microchip. Суть: контроллер прикидывается USB-устройством стандартного класса USB-audio, т.е. работает на встроенных в Windows драйверах, так-что думаю, пойдёт под любой осью. На вход его USART-а, настроенного на скорость MIDI идёт поток MIDI сообщений. Контроллер просто передаёт MIDI-сообщение по USB в PC. Всё заработало без задержек. Недавно увлёкся FL Studio и тоже собрался сделать MIDI-пульт по типу avargesnano.narod.ru/3/MIDI-DJ-CJ-CONTROLLER-3.0.html. Опрос потенциометров - энкодеров, кнопок, отображение информации на LCD, IMHO, задача тривиальная, реализация USB-класса, тоже уже есть. Остается, в чем согласен с прозвучавшим мнением, что тут уже важнее эргономика и удобство эксплуатации. Настройка девайса по USB-же с PC и своим софтом - это вопрос отдельный, требующий практики и раздумий в его целесообразности.

Re: MIDI контроллер

Чт сен 25, 2014 11:18:27

Я тоже когда-то собирал контроллер для трактора, фл, аблетона. Потратил кучу времени и денег. Сейчас проще купить готовый контроллер.
А если собирать, то это должен быть такой узкоспециализированный аппарат, которому нет замены из серийных.
У меня товарищ пишет в аблетоне, ему akai apc40 хватает. А кому-то и novation launchpad хватит.
Ведь собрать электронику это одно, а вот корпус и т.д.

Re: MIDI контроллер

Чт сен 25, 2014 20:08:26

spongebob писал(а):Потратил кучу времени и денег.

Ну если только на кнопки и потенциометры (ито если вы их оптом не заказывали :) )...

Re: MIDI контроллер

Чт сен 25, 2014 20:59:14

spongebob писал(а):Допустим у нас 8 каналов и 15 светодиодов отвечающих за индикацию.
Читаем http://www.midi.ru/doc/7.htm, выбираем ту команду которя точно не используется. Например ноты 16 канала.
И так 9f.
Затем нота, пофиг какая, пусть будет 00.
Потом, значение велосити - составляем из номера канала и кол-ва зажигаемых светодиодов. Допустим 5 канал и 11 светодиодов. Получаем 4b.
В итоге обработчик миди воспринимает команду 9f 00 4b - как "зажечь 11 светодиодов на 5 канале".
Ферштейн?

Спасибо, пригодится. Останется только vst плагин написать.

shindax писал(а):COM-USB на чипе FT232

Тоже пробовал слать миди на какой-то старой ардуине с чипом FT, результат не понравился. К тому же, как-то не красиво использовать две дополнительные программы для этого.

shindax писал(а): PIC18F2550 с аппаратным USB

Тоже хочу собрать на PIC. На время проектирования хочу использовать плату chipkit uc32 или max32

shindax писал(а):Допиливал библиотеку от Microchip.

Поделитесь? Думаю, мне это очень пригодится

spongebob писал(а):Потратил кучу времени и денег. Сейчас проще купить готовый контроллер.

На счет времени соглашусь.
Вот тот же akai apc40 стоит чуть больше 20к, а его аналог(по количеству различных ручек и кнопок) можно собрать за 7-10к, ИМХО. Кнопки и энкодеры можно оптом взять у китайцев по низкой цене. Только вот дешевых фейдеров оптом я что-то не нашел. Вот они дорогие и цена будет зависеть от их количества, а если без них, то, думаю, можно и в 5к уложиться.

Re: MIDI контроллер

Пт сен 26, 2014 10:23:11

Исходники переходника выдам, кому нужно, даже чертеж печатной платы где-то был.
Купить, конечно проще,

Re: MIDI контроллер

Чт окт 23, 2014 10:06:57

Здравие желаю, уважаемые!
Ни кому не попадался исходник на STM32F10x?
Уж очень хочется замутить контроллер на STM32.

Re: MIDI контроллер

Сб мар 21, 2015 20:56:44

Всем добрый день.
Года четыре назад собирал миди контроллер для управления DJ программками.
Собран он на PIC18F452. Всё вроде нечего, но не устроило то что не успевает обрабатывать джоги (оптические энкодеры) и регуляторы питча работали только c 7bit (0-127), а хотелось 12bit (0-1024).
Аналоговые мультиплексоры CD4051, цифровые вх 74HC165, вых 74HC595.
Так я и забросил его не доделав до конца из за джогов.

Так во вопрос.
Хочется сделать чтобы нормально обрабатывались джоги и регуляторы питча с 12bit обработкой.
И ещё что бы это всё работало не по USB-midi, а по USB-HID.

Можно это сделать например на STM32F0Discovery, заменив ей PIC18F452? Соответственно оставив мультиплексоры для всего остального кроме джогов и регуляторов питча.
Изображение

Re: MIDI контроллер

Сб мар 21, 2015 22:05:16

Чубака! Привет! Ты все ещё с мидибоксом воюешь? :)
Помню твой проект "звезда" на мидибоксе, даже с кодом что помогал.
Чем не устраиваюь 7битные питчи?
Что с энкодерами? Почему не успевают?

В понедельник с компа буду, удобнее писать будет...

Re: MIDI контроллер

Вс мар 22, 2015 12:17:30

spongebob писал(а):Чубака! Привет! Ты все ещё с мидибоксом воюешь? :)
Помню твой проект "звезда" на мидибоксе, даже с кодом что помогал.
Чем не устраиваюь 7битные питчи?
Что с энкодерами? Почему не успевают?

В понедельник с компа буду, удобнее писать будет...


О, Привет!!!
Достал тут недавно его со шкафа. С кодом ты очень сильно помог, спасибо тебе!!!
7-ми битные питчи имеют малое разрешение, а для того чтобы подгонять скорость "по старинке" нужно более высокое разрешение на регуляторах питча. Да я понимаю там всё можно автоматом подогнать, но ............
Энкодеры проскакивают при быстром перемещении. Хотя для подгонки трека устроит и так.
Больше хотелось сделать общение железки на HID.

Re: MIDI контроллер

Вс мар 22, 2015 20:55:55

STM вещь мощная. Я щас проект гоняю на STM32F030K6T6 с оптическим инкрементальным энкодером, сигнал на выходе с частотой 7кГц отрабатывается на ура, и сделано всё на аппаратных прерываниях, которых таv херова прорва :) . Если не мудрить с USB и использовать аппаратную поддержку, а не программную, то думаю ресурсов STM32 хватит вполне...

Re: MIDI контроллер

Пн мар 23, 2015 08:49:46

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

Re: MIDI контроллер

Пн мар 23, 2015 19:08:33

isx писал(а):STM вещь мощная. Я щас проект гоняю на STM32F030K6T6 с оптическим инкрементальным энкодером, сигнал на выходе с частотой 7кГц отрабатывается на ура, и сделано всё на аппаратных прерываниях, которых таv херова прорва :) . Если не мудрить с USB и использовать аппаратную поддержку, а не программную, то думаю ресурсов STM32 хватит вполне...

Обмен с программой по какому протоколу MIDI или HID?

spongebob писал(а):Пика хватит за глаза.
Чубак, буду скоро на работе - отпишу, что я думаю по поводу питча и джога.
Тебе нужно только решить: оставлять миди или переходить на другой протокол.
Ты в тракторе контроллер юзаешь?

Я его как бы не юзал года четыре уже :)) Нашёл пылящийся на серванте и решил может доделать.
А так или трактор или виртуал.
Сходил тут на ucapps мельком. Там уже используется STM32F4 и аналоговые входы на ADC MCP3208 уже 12 битные. Только вот пока не разобрался на MIDI он или на HID. И какой класс HID используется для подключения к трактору или виртуалу. Я так думаю HID Custom?

Re: MIDI контроллер

Вт мар 24, 2015 15:36:36

MIDI тебе просто не позволит передавать больше чем 7битные данные
тут либо использовать другие команды, либо отказываться от MIDI в пользу, например, open sound control (главное, что бы его поняла программа)
посмотри в коде и увидишь что-то типа 10to7bit конвертацию в подпрограмме AIN
вот если эту конвертацию не делать, и использовать команду которая позволит тебе использовать 10бит, то можно пользоваться тем что есть.
вот есть команды типа
8n kk vv -
9n kk vv
где 9- ноту включить, 8 - ноту выключить, n - номер канала, kk - номер ноты, vv - скорость нажатия. kk и vv могут принимать значения от 0 до 127 (7 бит)
а есть En II hh - в принципе пофиг, что оно означает на языке MIDI. мы и MIDI то в чистом виде не используем, а только как канал данных.
вот в этом случае можно передать 14 бит. II - старший байт 7бит, hh - младший байт 7бит.

кстати, ты как обработку энкодеров в коде делал? она же как-то хитро там прописывается и выполняется отдельная подпрограмма
там тоже можно применить команду En II hh

я бы, конечно, сделал вот как.
с нуля написал бы, что-то типа ОС (по типу мидиОС от мидибокса) для опроса кнопок, энкодеров, потенциометров
lcd бы выкинул за ненадобностью (или по I2C общаться с ним, если есть необходимость)
освободившимся портом можно было бы быстро опрашивать энкодеры (4 штуки правда, но больше не надо)
залил бы бутлоадер, что бы по usart заливать прошивку можно было через переходник usb-ttl
но это нужно разбираться со всем тонкостями программирования МК... для меня это пока тёмный лес
вот обрабатывать данные и какие-то алгоритмы по поводу какой лампочкой моргнуть (именно какой моргнуть, а не как) или обработать нажатие кнопки - это я могу
в общем нужна ОС.

жаль, что исходник мидиОС написан на асме, я в нём ваще не бум-бум...

ну и, конечно, уложиться в 32кб нужно.
а перейти на стм32 всегда успеем. и опять вступим в то же болото с ОС.

мидиОС конечно крута (в своём роде), но для твоей задачи слишком избыточна.

Re: MIDI контроллер

Ср мар 25, 2015 15:27:19

spongebob писал(а):MIDI тебе просто не позволит передавать больше чем 7битные данные
тут либо использовать другие команды, либо отказываться от MIDI в пользу, например, open sound control (главное, что бы его поняла программа)
посмотри в коде и увидишь что-то типа 10to7bit конвертацию в подпрограмме AIN
вот если эту конвертацию не делать, и использовать команду которая позволит тебе использовать 10бит, то можно пользоваться тем что есть.

На старом пике можно и 10bit AIN сделать, но только без микросхем мультиплексоров 4051 через которые у меня включены перемеенные резисторы. Но тогда можно будет повесить всего 8 крутилок. На STM32 у них уже 12Bit.
spongebob писал(а):кстати, ты как обработку энкодеров в коде делал? она же как-то хитро там прописывается и выполняется отдельная подпрограмма
там тоже можно применить команду En II hh

Там у них есть примеры. Взял готовый пример и подогнал.
spongebob писал(а):а перейти на стм32 всегда успеем. и опять вступим в то же болото с ОС.

Зато на STM уже готовая есть, только останется подправить немного. Главное разобраться в каком протоколе сейчас они сделали общение на STM. Всё времени нет почитать вникнуть.

Re: MIDI контроллер

Ср мар 25, 2015 21:30:19

А вот и нет.
Конвертацию 10 в 7 бит можно и с мультиплексорами не делать. Конвертация только для миди-команд нужна. Для тех, что не поддерживают 10бит.

Re: MIDI контроллер

Вс ноя 08, 2015 09:57:41

Здравствуйте, решил тоже собрать usb midi контроллер для управления какой-нибудь виртуальной dj программой. Исходя из своих возможностей смогу осилить проект отсюдаhttp://avargesnano.narod.ru/3/MIDI-DJ-CJ-CONTROLLER-3.0.html, но только в том виде, в каком он есть)))а хотелось бы добавить еще один мультиплексор (т.е. еще 5 крутилок и 3 кнопки), но код поправить под это дело не смогу :? Еще интересует ряд вопрос для общего развития:
1 Обработка мультиплексором кнопок или крутилок кодом задается?
2 У автора на IN0...IN4 подключены крутилки на IN5-IN7 кнопки, можно ли не правив код подключить например все кнопки?
3 У мультиплексора имеются три линии A,B,C, подключеные к PB2...PB4, если подключить второй мультиплексор, то к каким портам подключать его?
Помогите пожалуйста скомпилировать прошивку под 2 мультиплексора? :solder:
Ответить