55 if (!BLEDevice::init(localName))
return false;
57 BLEScan *p_scan = BLEDevice::getScan();
58 p_scan->setAdvertisedDeviceCallbacks(
this);
59 p_scan->setActiveScan(
true);
65 BLEScan *p_scan = BLEDevice::getScan();
66 if (!p_scan->isScanning()) {
69 p_scan->start(0,
nullptr,
false);
81 if (mtu > 0 && mtu < result) result = mtu;
94 p_client = BLEDevice::createClient();
99 LOGI(
"BLESerial: connecting to %s",
102 LOGE(
"BLESerial: connect failed");
108 BLERemoteService *p_remote_service =
110 if (p_remote_service ==
nullptr) {
118 LOGE(
"BLESerial: characteristics not found");
126 LOGW(
"BLESerial: audio info not supported by server");
132 LOGI(
"BLESerial: connected with mtu %d",
getMTU());
149 int len = str.length();
150 if (len > maxLen) len = maxLen;
151 memcpy(data, str.c_str(), len);
170 return str.length() > 0;
182 void onResult(BLEAdvertisedDevice advertisedDevice)
override {
183 if (advertisedDevice.haveServiceUUID() &&
184 advertisedDevice.isAdvertisingService(
190 BLEDevice::getScan()->stop();
195 uint8_t *data,
size_t length,
bool isNotify) {
198 if (self !=
nullptr && characteristic == self->
info_char) {
#define LOGW(...)
Definition AudioLoggerIDF.h:29
#define TRACEI()
Definition AudioLoggerIDF.h:32
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define LOGE(...)
Definition AudioLoggerIDF.h:30