TERA WORKS

BLE MIDI MODULE / FIRMWAREOBJECT / FIRMWARE · 2026

Tera
BLE MIDI

4本の線で、
BLE MIDIに。

UART ⇄ BLE MIDI / PERIPHERAL

  1. MAIN MCUUART MIDI / RX・TX
  2. ESP32-SOLO-1Tera BLE MIDI
  3. BLE MIDI HOSTiOS / macOS など

3.3V / GND / RX / TX — 8N1

PROJECT INFO

YEAR
2026
TYPE
BLE MIDIファームウェア
ROLE
ファームウェア
TECH
ESP32-SOLO-1 / ESP-IDF / NimBLE
STATUS
コード公開

4 WIRES.BLE MIDI.

UART MIDI ⇄ BLE MIDI

OVERVIEW

何を作った?

UART MIDIとBLE MIDIを双方向に変換する、ESP32-SOLO-1用のファームウェアです。MIDIを扱うマイコンにUARTでつなぎ、BLE MIDI機器として使います。

通常利用は3.3V・GND・RX・TXの4線だけ。画面やボタンは持たず、iOS / macOSなどのBLE MIDI Host側から接続します。BLE MIDI to DINとは別のファームウェアです。

WHY

手持ちの機器も、自作のコントローラーも。

既存の機器をBLE MIDIに対応させること、そして自作のコントローラーにBLE MIDIを組み込むことが目的です。

BLE MIDI to DINと同じく、余っていたESP32-SOLO-1を使い切ることも狙いにしています。

FEATURES

小さなモジュールに、必要なことだけ。

  • UART → BLE、BLE → UARTの双方向変換
  • MIDIの専用SysExでBLE名を変更し、本体に保存(初期名 ESP MIDI)
  • UARTの通信速度を自動判定(31250 / 115200 / 230400 / 38400 / 57600 baud)
  • 任意で付けられるステータスLED(待機・接続・送受信を点滅のパターンで表示)
  • 追加の外部ライブラリなし(ESP-IDF同梱のNimBLEを使用)

LATENCY

接続間隔を詰めて、遅延を減らす。

AVERAGE / 7.5 ms CONNECTION6.5
ms 平均メッセージの完成から、受信側のUART FIFOに入るまで
95TH PERCENTILE9.6
ms同じ条件の95%点・1,000件で欠落0
BEFORE / 15 ms CONNECTION10.9
ms 平均接続間隔15msのときの値

ESP32同士・31250 bpsの内部UARTループバック条件での実測です(SOLO-1とWROOM-32で各1,000件)。実際の接続間隔は接続相手のHostによって決まり、7.5msが受け入れられるとは限りません。

WIRING

4本の線でつなぐ。

3V3
安定した3.3V電源
GND
メインのマイコンと共通GND
RX(GPIO16)
メインのマイコンのTXへ
TX(GPIO17)
メインのマイコンのRXへ

3.3V CMOS UART / 8N1。DIN端子へ直接つなぐための回路ではありません。

SPECS

主な仕様

対応モジュール
ESP32-SOLO-1
役割
BLE MIDI Peripheral(接続1台)
UART
3.3V CMOS / 8N1 / 速度を自動判定
BLE名
ESP MIDI(MIDIで変更可)
開発
ESP-IDF v6.1 / C / NimBLE
バージョン
v1.2.0

消費電力は未実測です。iOS / macOSなどでの継続動作、外部DIN回路は未検証です(READMEの記載より)。