Midi controller arduino pro micro

MIDI микшер на Arduino Pro Micro

Существует много разных пультов, которые помогают диджеям при сведении и работе с музыкой. Стоят они не мало, а покрутить ручки хочется. Сделаем Midi микшер и подключим его к программе для диджеев (Traktor Pro 2).

Устройство будет иметь 8 поворотных потенциометров которые позволят управлять громкостью, низкими, средними и высокими частотами эквалайзера и 2 кнопки, для кнопки play/pause.

Основой нашего проекта будет плата arduino pro micro (или arduino leonardo ). Управлять будем поворотными потенциометрами. На них наденем цветные ручки. Понадобятся две кнопки и большой кондёр на 4700 мкФ (от 6 вольт). Запихнем все это в корпус из коробки.

Электронная схема и сборка.

Для начала давайте подготовим коробку. В ней надо прорезать 8 отверстий диаметром 6 миллиметров, два отверстия по 12 миллиметров и отверстие под юсб провод на задней панели.

Следующий этап крепление потенциометров и кнопок. Вставляем деталь и закручиваем гайку.

Алгоритм программы простой. Опрашиваем потенциометры и кнопки, отправляем данные на компьютер.

Для прошивки платы не надо устанавливать драйвера, но в инструментах надо выбрать плату Arduino Leonardo.

Использование: Для примера использования я взял traktor pro 2. Откройте его, а затем найдите в нем “Controller manager”. Здесь мы привяжем потенциометры к рычагам интерфейса.

Нажмите “ Add in” и найдите Volume/High/Mid/Low. Выберите канал (A или B). Нажмите learn. Покрутите потенциометр. Нажмите learn снова. Сделайте это со всеми элементами.

Теперь можем включать любимые треки и наслаждаться процессом сведения.

Источник

USB MIDI-контроллер на Arduino

В очередной раз играя на гитаре и управляя звуком через Peavey ReValver и прочие Amplitube, задумался о приобретении MIDI-контроллера. Фирменные устройства, вроде Guitar Rig Kontrol 3, стоят около 13 000 рублей, и обладают только напольным исполнением. То есть оперативно менять положения нескольких регуляторов весьма проблематично.

Различные контроллеры DJ направленности выглядели интереснее за счет обилия фейдеров и энкодеров. Решено было совместить приятное с полезным и сделать MIDI-контроллер самому.

Начальные требования: 2-7 фейдеров, столько же роторных потенциометров/энкодеров, около 10 кнопок, подключение по USB.

Далее стал выбирать компоненты. Arduino выбрал по причине наличия, в принципе можно использовать ту же ATmega32u4, STM, либо другой контроллер. Фейдеры и кнопки нашел в местном радиомагазине. Энкодер и потенциометры уже были когда-то куплены. Тумблеры нашел в гараже. Корпус решил изготовить из верхней крышки DVD плеера.

Комплектующие:

  • Arduino UNO R3 1 шт.
  • Фейдеры сп3-25а 5 шт.
  • Рот. потенциометры 3 шт.
  • Энкодер 1 шт.
  • Кнопки pbs-26b 16 шт.
  • Крышка от DVD 1 шт.
  • Тумблеры 2шт.

Сначала согнул корпус и пропилил в нем бормашиной отверстия под фейдеры:

Затем просверлил отверстия для тумблеров и рот. потенциометров, разметил положение кнопок. Так как сверла на 19 (да и соответствующего патрона для дрели) у меня не было, то отверстия для кнопок сверлил на 13, а затем увеличивал разверткой.

Основа готова, теперь можно думать, как подключать все это добро к Arduino. Во время изучения данного вопроса наткнулся на замечательный проект HIDUINO. Это прошивка для ATmega16u2 на борту Arduino, благодаря которой устройство определяется как USB-HID MIDI device. Нам остаётся только отправлять данные MIDI по UART со скоростью 31250 бод. Чтобы не захламлять исходники дефайнами с кодами MIDI событий, я воспользовался этой библиотекой.

Так как я использовал Arduino, то решил сделать шилд, к которому уже и будут подключаться вся периферия.
Схема шилда:

Как видно из схемы кнопки подключил по матричной схеме. Задействованы встроенные подтягивающие резисторы ATmega328, поэтому логика инверсная.


Забыл разместить на печатке диоды, пришлось подпаивать к кнопкам.

Потенциометры подключены через мультиплексор 4052b к вводам АЦП.

Энкодер повесил на аппаратное прерывание.

Печатную плату развёл в Sprint layout, Затем изготовил старым добрым ЛУТ’ом с использованием самоклеющейся плёнки и хлорного железа. Качество пайки страдает от ужасного припоя.


Для заливки прошивки в ATmega32u4 я кратковременно замыкал 2 пина ICSP, затем использовал Flip. В дальнейшем подключил к этим пинам кнопку.

Прошивка работает, осталось прикрутить стенки и лицевую панель. Так как я размечал все по месту, то на рисование панели времени ушло больше, чем на всё остальное. Выглядело это так:

  • 1. В качестве фона картинки выставлялась миллиметровка
  • 2. Размечались отверстия
  • 3. Полученное выводилось на печать
  • 4. Вырезались все отверстия
  • 5. Откручивались и снимались все элементы
  • 6. Устанавливалась панель, устанавливались на места все кнопки/потенциометры
  • 7. Отмечались несоответствия шаблона и корпуса
  • 8. Переход к пункту 2, пока все отверстия не совпадут

Панель изготовлена из миллиметрового ПЭТ, покрытого плёнкой с принтом и ламинированием, отверстия вырезались лазером по cdr файлу. У иркутских рекламщиков все это обошлось мне всего в 240 рублей.

Боковые стенки выпилил из фанеры.

Вид устройства на текущий момент:

Стоимость комплектующих:

  • Arduino UNO R3 320 р.
  • Фейдеры сп3-25а 5х9=45 р.
  • Рот. потенциометры + ручки 85 р.
  • Энкодер 15 р.
  • Кнопки pbs-26b 16х19=304 р.
  • Панель 240 р.
  • Мультиплексор 16 р.
  • Фанера, текстолит, тумблера, корпус от DVD — в моём случае бесплатно.

Итого: 1025 руб.

Контроллер справляется с возложенными на него задачами и рулит звуком практически в любой программе аудио обработки.

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

Источник

Build this MIDI controller using an Arduino: The Transport

This small guy is great if you just want to have three buttons in your workflow, like play, stop and record, or if you just want to start learning how to build a MIDI controller, without having to commit to a bigger project.

The Transport, how a I call it, was made as a custom made controller for a client. But, as I posted on my site, more people ended up wanting it, so I also started selling it in our store.

But, what can be better than buying? Building your own! That’s why I decided to put this tutorial, so you can build your own “The Transport”!

Here is a review of the Transport as a regular MIDI controller:

And as a controller for Pro Tools (yes, they are different):

But, let’s get to work!

Materials needed:

Intro

Buying components sometimes can be an overwhelming and tedious task, due to the gigantic amount of variations for each thing. So, I pointed to the exact components that I use. But, if you wanna buy in your local hardware store, or if you have them at home, it’s totally up to you.

The most important part of this project is its brain. The brain of our controller is going to be an Arduino Pro Micro. Arduinos are great for doing from robots to MIDI controllers, and if you follow this page, you know that we love them.

If you are new to Arduino, make sure to watch our free course, the DIY MIDI Controller Workshop.

If you are wondering “I already have an Arduino Uno (or any other model), can I use it?”, the answer is, “it depends, but mostly no”. The Arduino Pro Micro is in the family of the Arduinos that can be transformed into a MIDI class compliant device, and also can send keystrokes, which will be needed if you want to use it with pro tools.

This is an easy project, the only catch is that you’ll need to saw the solderable pcb in order to fit it in the enclosure.

Steps

First of all: download the files on the Github repository.

1 The enclosure

Enclosure is that thing you can make however you want, and improvise however you want. But, of course I wouldn’t let you down on it. I made available all the parts that I’ve designed for laser cutting and you just downloaded it.

The material you need to cut needs to have a 3mm width. I used plywood, which I think looks really good, but you could use acrylic, for example. If you don’t have a laser cutter available, you can mail me and I can cut one for you.

The red lines are for cutting and the blacks are for engraving.

2 The circuit

Now, it’s time for soldering! And for that you should follow the schematic you’ve just downloaded.

2.1 Solder the Arduino to the male-male pin headers

You should solder your pin headers into the Arduino. I use a breadboard for that, it helps a lot.

  • Arduino Pro Micro
  • Arduino Pro Micro
  • Arduino Pro Micro

2.2 Solder the male-female headers into the solderable breadboard

Before doing that you should cut the solderable breadboard in order to fit in the enclosure. You should cut about the red line, so the pcb fits tight inside the enclosure. The length of the part that stays inside the controller is exact 47.8mm. Just do your best, it doesn’t need to be perfect!

Now, it’s time for the soldering.

  1. Connect the male-female headers into the headers of the Arduino.
  2. Snap in the solderable breadboard.
  3. Solder.

Be careful to put the board in the exact same place as in the schematic! It will be a little bit to the left, because it can’t fit in the middle. This is important because of the layout of the enclosure.

2.3 Connecting the arcade button to the breadboard

  1. Cut 3 colored wires with about 15-20cm.
  2. Cut 3 5cm (preferred black) wires
  3. Cut 1 15-20cm black wire.
  4. Strip all the tips of the wires.
  5. Snap the arcade buttons on the mounting holes on the top.
  6. Solder exactly how you are looking in the schematic. Use the long black wire to connect the last arcade button to the solderable breadboard.

3. Assemble the controller

  1. Disconnect the Arduino from the female headers.
  2. Screw the breadboard in the bottom part of the enclosure using the 10mm screw and nut.
  3. Put the Arduino back on its place.
  4. Put the spacers, with the male connector, in the bottom part of the enclosure and fasten them with the nuts.
  5. Snap all the enclosure parts. Be sure to leave the front part with the USB hole in the right place.
  6. Put the remaining screws in the spacers.
  7. Put some rubber feet!

4. Program your Arduino

  1. Connect the Arduino to the USB port of your computer using a USB micro cable.
  2. Download and install the version 1.6.8 of the Arduino’s IDE.
  3. Open the code that you’ll use, regular MIDI controller, or for Pro Tools.
  4. Go to Sketch >include library > Manage Libraries.
  5. Search for “MIDIUSB”. Install the MIDIUSB Library. This library allows the Arduino Pro Micro to become a MIDI Class compliant device.
  6. Go to Tools >Port and chose your USB port.
  7. Go to Tools >Board and choose Arduino/Genuino Micro.
  8. Upload the code clicking in the arrow on the top left corner.

Be happy! (or not)

Now your controller is ready to shine every where you go!

If something went wrong along the way, try doing a couple things:

  1. Restart your computer.
  2. Make sure you installed the right library.
  3. And make sure that you have a good quality usb cable. This is really important! I’ve already seen many crapy cables, like those smartphone ones, that don’t work with the Arduino, so be sure to buy a good one.

So, how was your experience building this little guy? Have doubts? Let me know in the comments bellow!

Feel that you want to learn more?

If you liked it, please share with your nerd friends! See you!

Источник

Adblock
detector