산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

USB-BLE 무선 MIDI 어댑터

구성품 및 소모품

아두이노 101
옵션 1:Hobbytronics USB MIDI 호스트 브레이크아웃과 결합
× 1
Hobbytronics USB MIDI 호스트 브레이크아웃
× 1
Arduino ADK 개정판 3
옵션 2:nRF52 브레이크아웃 또는 Bean+와 결합
× 1
SparkFun nRF52832 브레이크아웃
× 1
LightBlue Bean+를 통한 펀치
× 1
Arduino UNO
옵션 3:USB 호스트 실드 및 nRF52 브레이크아웃 또는 Bean+와 결합
× 1
Arduino USB 호스트 실드
× 1
SparkFun 로직 레벨 변환기 - 양방향
5V 로직과 nRF52 브레이크아웃(3V3)을 연결합니다.
× 1

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

저에너지 Bluetooth를 사용하여 USB MIDI 악기를 iOS 기기에 무선으로 연결합니다.

Apple 카메라 연결 키트는 일반적으로 K-Board, BopPad 또는 Artiphon과 같은 USB MIDI 악기를 GarageBand, DrumJam 또는 GeoShred와 같은 iOS 음악 앱에 연결하는 데 필요합니다. 그러나 일부 Arduino 구성 요소와 스케치의 도움으로 USB 악기에서 MIDI 메시지를 읽고 Bluetooth LE(BLE)를 사용하여 iOS 장치로 보내는 어댑터를 쉽게 만들 수 있습니다.

저는 이 프로젝트에서 세 가지 다른 접근 방식을 조사했고 각각에 대한 지침을 제공했습니다.

Arduino 101 / Hobbytronics USB HOST-MIDI

첫 번째 디자인은 부품 및 연결 측면에서 가장 간단합니다. Arduino 101에서 제공하는 BLE 지원과 Hobbytronics USB HOST-MIDI 브레이크아웃에서 제공하는 USB 호스트 지원을 결합합니다.

Arduino 101 및 Hobbytronics 브레이크아웃은 직렬 I/O를 사용하여 통신합니다. Arduino 101에서 실행되는 스케치는 USB 호스트 브레이크아웃에서 MIDI 메시지를 읽은 다음 통합 BLE 서비스에 씁니다.

어댑터는 현재 한 방향으로만 작동하며 USB에서 메시지를 수신하지만 USB로 전송하지 않습니다. 그건 그렇고, 이것은 이 프로젝트의 모든 어댑터에 해당됩니다. 이러한 이유로 Hobbytronics 브레이크아웃에는 5V, GND 및 TX의 세 가지 연결만 필요합니다. TX 핀을 Arduino 101의 RX 핀(D0)에 연결합니다.

어댑터를 프로그래밍하려면 CurieUsbMidiBridge 스케치를 Arduino 101에 업로드하십시오. 이제 악기를 연결할 준비가 되었습니다. iOS 앱을 어댑터에 연결하고("CurieBLE" 검색) 연주를 시작하세요.

많은 iOS 앱은 BLE MIDI 연결을 직접 지원합니다. 그렇지 않은 앱의 경우 midimittr 앱이 중개자 역할을 할 수 있습니다.

안정성을 위해 이 어댑터 구현은 Note On 및 Note Off 메시지만 처리합니다. Control Change, After Touch 및 Pitch Bend와 같은 다른 채널 메시지에 대한 지원은 향후 버전에서 활성화될 수 있지만 현재로서는 스케치에서 주석 처리되어 있습니다.

Arduino 메가 ADK / SparkFun nRF52832

두 번째 설계는 SparkFun nRF52832 Breakout에서 제공하는 BLE 지원과 Arduino Mega ADK에서 제공하는 USB 호스트 지원을 활용합니다.

SparkFun nRF52 브레이크아웃과 Arduino Mega는 I2C를 사용하여 통신합니다. nRF52는 Arduino Mega에서 MIDI 메시지를 요청하는 I2C 마스터입니다. 아두이노 메가에서 받은 메시지는 nRF52의 BLE 서비스를 통해 전송된다. Arduino Mega에서 실행되는 스케치는 I2C 요청에 응답하여 통합 USB 호스트 컨트롤러에서 MIDI 메시지를 읽고 nRF52에 씁니다.

SparkFun 브레이크아웃에는 5개의 연결이 필요합니다.

<울>
  • 3V3
  • GND
  • 최종
  • SDA(24)
  • SCL(25)
  • SparkFun nRF52 브레이크아웃은 3V3에서 작동하고 Arduino Mega는 5V에서 작동하기 때문에 3개의 로직 핀은 양방향 레벨 시프터를 통해 연결됩니다.

    참고:SDA 및 SCL 할당은 SparkFun variant.h 파일에서 재정의해야 합니다. 자세한 내용은 이 연결 가이드 토론을 참조하세요.

    스케치 nRF52MidiWireMaster를 SparkFun 브레이크아웃에 업로드하고 UsbMidiWireSlave를 Arduino Mega에 업로드합니다. 그런 다음 악기를 USB 호스트 커넥터에 연결하고 iOS 앱을 어댑터에 연결한 다음("nRFMIDI" 검색) 연주를 시작하세요!

    Arduino Uno / USB 호스트 실드 / Bean+

    최종 디자인은 LightBlue Bean+의 BLE 기능을 사용하여 아래 사진과 같이 Arduino Uno에 연결된 USB 호스트 실드와 페어링합니다. Arduino Mega ADK는 USB Host Shield와 Arduino Uno 조합을 대체할 수 있습니다. Fritzing 다이어그램은 Arduino Mega ADK 버전을 보여줍니다.

    이전 설계에서와 같이 두 MCU는 I2C를 사용하여 통신합니다. Bean+는 Arduino Uno에서 MIDI 메시지를 요청하는 I2C 마스터입니다. Uno에서 받은 메시지는 Bean의 BLE 서비스를 통해 전송됩니다. Uno에서 실행되는 스케치는 I2C 요청에 응답하여 연결된 USB Host Shield에서 MIDI 메시지를 읽고 Bean+에 씁니다.

    Bean+에는 4개의 연결이 필요합니다.

    <울>
  • GND
  • 5V
  • SDA(A4)
  • SCL(A5)
  • 참고:Bean+를 5V 작동으로 전환합니다.

    스케치 BeanMidiWireMaster를 Bean+에 업로드하고 UsbMidiWireSlave를 Arduino Uno에 업로드합니다. 그런 다음 악기를 USB Host Shield에 연결하고 iOS 앱을 어댑터에 연결한 다음("Bean+" 검색) 연주를 시작합니다.

    성능상의 이유로 Control Change 및 After Touch 채널 메시지에 대한 지원은 스케치에서 주석 처리되었지만 향후 버전에서 활성화될 수 있습니다.

    <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

    코드

    CurieUsbMidiBridge.ino
    Arduino 101 + Hobbytronics USB HOST-MIDI와 함께 사용https://github.com/joebowbeer/CurieUsbMidiBridge
    nRF52MidiWireMaster.ino
    nRF52 브레이크아웃에 업로드하고 USB MIDI 기기에 연결된 Arduino에 UsbMidiWireSlave.ino(아래 참조)를 업로드합니다.https://github.com/joebowbeer/nRF52MidiWireMaster
    BeanMidiWireMaster.ino
    Bean+에 업로드하고 USB MIDI 기기에 연결된 Arduino에 UsbMidiWireSlave.ino(아래)를 업로드합니다.https://github.com/joebowbeer/BeanMidiWireMaster
    UsbMidiWireSlave.ino
    Arduino ADK(또는 Arduino Uno + USB Host Shield)에 업로드합니다. USB MIDI 악기에서 MIDI 메시지를 읽고 Wire(I2C) 마스터에 씁니다.https://github.com/joebowbeer/UsbMidiWireSlave

    회로도

    Hobbytronics USB HOST-MIDI로 Arduino 101 연결하기Sparkfun nRF52 Breakout으로 Arduino ADK 연결하기LightBlue Bean+로 Arduino ADK 연결하기

    제조공정

    1. 가정에 무선 센서 네트워크 구축
    2. 무선 자기 데이터 전송
    3. Arduino 스파이봇
    4. FlickMote
    5. 수제 TV B-Gone
    6. 마스터 시계
    7. Unopad - Ableton이 포함된 Arduino MIDI 컨트롤러
    8. Arduino 터치 브레이크아웃 게임
    9. Arduino + LED + MIDI 키보드 + MuseScore =피아노 교사
    10. 나를 찾기