remove setName and health check (caused crashes), add isAdvertising() check
This commit is contained in:
@@ -95,9 +95,14 @@ 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();
|
||||||
|
|
||||||
|
if (adv->isAdvertising()) {
|
||||||
|
Serial.println("[BLE] Advertising confirmed started");
|
||||||
|
} else {
|
||||||
|
Serial.println("[BLE] WARNING: isAdvertising() reports false!");
|
||||||
|
}
|
||||||
|
|
||||||
initialized = true;
|
initialized = true;
|
||||||
Serial.println("[BLE] BLE MIDI advertising as 'JOC Midi'");
|
Serial.println("[BLE] BLE MIDI advertising as 'JOC Midi'");
|
||||||
return true;
|
return true;
|
||||||
@@ -105,15 +110,6 @@ bool BleMidiTransport::begin() {
|
|||||||
|
|
||||||
void BleMidiTransport::update() {
|
void BleMidiTransport::update() {
|
||||||
client_connected = device_connected;
|
client_connected = device_connected;
|
||||||
static unsigned long last_health = 0;
|
|
||||||
if (millis() - last_health > 30000) {
|
|
||||||
last_health = millis();
|
|
||||||
NimBLEAdvertising* adv = NimBLEDevice::getAdvertising();
|
|
||||||
if (adv && !adv->isAdvertising()) {
|
|
||||||
Serial.println("[BLE] Restarting advertising...");
|
|
||||||
adv->start();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
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