fix: add adv->setName, add periodic health check to diagnose invisible BLE device
This commit is contained in:
@@ -95,6 +95,7 @@ bool BleMidiTransport::begin() {
|
|||||||
NimBLEAdvertising* adv = NimBLEDevice::getAdvertising();
|
NimBLEAdvertising* adv = NimBLEDevice::getAdvertising();
|
||||||
adv->addServiceUUID(BLE_MIDI_SERVICE_UUID);
|
adv->addServiceUUID(BLE_MIDI_SERVICE_UUID);
|
||||||
adv->setScanResponse(true);
|
adv->setScanResponse(true);
|
||||||
|
adv->setName("JOC Midi");
|
||||||
adv->start();
|
adv->start();
|
||||||
|
|
||||||
initialized = true;
|
initialized = true;
|
||||||
@@ -104,6 +105,13 @@ bool BleMidiTransport::begin() {
|
|||||||
|
|
||||||
void BleMidiTransport::update() {
|
void BleMidiTransport::update() {
|
||||||
client_connected = device_connected;
|
client_connected = device_connected;
|
||||||
|
static unsigned long last_report = 0;
|
||||||
|
if (millis() - last_report > 15000) {
|
||||||
|
last_report = millis();
|
||||||
|
NimBLEAdvertising* adv = NimBLEDevice::getAdvertising();
|
||||||
|
Serial.printf("[BLE] Health: connected=%d advertising=%d initialized=%d\n",
|
||||||
|
device_connected, adv ? adv->isAdvertising() : 0, initialized);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void BleMidiTransport::on_midi_receive(std::function<void(const MidiEvent&)> callback) {
|
void BleMidiTransport::on_midi_receive(std::function<void(const MidiEvent&)> callback) {
|
||||||
|
|||||||
Reference in New Issue
Block a user