Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Adaptadores USB-BLE MIDI Sem Fio – Conectividade Perfeita para Músicos

Componentes e Materiais

Arduino 101 OPÇÃO 1: Combinar com Breakout USB MIDI Host Hobbytronics 1
Hobbytronics USB MIDI Host Breakout 1
Arduino ADK Rev. 3 OPÇÃO 2: Combinar com breakout nRF52 ou Bean+ 1
SparkFun nRF52832 Breakout 1
Punch Through LightBlue Bean+ 1
Arduino UNO OPÇÃO 3: Combinar com USB Host Shield e nRF52 breakout ou Bean+ 1
Arduino USB Host Shield 1
SparkFun Logic Level Converter - Bi-Directional Para interfacear lógica 5V com nRF52 breakout (3V3) 1

Aplicativos e Serviços Online

Arduino IDE

Sobre o Projeto

Conecte sem fio seus instrumentos MIDI USB ao seu dispositivo iOS usando Bluetooth de baixa energia (BLE).

Um Kit de Conexão de Câmera da Apple é geralmente necessário para conectar um instrumento MIDI USB (como K-Board, BopPad ou Artiphon) a um aplicativo de música iOS (como GarageBand, DrumJam ou GeoShred). No entanto, com a ajuda de alguns componentes e sketches do Arduino, é fácil fazer um adaptador que lê mensagens MIDI de um instrumento USB e as envia para um dispositivo iOS usando Bluetooth LE (BLE).

Investiguei três abordagens diferentes e forneço instruções para cada uma neste projeto.

Arduino 101 / Hobbytronics USB HOST-MIDI

O primeiro design é o mais simples em termos de peças e conexões. Combina o suporte BLE fornecido pelo Arduino 101 com o suporte USB Host fornecido pelo breakout Hobbytronics USB HOST-MIDI.

O Arduino 101 e o breakout Hobbytronics comunicam-se via Serial I/O. O sketch rodando no Arduino 101 lê mensagens MIDI do breakout USB Host e as escreve em seu serviço BLE integrado.

Adaptadores USB-BLE MIDI Sem Fio – Conectividade Perfeita para Músicos
Adaptadores USB-BLE MIDI Sem Fio – Conectividade Perfeita para Músicos

O adaptador atualmente opera apenas em uma direção, recebendo mensagens do USB, mas não transmitindo para USB. Isso vale para todos os adaptadores neste projeto. Por esse motivo, o breakout Hobbytronics precisa apenas de três conexões: 5V, GND e TX. Conecte seu pino TX ao pino RX (D0) no Arduino 101.

Para programar o adaptador, carregue o sketch CurieUsbMidiBridge no Arduino 101. Agora você está pronto para conectar seu instrumento, conectar seu aplicativo iOS ao adaptador (procure por "CurieBLE") e começar a tocar.

Muitos aplicativos iOS suportam conexões BLE MIDI diretamente. Para aplicativos que não suportam, o aplicativo midimittr pode atuar como intermediário.

Por motivos de estabilidade, esta implementação do adaptador lida apenas com mensagens Note On e Note Off. Suporte para outras mensagens de canal como Control Change, After Touch e Pitch Bend pode ser habilitado em uma versão futura, mas por enquanto estão comentadas no sketch.

Arduino Mega ADK / SparkFun nRF52832

O segundo design aproveita o suporte BLE fornecido pelo SparkFun nRF52832 Breakout e o suporte USB Host fornecido pelo Arduino Mega ADK.

O breakout nRF52 da SparkFun e o Arduino Mega comunicam-se via I2C. O nRF52 é o mestre I2C, solicitando mensagens MIDI do Arduino Mega. As mensagens recebidas do Arduino Mega são enviadas através do serviço BLE do nRF52. O sketch rodando no Arduino Mega responde a requisições I2C, lendo mensagens MIDI de seu controlador USB Host integrado e escrevendo-as no nRF52.

Adaptadores USB-BLE MIDI Sem Fio – Conectividade Perfeita para Músicos

O breakout SparkFun precisa de cinco conexões:

Como o breakout nRF52 da SparkFun opera em 3V3 e o Arduino Mega opera em 5V, os três pinos lógicos são conectados através de um conversor de nível bi-direcional.

NOTA: As atribuições SDA e SCL devem ser redefinidas no arquivo variants.h da SparkFun. Para mais detalhes, consulte esta discussão do guia de conexão.

Carregue o sketch nRF52MidiWireMaster no breakout SparkFun e UsbMidiWireSlave no Arduino Mega. Em seguida, conecte seu instrumento no conector USB Host, conecte seu aplicativo iOS ao adaptador (procure por "nRFMIDI") e comece a tocar!

Arduino Uno / USB Host Shield / Bean+

O design final emprega a capacidade BLE do LightBlue Bean+, emparelhando-o com um USB Host Shield conectado a um Arduino Uno, como mostrado na foto abaixo. Um Arduino Mega ADK pode substituir a combinação USB Host Shield + Arduino Uno. O diagrama Fritzing mostra a versão Arduino Mega ADK.

Adaptadores USB-BLE MIDI Sem Fio – Conectividade Perfeita para Músicos

Assim como no design anterior, os dois MCUs comunicam-se via I2C. O Bean+ é o mestre I2C, solicitando mensagens MIDI do Arduino Uno. As mensagens recebidas do Uno são enviadas através do serviço BLE do Bean. O sketch rodando no Uno responde a requisições I2C, lendo mensagens MIDI do USB Host Shield anexado e escrevendo-as no Bean+.

O Bean+ precisa de quatro conexões:

NOTA: Mude o Bean+ para operação 5V.

Carregue o sketch BeanMidiWireMaster no Bean+ e carregue UsbMidiWireSlave no Arduino Uno. Em seguida, conecte seu instrumento no USB Host Shield, conecte seu aplicativo iOS ao adaptador (procure por "Bean+") e comece a tocar.

Por motivos de desempenho, o suporte para mensagens de canal Control Change e After Touch foi comentado no sketch, mas pode ser habilitado em uma versão futura.

Código

CurieUsbMidiBridge.ino

Usar com Arduino 101 + Hobbytronics USB HOST-MIDI
https://github.com/joebowbeer/CurieUsbMidiBridge

nRF52MidiWireMaster.ino

Carregar no breakout nRF52 e carregar UsbMidiWireSlave.ino (veja abaixo) no Arduino conectado ao instrumento MIDI USB.
https://github.com/joebowbeer/nRF52MidiWireMaster

BeanMidiWireMaster.ino

Carregar no Bean+ e carregar UsbMidiWireSlave.ino (abaixo) no Arduino conectado ao instrumento MIDI USB.
https://github.com/joebowbeer/BeanMidiWireMaster

UsbMidiWireSlave.ino

Carregar no Arduino ADK (ou Arduino Uno + USB Host Shield). Lê mensagens MIDI do instrumento MIDI USB e escreve no mestre Wire (I2C).
https://github.com/joebowbeer/UsbMidiWireSlave

Esquemáticos

Processo de manufatura

  1. Construa uma Rede de Sensores Sem Fio Acessível para Sua Casa
  2. Transferência de Dados Magnética Sem Fio com Arduino e Sensor 3D Infineon
  3. Construa um Spybot Controlado por Bluetooth com Arduino
  4. FlickMote: Controle Remoto IR por Gestos para Casa Inteligente
  5. DIY Arduino TV B-Gone: Controle Remoto Universal para Todas as TVs
  6. Construa um Relógio Mestre LED Personalizado com Alarme – Visível a 12 Metros
  7. Unopad: Controlador MIDI Arduino Perfeito para Ableton Live
  8. Jogo Breakout Touch com Arduino: Arcade Clássico em LCD TFT 2,4″
  9. Transforme seu Teclado MIDI em Tutor de Piano Inteligente com Arduino, LEDs e MuseScore
  10. Find Me: Localizador Inteligente de Objetos com Arduino e Bluetooth