Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Беспроводные MIDI-адаптеры USB-BLE

Компоненты и расходные материалы

Arduino 101
ВАРИАНТ 1:объединить с USB-хостом Hobbytronics для подключения к MIDI
× 1
Hobbytronics USB MIDI Host Breakout
× 1
Arduino ADK Rev.3
ВАРИАНТ 2:объединить с прорывом nRF52 или Bean +
× 1
SparkFun nRF52832 Breakout
× 1
Пробить компонент LightBlue +
× 1
Arduino UNO
ВАРИАНТ 3:сочетание с USB Host Shield и либо nRF52 breakout, либо Bean +
× 1
Arduino USB Host Shield
× 1
Преобразователь логического уровня SparkFun - двунаправленный
Для взаимодействия логики 5 В с выходом nRF52 (3V3).
× 1

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

Беспроводное подключение USB-MIDI-инструментов к устройству iOS с помощью Bluetooth с низким энергопотреблением.

Комплект для подключения камеры Apple Camera Connection Kit обычно требуется для подключения USB-MIDI-инструмента, такого как K-Board, BopPad или Artiphon, к музыкальному приложению iOS, например GarageBand, DrumJam или GeoShred. Однако с помощью некоторых компонентов и эскизов Arduino легко создать адаптер, который считывает MIDI-сообщения с USB-инструмента и отправляет их на устройство iOS с помощью Bluetooth LE (BLE).

Я исследовал три разных подхода и предоставил инструкции для каждого из них в этом проекте.

Arduino 101 / Hobbytronics USB HOST-MIDI

Первая конструкция самая простая по составным частям и соединениям. Он сочетает в себе поддержку BLE, предоставляемую Arduino 101, с поддержкой USB-хоста, обеспечиваемой прорывом Hobbytronics USB HOST-MIDI.

Между Arduino 101 и Hobbytronics используется последовательный ввод-вывод. Скетч, запущенный на Arduino 101, считывает MIDI-сообщения с выхода USB-хоста, а затем записывает их в свою интегрированную службу BLE.

В настоящее время адаптер работает только в одном направлении, получая сообщения с USB, но не передавая их на USB. Кстати, это верно для всех адаптеров в этом проекте. По этой причине для разъема Hobbytronics требуется только три подключения:5 В, GND и TX. Подключите его вывод TX к выводу RX (D0) на Arduino 101.

Чтобы запрограммировать адаптер, загрузите эскиз CurieUsbMidiBridge в Arduino 101. Теперь вы готовы подключить свой инструмент, подключить приложение iOS к адаптеру (отсканируйте «CurieBLE») и начните играть.

Многие приложения для iOS напрямую поддерживают соединения BLE MIDI. Для приложений, которые этого не делают, приложение midimittr может выступать в качестве посредника.

По соображениям стабильности эта реализация адаптера обрабатывает только сообщения Note On и Note Off. Поддержка других сообщений канала, таких как Control Change, After Touch и Pitch Bend, может быть включена в будущей версии, но пока они закомментированы в эскизе.

Arduino Mega ADK / SparkFun nRF52832

Во втором варианте используется поддержка BLE, обеспечиваемая SparkFun nRF52832 Breakout, и поддержка USB-хоста, предоставляемая Arduino Mega ADK.

Связь SparkFun nRF52 и Arduino Mega осуществляется через I2C. NRF52 является мастером I2C, запрашивающим MIDI-сообщения от Arduino Mega. Сообщения, полученные от Arduino Mega, отправляются через службу BLE nRF52. Скетч, запущенный на Arduino Mega, отвечает на запросы I2C, считывая MIDI-сообщения со своего встроенного хост-контроллера USB и записывая их в nRF52.

Для прорыва SparkFun требуется пять подключений:

  • 3V3
  • GND
  • RST
  • ПДД (24)
  • SCL (25)

Поскольку выход SparkFun nRF52 работает с напряжением 3V3, а Arduino Mega работает с напряжением 5V, три логических контакта соединены через двунаправленный переключатель уровня.

ПРИМЕЧАНИЕ. Назначения SDA и SCL необходимо переопределить в файле SparkFun sizes.h. Дополнительные сведения см. В этом руководстве по подключению.

Загрузите скетч nRF52MidiWireMaster в раздел SparkFun и UsbMidiWireSlave в Arduino Mega. Затем подключите инструмент к разъему USB Host, подключите приложение iOS к адаптеру (найдите «nRFMIDI») и начните играть!

Arduino Uno / USB Host Shield / Bean +

Окончательный дизайн использует BLE-возможности LightBlue Bean + в сочетании с USB Host Shield, подключенным к Arduino Uno, как показано на фотографии ниже. Arduino Mega ADK может заменить комбинацию USB Host Shield и Arduino Uno. На диаграмме Фритцинга показана версия Arduino Mega ADK.

Как и в предыдущем проекте, два MCU обмениваются данными с помощью I2C. Bean + - это мастер I2C, запрашивающий MIDI-сообщения от Arduino Uno. Сообщения, полученные от Uno, отправляются через службу BLE Bean. Скетч, запущенный на Uno, отвечает на запросы I2C, считывая MIDI-сообщения с подключенного USB Host Shield и записывая их в Bean +.

Для Bean + требуется четыре подключения:

  • GND
  • 5 В
  • ПДД (A4)
  • SCL (A5)

ПРИМЕЧАНИЕ. Переключите Bean + на работу 5 В.

Загрузите эскиз BeanMidiWireMaster в Bean + и загрузите UsbMidiWireSlave в Arduino Uno. Затем подключите инструмент к USB Host Shield, подключите приложение iOS к адаптеру (найдите «Bean +») и начните играть.

По соображениям производительности поддержка сообщений канала Control Change и After Touch была закомментирована в скетче, но может быть включена в будущей версии.

Код

CurieUsbMidiBridge.ino
Использование с Arduino 101 + Hobbytronics USB HOST-MIDI https://github.com/joebowbeer/CurieUsbMidiBridge
nRF52MidiWireMaster.ino
Загрузите в nRF52 breakout и загрузите UsbMidiWireSlave.ino (см. Ниже) в Arduino, подключенный к USB-MIDI-инструменту. Https://github.com/joebowbeer/nRF52MidiWireMaster
BeanMidiWireMaster.ino
Загрузите в Bean + и загрузите UsbMidiWireSlave.ino (ниже) в Arduino, подключенный к USB-MIDI-инструменту. Https://github.com/joebowbeer/BeanMidiWireMaster
UsbMidiWireSlave.ino
Загрузите в Arduino ADK (или Arduino Uno + USB Host Shield). Считывает MIDI-сообщения с USB-MIDI-инструмента и записывает их на ведущее устройство Wire (I2C). Https://github.com/joebowbeer/UsbMidiWireSlave

Схема

Подключение Arduino 101 к Hobbytronics USB HOST-MIDI Подключение Arduino ADK к Sparkfun nRF52 Breakout Подключение Arduino ADK с LightBlue Bean +

Производственный процесс

  1. Создание сети беспроводных датчиков в вашем доме
  2. Беспроводная магнитная передача данных
  3. Arduino Spybot
  4. FlickMote
  5. Самодельный телевизор B-Gone
  6. Основные часы
  7. Unopad - MIDI-контроллер Arduino с Ableton
  8. Игра Arduino Touch Breakout
  9. Arduino + светодиоды + MIDI-клавиатура + MuseScore =Piano Tutor
  10. Найди меня