All Projects → lathoub → Arduino-BLE-MIDI

lathoub / Arduino-BLE-MIDI

Licence: MIT license
MIDI over Bluetooth Low Energy (BLE-MIDI) 1.0 for Arduino

Programming Languages

C++
36643 projects - #6 most used programming language
shell
77523 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Arduino-BLE-MIDI

ESP32BleAdvertise
Simple library for BLE advertise using ESP32 in Arduino
Stars: ✭ 39 (-70.68%)
Mutual labels:  esp32, ble, arduino-library, bluetooth-low-energy
ESP32 BLE OTA Arduino
OTA update on ESP32 via BLE
Stars: ✭ 41 (-69.17%)
Mutual labels:  esp32, ble, bluetooth-low-energy
Watchy
Watchy - An Open Source E-Ink Smartwatch
Stars: ✭ 469 (+252.63%)
Mutual labels:  esp32, arduino-library, bluetooth-low-energy
Esp32 ble wedo
A library to control LEGO wedo 2.0 with the ESP32 through Bluetooth low energy
Stars: ✭ 16 (-87.97%)
Mutual labels:  esp32, ble, bluetooth-low-energy
arduino-ble-gadget
Create your own Do-It-Yourself BLE enabled sensor gadget on the ESP32 platform.
Stars: ✭ 31 (-76.69%)
Mutual labels:  esp32, ble, arduino-library
Pedalinomini
Same features of Pedalino™ in a compact form.
Stars: ✭ 139 (+4.51%)
Mutual labels:  midi, esp32, ble
Esp32 Ble Keyboard
Bluetooth LE Keyboard library for the ESP32 (Arduino IDE compatible)
Stars: ✭ 533 (+300.75%)
Mutual labels:  esp32, ble, arduino-library
Nimble Arduino
A fork of the NimBLE library structured for compilation with Ardruino, designed for use with ESP32.
Stars: ✭ 108 (-18.8%)
Mutual labels:  esp32, ble, bluetooth-low-energy
Control Surface
Arduino library for creating MIDI controllers and other MIDI devices.
Stars: ✭ 377 (+183.46%)
Mutual labels:  midi, esp32, arduino-library
Esp32 Ble Mouse
Bluetooth LE Mouse library for the ESP32 (Arduino IDE compatible)
Stars: ✭ 180 (+35.34%)
Mutual labels:  esp32, ble, arduino-library
Arduino Applemidi Library
Send and receive MIDI messages over Ethernet (rtpMIDI or AppleMIDI)
Stars: ✭ 177 (+33.08%)
Mutual labels:  midi, esp32, arduino-library
Arduino-USBMIDI
Allows a microcontroller, with native USB capabilities, to appear as a MIDI device over USB to a connected computer
Stars: ✭ 98 (-26.32%)
Mutual labels:  midi, arduino-library, arduino-midi-library
H.E.L.P.
Home Environment Locating People 🍍
Stars: ✭ 19 (-85.71%)
Mutual labels:  ble, bluetooth-low-energy
gfx demo
GFX Demo for Arduino and the ESP-IDF
Stars: ✭ 63 (-52.63%)
Mutual labels:  esp32, arduino-library
telnetspy
Telnet Server For ESP8266: Cloning the serial port via Telnet. "Debugging over the air"
Stars: ✭ 41 (-69.17%)
Mutual labels:  esp32, arduino-library
BLELib
This library contains many of the features you need to interact with BLE peripherals
Stars: ✭ 21 (-84.21%)
Mutual labels:  ble, bluetooth-low-energy
MySQL MariaDB Generic
This MySQL_MariaDB_Generic library helps you connect your boards directly to a MySQL / MariaDB server, either local or cloud-based, so that you can store / retrieve data to / from the server. Supported boards are ESP8266/ESP32, WT32_ETH01 (ESP32 + LAN8720A), nRF52, SAMD21/SAMD51, STM32F/L/H/G/WB/MP1, Teensy, SAM DUE, Mega, RP2040-based boards, P…
Stars: ✭ 35 (-73.68%)
Mutual labels:  esp32, rp2040
blatann
Python BLE library for the Nordic nRF52 connectivity firmware
Stars: ✭ 44 (-66.92%)
Mutual labels:  ble, bluetooth-low-energy
awesome-bluetooth-security
List of Bluetooth BR/EDR/LE security resources
Stars: ✭ 220 (+65.41%)
Mutual labels:  ble, bluetooth-low-energy
Pixie Chroma
Arduino library and documentation for Pixie Chroma displays!
Stars: ✭ 33 (-75.19%)
Mutual labels:  esp32, arduino-library

Arduino BLE-MIDI Transport

arduino-library-badge

This library implements the BLE-MIDI transport layer for the FortySevenEffects Arduino MIDI Library

Installation

This library depends on the Arduino MIDI Library.

When installing this library from the Arduino IDE, the dependency be downloaded and installed in the same directory as this library. (Thanks to the depends clause in library.properties)

When manually installing this library, you have to manually download Arduino MIDI Library from github and install it in the same directory as this library - without this additional install, this library will not be able to compile.

When using ESP32 consider using NimBLE (NimBLE-Arduino). When using the Arduino NANO 33 BLE or Arduino NANO RP2040 Connect, you must install ArduinoBLE

Usage

Basic / Default

#include <BLEMIDI_Transport.h>
#include <hardware/BLEMIDI_ESP32.h>
...
BLEMIDI_CREATE_DEFAULT_INSTANCE()
...
void setup()
{
   MIDI.begin();
...
void loop()
{
   MIDI.read();

will create a instance named BLEMIDI and listens to incoming MIDI.

using NimBLE for ESP32 with a custom name and turns LED on when its connected

#include <BLEMIDI_Transport.h>
#include <hardware/BLEMIDI_ESP32_NimBLE.h>
...
BLEMIDI_CREATE_INSTANCE("CustomName", MIDI)
...
void setup()
{
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, LOW);

  BLEMIDI.setHandleConnected(OnConnected);
  BLEMIDI.setHandleDisconnected(OnDisconnected);
  
  MIDI.begin();
...
void loop()
{
  MIDI.read();
...
void OnConnected() {
  digitalWrite(LED_BUILTIN, HIGH);
}

void OnDisconnected() {
  digitalWrite(LED_BUILTIN, LOW);
}
   

will create a instance named BLEMIDI and listens to incoming MIDI.

Tested boards/modules

  • ESP32 (OOB BLE and NimBLE)
  • Arduino NANO 33 BLE
  • Arduino NANO RP2040 Connect

Other Transport protocols:

The libraries below the same calling mechanism (API), making it easy to interchange the transport layer.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].