Control Surface stm32
MIDI Control Surface library for Arduino
midi-mtu.c
Go to the documentation of this file.
1#ifdef ESP32
2
10#include "midi-private.h"
11#include "logging.h"
12
13static midi_mtu_callback_t midi_mtu_callback = NULL;
14static uint16_t midi_mtu = 0;
15
16void midi_set_mtu_callback(midi_mtu_callback_t cb) { midi_mtu_callback = cb; }
17
18void midi_handle_mtu_event(esp_gatt_if_t gatts_if,
19 esp_ble_gatts_cb_param_t *param) {
20 midi_mtu = param->mtu.mtu;
21 ESP_LOGI("MIDIBLE", "MTU: %d", midi_mtu);
22 if (midi_mtu_callback) {
23 midi_mtu_callback(midi_mtu);
24 }
25}
26
27uint16_t midi_get_mtu(void) { return midi_mtu; }
28
29#endif
Declarations of internal functions for the MIDI over BLE system, used in the midi-*....
void midi_handle_mtu_event(esp_gatt_if_t gatts_if, esp_ble_gatts_cb_param_t *param)
void midi_set_mtu_callback(midi_mtu_callback_t cb)
Set the callback that is to be called when the MTU negotiation with the BLE client is finished.
void(* midi_mtu_callback_t)(uint16_t)
Type for the MTU negotiation callback.
Definition: midi.h:20
uint16_t midi_get_mtu(void)
Get the current MTU (maximum transmission unit) of the link with the BLE client.