Skip to content

Commit babba1e

Browse files
authored
feat(ble): Update esp-nimble-cpp to latest upstream for API refactor (#347)
* feat(ble): Update esp-nimble-cpp to latest upstream for API refactor * Update esp-nimble-cpp submodule to latest `main` which matches upstream * Update `ble_gatt_server`, `gfps_server`, components * Update affected examples * fix: use `getPeerInfoByHandle` which is what `getPeerIDInfo` was renamed to
1 parent 914e0b5 commit babba1e

File tree

8 files changed

+30
-24
lines changed

8 files changed

+30
-24
lines changed

components/ble_gatt_server/example/main/ble_gatt_server_example.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ extern "C" void app_main(void) {
4141
.confirm_passkey_callback =
4242
[&](const NimBLEConnInfo &conn_info, uint32_t passkey) {
4343
logger.info("Confirming passkey: {}", passkey);
44-
NimBLEDevice::injectConfirmPIN(conn_info,
45-
passkey == NimBLEDevice::getSecurityPasskey());
44+
NimBLEDevice::injectConfirmPasskey(conn_info,
45+
passkey == NimBLEDevice::getSecurityPasskey());
4646
},
4747
});
4848
ble_gatt_server.init(device_name);

components/ble_gatt_server/include/ble_gatt_server.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -502,7 +502,7 @@ class BleGattServer : public BaseComponent {
502502
std::vector<NimBLEAddress> connected_addresses;
503503
auto peer_ids = server_->getPeerDevices();
504504
for (const auto &peer_id : peer_ids) {
505-
auto peer = server_->getPeerIDInfo(peer_id);
505+
auto peer = server_->getPeerInfoByHandle(peer_id);
506506
connected_addresses.push_back(peer.getAddress());
507507
}
508508
return connected_addresses;
@@ -518,7 +518,7 @@ class BleGattServer : public BaseComponent {
518518
std::vector<NimBLEConnInfo> connected_devices_info;
519519
auto peer_ids = server_->getPeerDevices();
520520
for (const auto &peer_id : peer_ids) {
521-
auto peer = server_->getPeerIDInfo(peer_id);
521+
auto peer = server_->getPeerInfoByHandle(peer_id);
522522
connected_devices_info.push_back(peer);
523523
}
524524
return connected_devices_info;
@@ -579,7 +579,7 @@ class BleGattServer : public BaseComponent {
579579
std::vector<std::string> connected_device_names;
580580
auto peer_ids = server_->getPeerDevices();
581581
for (const auto &peer_id : peer_ids) {
582-
auto peer = server_->getPeerIDInfo(peer_id);
582+
auto peer = server_->getPeerInfoByHandle(peer_id);
583583
auto peer_name = get_connected_device_name(peer);
584584
if (!peer_name.empty()) {
585585
connected_device_names.push_back(peer_name);
@@ -635,7 +635,7 @@ class BleGattServer : public BaseComponent {
635635
std::vector<int> connected_device_rssi;
636636
auto peer_ids = server_->getPeerDevices();
637637
for (const auto &peer_id : peer_ids) {
638-
auto peer = server_->getPeerIDInfo(peer_id);
638+
auto peer = server_->getPeerInfoByHandle(peer_id);
639639
auto peer_rssi = get_connected_device_rssi(peer);
640640
connected_device_rssi.push_back(peer_rssi);
641641
}
@@ -654,7 +654,7 @@ class BleGattServer : public BaseComponent {
654654
std::vector<NimBLEAddress> disconnected_devices;
655655
auto peer_ids = server_->getPeerDevices();
656656
for (const auto &peer_id : peer_ids) {
657-
auto peer = server_->getPeerIDInfo(peer_id);
657+
auto peer = server_->getPeerInfoByHandle(peer_id);
658658
disconnected_devices.push_back(peer.getAddress());
659659
server_->disconnect(peer_id);
660660
}

components/ble_gatt_server/include/ble_gatt_server_callbacks.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ class BleGattServerCallbacks : public NimBLEServerCallbacks {
1717
virtual void onDisconnect(NimBLEServer *server, NimBLEConnInfo &conn_info, int reason) override;
1818
virtual void onAuthenticationComplete(NimBLEConnInfo &conn_info) override;
1919
virtual uint32_t onPassKeyDisplay() override;
20-
virtual void onConfirmPIN(NimBLEConnInfo &conn_info, uint32_t pass_key) override;
20+
virtual void onConfirmPassKey(NimBLEConnInfo &conn_info, uint32_t pass_key) override;
2121

2222
protected:
2323
friend class BleGattServer;

components/ble_gatt_server/src/ble_gatt_server.cpp

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ bool BleGattServer::start_advertising(const AdvertisingParameters &advertising_p
7575
// configure the advertising parameters
7676
advertising->setMinInterval(min_interval_units);
7777
advertising->setMaxInterval(max_interval_units);
78-
advertising->setScanResponse(advertising_params.scan_response);
78+
advertising->enableScanResponse(advertising_params.scan_response);
7979

8080
if (advertising_params.include_tx_power) {
8181
advertising->addTxPower();
@@ -90,20 +90,22 @@ bool BleGattServer::start_advertising(const AdvertisingParameters &advertising_p
9090
if (advertising_params.connectable) {
9191
if (advertising_params.directed_address) {
9292
// directed, connectable
93-
advertising->setAdvertisementType(BLE_GAP_CONN_MODE_DIR);
93+
advertising->setConnectableMode(BLE_GAP_CONN_MODE_DIR);
9494
} else {
9595
// undirected, connectable
96-
advertising->setAdvertisementType(BLE_GAP_CONN_MODE_UND);
96+
advertising->setConnectableMode(BLE_GAP_CONN_MODE_UND);
9797
}
9898
} else {
9999
// non-connectable
100-
advertising->setAdvertisementType(BLE_GAP_CONN_MODE_NON);
100+
advertising->setConnectableMode(BLE_GAP_CONN_MODE_NON);
101101
}
102102

103+
// set the callback
104+
advertising->setAdvertisingCompleteCallback(callbacks_.advertisement_complete_callback);
105+
103106
// now actually start advertising
104107
bool success =
105-
advertising->start(advertising_params.duration_ms, callbacks_.advertisement_complete_callback,
106-
advertising_params.directed_address);
108+
advertising->start(advertising_params.duration_ms, advertising_params.directed_address);
107109
if (!success) {
108110
logger_.error("Failed to start advertising");
109111
}
@@ -124,13 +126,17 @@ bool BleGattServer::start_advertising(uint32_t duration_ms, NimBLEAddress *direc
124126
// assume connectable
125127
if (directed_address) {
126128
// directed, connectable
127-
advertising->setAdvertisementType(BLE_GAP_CONN_MODE_DIR);
129+
advertising->setConnectableMode(BLE_GAP_CONN_MODE_DIR);
128130
} else {
129131
// undirected, connectable
130-
advertising->setAdvertisementType(BLE_GAP_CONN_MODE_UND);
132+
advertising->setConnectableMode(BLE_GAP_CONN_MODE_UND);
131133
}
132-
auto success =
133-
advertising->start(duration_ms, callbacks_.advertisement_complete_callback, directed_address);
134+
135+
// set the callback
136+
advertising->setAdvertisingCompleteCallback(callbacks_.advertisement_complete_callback);
137+
138+
// now actually start advertising
139+
auto success = advertising->start(duration_ms, directed_address);
134140
if (!success) {
135141
logger_.error("Failed to start advertising");
136142
}

components/ble_gatt_server/src/ble_gatt_server_callbacks.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,11 @@ uint32_t BleGattServerCallbacks::onPassKeyDisplay() {
6464
return NimBLEDevice::getSecurityPasskey();
6565
}
6666
}
67-
void BleGattServerCallbacks::onConfirmPIN(NimBLEConnInfo &conn_info, uint32_t pass_key) {
67+
void BleGattServerCallbacks::onConfirmPassKey(NimBLEConnInfo &conn_info, uint32_t pass_key) {
6868
if (server_ && server_->callbacks_.confirm_passkey_callback) {
6969
server_->callbacks_.confirm_passkey_callback(conn_info, pass_key);
7070
} else {
71-
NimBLEDevice::injectConfirmPIN(conn_info, pass_key == NimBLEDevice::getSecurityPasskey());
71+
NimBLEDevice::injectConfirmPasskey(conn_info, pass_key == NimBLEDevice::getSecurityPasskey());
7272
}
7373
}
7474

components/esp-nimble-cpp

Submodule esp-nimble-cpp updated 66 files

components/gfps_service/src/nearby_ble.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ void nearby_platform_SetRemotePasskey(uint32_t passkey) {
267267
// index)
268268
auto conn_info = NimBLEDevice::getServer()->getPeerInfo(0);
269269
// Now actually respond to the pairing request
270-
NimBLEDevice::injectConfirmPIN(conn_info, accept);
270+
NimBLEDevice::injectConfirmPasskey(conn_info, accept);
271271
#endif // CONFIG_BT_NIMBLE_ENABLED
272272
}
273273

components/hid_service/example/main/hid_service_example.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ extern "C" void app_main(void) {
4040
.confirm_passkey_callback =
4141
[&](const NimBLEConnInfo &conn_info, uint32_t passkey) {
4242
logger.info("Confirming passkey: {}", passkey);
43-
NimBLEDevice::injectConfirmPIN(conn_info,
44-
passkey == NimBLEDevice::getSecurityPasskey());
43+
NimBLEDevice::injectConfirmPasskey(conn_info,
44+
passkey == NimBLEDevice::getSecurityPasskey());
4545
},
4646
});
4747
ble_gatt_server.init(device_name);

0 commit comments

Comments
 (0)