h2zero / NimBLE-Arduino

A fork of the NimBLE library structured for compilation with Arduino, for use with ESP32, nRF5x.
https://h2zero.github.io/NimBLE-Arduino/
Apache License 2.0
670 stars 138 forks source link

device is easily disconnected,Not with ESP32's own library #604

Closed hzhh110 closed 7 months ago

hzhh110 commented 7 months ago

Do not know how, the device is easily disconnected by itself, my device needs to communicate for a long time

void initBLE(const char *name) { DebugPrint("initBLE"); DebugPrintln(name); BLEDevice::init(name);

if isESP32 | kIsUseNimBle

NimBLEDevice::setPower(ESP_PWR_LVL_P7,ESP_BLE_PWR_TYPE_DEFAULT);

else

// #if isESP32_C3 NimBLEDevice::setPower(ESP_PWR_LVL_P18,ESP_BLE_PWR_TYPE_DEFAULT);

endif

_pServer = NimBLEDevice::createServer();

_pServer->setCallbacks(new MyServerCallbacks()); NimBLEService *pService = _pServer->createService(SERVICE_UUID); pTXCharacteristic = pService->createCharacteristic(CHARACTERISTIC_UUID_TX, NIMBLE_PROPERTY::NOTIFY); pTXCharacteristic->addDescriptor(new NimBLE2904()); pRXCharacteristic = pService->createCharacteristic(CHARACTERISTIC_UUID_RX, NIMBLE_PROPERTY::WRITE); pRXCharacteristic->setCallbacks(new MyCallbacks()); pService->start(); _pServer->getAdvertising()->start();

}