Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Adaptateurs MIDI sans fil USB-BLE

Composants et fournitures

Arduino 101
OPTION 1 : Combiner avec la répartition hôte MIDI USB Hobbytronics
× 1
Hobbytronics USB MIDI Host Breakout
× 1
Arduino ADK Rev. 3
OPTION 2 : Combiner avec nRF52 breakout ou Bean+
× 1
SparkFun nRF52832 Breakout
× 1
Punch Through LightBlue Bean+
× 1
Arduino UNO
OPTION 3 : Combinez avec USB Host Shield et soit nRF52 breakout soit Bean+
× 1
Arduino USB Host Shield
× 1
Convertisseur de niveau logique SparkFun - Bidirectionnel
Pour interfacer la logique 5V avec le breakout nRF52 (3V3).
× 1

Applications et services en ligne

Arduino IDE

À propos de ce projet

Connectez sans fil vos instruments MIDI USB à votre appareil iOS à l'aide du Bluetooth à faible consommation d'énergie.

Un kit de connexion d'appareil photo Apple est généralement requis pour connecter un instrument MIDI USB tel qu'un K-Board, BopPad ou Artiphon à une application musicale iOS telle que GarageBand, DrumJam ou GeoShred. Cependant, à l'aide de certains composants et croquis Arduino, il est facile de créer un adaptateur qui lit les messages MIDI à partir d'un instrument USB et les envoie à un appareil iOS via Bluetooth LE (BLE).

J'ai étudié trois approches différentes et fourni des instructions pour chacune d'entre elles dans ce projet.

Arduino 101 / Hobbytronics USB HOST-MIDI

La première conception est la plus simple en termes de pièces et de connexions. Il combine le support BLE fourni par l'Arduino 101 avec le support hôte USB fourni par le breakout USB HOST-MIDI Hobbytronics.

L'Arduino 101 et le breakout Hobbytronics communiquent à l'aide d'E/S série. L'esquisse exécutée sur l'Arduino 101 lit les messages MIDI de l'évasion hôte USB, puis les écrit dans son service BLE intégré.

L'adaptateur fonctionne actuellement dans un seul sens, recevant des messages de l'USB mais ne les transmettant pas vers l'USB. Cela est d'ailleurs vrai pour tous les adaptateurs de ce projet. Pour cette raison, le breakout Hobbytronics n'a besoin que de trois connexions :5V, GND et TX. Connectez sa broche TX à la broche RX (D0) sur l'Arduino 101.

Pour programmer l'adaptateur, téléchargez le croquis CurieUsbMidiBridge sur l'Arduino 101. Vous êtes maintenant prêt à brancher votre instrument, connectez votre application iOS à l'adaptateur (recherchez "CurieBLE") et commencez à jouer.

De nombreuses applications iOS prennent directement en charge les connexions BLE MIDI. Pour les applications qui ne le font pas, l'application midimittr peut servir d'intermédiaire.

Pour des raisons de stabilité, cette implémentation de l'adaptateur ne gère que les messages Note On et Note Off. La prise en charge des autres messages de canal tels que Control Change, After Touch et Pitch Bend pourrait être activée dans une future version, mais pour l'instant, ils sont commentés dans le sketch.

Arduino Mega ADK / SparkFun nRF52832

La deuxième conception exploite la prise en charge BLE fournie par le SparkFun nRF52832 Breakout et la prise en charge de l'hôte USB fournie par l'Arduino Mega ADK.

Le breakout SparkFun nRF52 et Arduino Mega communiquent en utilisant I2C. Le nRF52 est le maître I2C, demandant des messages MIDI à l'Arduino Mega. Les messages reçus de l'Arduino Mega sont envoyés via le service BLE du nRF52. L'esquisse exécutée sur l'Arduino Mega répond aux demandes I2C, en lisant les messages MIDI de son contrôleur hôte USB intégré et en les écrivant sur le nRF52.

L'évasion SparkFun a besoin de cinq connexions :

  • 3V3
  • GND
  • RST
  • SDA (24)
  • SCL (25)

Étant donné que le breakout SparkFun nRF52 fonctionne à 3V3 et que l'Arduino Mega fonctionne à 5V, les trois broches logiques sont connectées via un décaleur de niveau bidirectionnel.

REMARQUE :les affectations SDA et SCL doivent être redéfinies dans le fichier SparkFun variants.h. Pour plus de détails, consultez cette discussion sur le guide de connexion.

Téléchargez l'esquisse nRF52MidiWireMaster vers le breakout SparkFun et UsbMidiWireSlave vers l'Arduino Mega. Branchez ensuite votre instrument sur le connecteur USB Host, connectez votre application iOS à l'adaptateur (recherchez "nRFMIDI") et commencez à jouer !

Arduino Uno / USB Host Shield / Bean+

La conception finale utilise la capacité BLE du LightBlue Bean+, en l'associant à un USB Host Shield attaché à un Arduino Uno, comme le montre la photo ci-dessous. Un Arduino Mega ADK peut remplacer la combinaison USB Host Shield et Arduino Uno. Le diagramme de Fritzing montre la version Arduino Mega ADK.

Comme dans la conception précédente, les deux MCU communiquent en utilisant I2C. Le Bean+ est le maître I2C, demandant des messages MIDI à l'Arduino Uno. Les messages reçus de l'Uno sont envoyés via le service BLE de Bean. Le sketch exécuté sur l'Uno répond aux requêtes I2C, en lisant les messages MIDI du bouclier hôte USB connecté et en les écrivant dans le Bean+.

Le Bean+ a besoin de quatre connexions :

  • GND
  • 5 V
  • SDA (A4)
  • SCL (A5)

REMARQUE :Basculez le Bean+ sur 5 V.

Téléchargez le croquis BeanMidiWireMaster sur le Bean+ et téléchargez UsbMidiWireSlave sur l'Arduino Uno. Branchez ensuite votre instrument sur l'USB Host Shield, connectez votre application iOS à l'adaptateur (recherchez "Bean+") et commencez à jouer.

Pour des raisons de performances, la prise en charge des messages de canal Control Change et After Touch a été commentée dans l'esquisse, mais pourrait être activée dans une version future.

Code

CurieUsbMidiBridge.ino
Utiliser avec Arduino 101 + Hobbytronics USB HOST-MIDIhttps://github.com/joebowbeer/CurieUsbMidiBridge
nRF52MidiWireMaster.ino
Téléchargez sur nRF52 breakout et téléchargez UsbMidiWireSlave.ino (voir ci-dessous) sur l'Arduino connecté à l'instrument MIDI USB.https://github.com/joebowbeer/nRF52MidiWireMaster
BeanMidiWireMaster.ino
Téléchargez sur Bean + et téléchargez UsbMidiWireSlave.ino (ci-dessous) sur l'Arduino connecté à l'instrument MIDI USB.https://github.com/joebowbeer/BeanMidiWireMaster
UsbMidiWireSlave.ino
Téléchargez sur Arduino ADK (ou Arduino Uno + USB Host Shield). Lit les messages MIDI de l'instrument MIDI USB et les écrit sur le maître Wire (I2C).https://github.com/joebowbeer/UsbMidiWireSlave

Schémas

Connecter Arduino 101 avec Hobbytronics USB HOST-MIDIConnecter Arduino ADK avec Sparkfun nRF52 BreakoutConnecter Arduino ADK avec LightBlue Bean+

Processus de fabrication

  1. Construire un réseau de capteurs sans fil dans votre maison
  2. Transfert de données magnétique sans fil
  3. Arduino Spybot
  4. FlickMote
  5. Téléviseur maison B-Gone
  6. horloge maîtresse
  7. Unopad - Contrôleur MIDI Arduino avec Ableton
  8. Arduino Touch Breakout Game
  9. Arduino + LED + Clavier MIDI + MuseScore =Tuteur de piano