Skip to main content

MIDI Forum

How to make a USB m...
 
Notifications
Clear all

How to make a USB midi to Bluetooth adapter

10 Posts
10 Users
0 Reactions
25.4 K Views
Sam
 Sam
Posts: 1
New Member
Topic starter
 
[#462]

Does anyone know how to make a wireless MIDI to Bluetooth adapter? I have a USB B input and wish to make it wireless. Looking at making one for a project. Any advice?


 
Posted : 29/01/2019 10:48 am
Clemens Ladisch
Posts: 334
Reputable Member
 

As hardware, you need a BLE radio device, and a USB host (or OTG) device, and a microcontroller. (Both BLE and USB devices are typically integrated in a microcontroller, but I am not aware of any microcontroller that integrates both.)
Then you need to write software: a BLE-MIDI implementation, and host support for USB MIDI.


 
Posted : 30/01/2019 9:34 am
Posts: 74
Admin
 

You can do this perhaps using an Arduino DUE?
https://learn.sparkfun.com/tutorials/midi-ble-tutorial/create-a-basic-ble-peripheral

and
https://github.com/bbx10/USBH_MIDI/tree/due

Would require a bit of work though 🙂


 
Posted : 18/02/2019 7:31 pm
bu
 bu
Posts: 1
New Member
 

Three versions in this article. None look like easy builds.

https://www.hackster.io/joebowbeer/usb-ble-wireless-midi-adapters-25dd31


 
Posted : 19/02/2019 1:46 am
Nero
 Nero
Posts: 1
New Member
 

Teensy 3.6 if you want a USB host with full midi capability otherwise a teensy 3.2 or 3.5 will do and has midi over usb built in, then the Adafruit nRF8001 shield works great with the BlePeripheral library if you follow the SparkFun tutorial posted above you can easily create A midi peripheral.


 
Posted : 09/03/2019 8:53 pm
Rodney
Posts: 1
New Member
 

I am not sure I am qualified to answer this but for what its worth my limited experience with using the audio (not midi) over bluetooth, bluetooth seems to introduce a lag and playing the instrument while listening on a bluetooth headset was not practical. Therefore I would imagine the same would go for MIDI over bluetooth. Since MIDI is real time critical you may be unhappy with the result so my gut feeling is that you may be wasting your time. Rod


 
Posted : 05/04/2019 11:36 am
Fuegovic
Posts: 1
New Member
 

It is easy to do with serial midi if available. With usb host it would probably be much harder.

I made a couple of adapters serial midi to BLE using an ESP32. Super easy, it only takes 4 wires a couple of line of codes with the midi pipe function of the "control surface" library.

The latency is minimal when I use it to play on my iPad, it's barely noticeable.

I posted the code on the control surface library github page if anyone is interested:

Easy DIN5 MIDI (Serial MIDI) to MIDI BLE on ESP32


 
Posted : 05/12/2020 8:41 pm
Jürg
Posts: 18
Eminent Member
 

A ESP32 / BLE example:

#include
#include

void setup()
{
pinMode(17, OUTPUT);
pinMode(16, INPUT);
pinMode(2, OUTPUT); // grün
pinMode(4, OUTPUT); // rot
Serial.begin(115200);
Serial2.begin(31250, SERIAL_8N1);
BLEMidiServer.begin("Basic Midi device");

Serial.println("setup");
}

bool blink = false;
unsigned long red = 0;
unsigned long green = 0;
unsigned long ms = 0;
bool connected = false;

void loop()
{
ms = millis();
//digitalWrite(4, !red);
if (ms >= green || ms + 100 < green)
green = 0;
digitalWrite(2, !green);
digitalWrite(4, BLEMidiServer.isConnected());

if (BLEMidiServer.isConnected() != connected)
{
if (connected)
Serial.println("wifi connection is broken");
else
Serial.println("wifi is connected");
connected = !connected;
/*
BLEMidiServer.noteOn(0, 69, 127);
delay(1000);
BLEMidiServer.noteOff(0, 69, 64);
delay(1000);
*/
}

while (Serial2.available())
{
// im 250 ms Takt wird 0xFE gelesen (active sensing)
char ch = Serial2.read();
Serial2.print(ch);
//Serial.println(ch, HEX);
green = millis() + 2;
}
}


 
Posted : 15/04/2021 11:38 pm
Joseph
Posts: 4
New Member
 

check this video, maybe it will help u)


 
Posted : 21/04/2021 10:40 pm
paul
 paul
Posts: 2
New Member
 

You can build one with a Raspberry Pi Pico W and a few connectors. Project details here: https://github.com/rppicomidi/ble-midi2usbhost


 
Posted : 26/07/2023 8:38 am
Share: