Skip to content

dynm/USB2BLE_MIDI_Bridge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

USB2BLE MIDI Bridge

This project converts USB MIDI signals from Yamaha Digital Piano to Bluetooth MIDI (BLE MIDI), enabling wireless MIDI connectivity.

Tested on Yamaha YDP-144.

Hardware Requirements

  • ESP32-S3 DevKitC board
  • USB Type A breakout board
  • Yamaha Digital Piano (with USB MIDI support)

Wiring Instructions

Connect the USB Type A breakout board to ESP32-S3 as follows:

  • USB D+ → GPIO20
  • USB D- → GPIO19
  • USB VCC → 5V
  • USB GND → GND

Usage

  1. Connect the hardware according to the wiring instructions
  2. Flash the program to ESP32-S3
  3. Connect a USB cable between the piano and the USB breakout board
    • Piano side: Standard USB-B port
    • Breakout board side: USB-A port
  4. Turn on Bluetooth on your mobile device/tablet and search for the MIDI device
  5. Start using - the piano's MIDI signals will now be transmitted via Bluetooth to the connected device

Build and Flash

idf.py -p /dev/your_usb_to_serial_port flash

Flash Prebuilt Release Firmware

Download firmware files from the latest GitHub Release.

Recommended: single merged binary

Download:

  • usb2ble_midi_bridge_merged.bin

Install esptool if needed:

python -m pip install esptool

Flash it at offset 0x0:

python -m esptool --chip esp32s3 -p /dev/your_usb_to_serial_port -b 460800 \
  --before default_reset --after hard_reset \
  write_flash --flash_mode dio --flash_size 8MB --flash_freq 80m \
  0x0 usb2ble_midi_bridge_merged.bin

On macOS the serial port is usually like /dev/cu.usbserial-120 or /dev/cu.usbmodem*.

Advanced: separate binaries

Download:

  • bootloader.bin
  • partition-table.bin
  • usb2ble_midi_bridge.bin

Flash them with explicit offsets:

python -m esptool --chip esp32s3 -p /dev/your_usb_to_serial_port -b 460800 \
  --before default_reset --after hard_reset \
  write_flash --flash_mode dio --flash_size 8MB --flash_freq 80m \
  0x0 bootloader.bin \
  0x8000 partition-table.bin \
  0x10000 usb2ble_midi_bridge.bin

About

converts USB MIDI signals from Yamaha Digital Piano to Bluetooth MIDI

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors