mirror of
https://github.com/meshtastic/firmware.git
synced 2025-08-02 11:55:56 +00:00
nimble basically works now. Started long bake for bug #266
This commit is contained in:
parent
78ff9a8116
commit
9b4ca95660
@ -4,13 +4,10 @@ You probably don't care about this section - skip to the next one.
|
|||||||
|
|
||||||
Nimble tasks:
|
Nimble tasks:
|
||||||
|
|
||||||
- ble bonding is not being kept?
|
|
||||||
- restart advertising after client disconnects (confirm this works if client goes out of range)
|
- restart advertising after client disconnects (confirm this works if client goes out of range)
|
||||||
- make sleep work
|
- make sleep work
|
||||||
- check BLE handle stability
|
- check BLE handle stability
|
||||||
- apply nimble RPA patches
|
- started RPA long test, jul 22 6pm
|
||||||
- start RPA long test
|
|
||||||
- use a random pairing key rather than 123456
|
|
||||||
- implement nimble software update api
|
- implement nimble software update api
|
||||||
|
|
||||||
* update protocol description per cyclomies email thread
|
* update protocol description per cyclomies email thread
|
||||||
|
@ -448,13 +448,13 @@ void loopBLE()
|
|||||||
|
|
||||||
extern "C" void ble_store_config_init(void);
|
extern "C" void ble_store_config_init(void);
|
||||||
|
|
||||||
/// Print a macaddr - bytes are stored in reverse order
|
/// Print a macaddr - bytes are sometimes stored in reverse order
|
||||||
static void print_addr(const uint8_t v[])
|
static void print_addr(const uint8_t v[], bool isReversed = true)
|
||||||
{
|
{
|
||||||
const int macaddrlen = 6;
|
const int macaddrlen = 6;
|
||||||
|
|
||||||
for (int i = 0; i < macaddrlen; i++) {
|
for (int i = 0; i < macaddrlen; i++) {
|
||||||
DEBUG_MSG("%02x%c", v[macaddrlen - i], (i == macaddrlen - 1) ? '\n' : ':');
|
DEBUG_MSG("%02x%c", v[isReversed ? macaddrlen - i : i], (i == macaddrlen - 1) ? '\n' : ':');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -568,6 +568,13 @@ static int bleprph_gap_event(struct ble_gap_event *event, void *arg)
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
case BLE_GAP_EVENT_REPEAT_PAIRING:
|
case BLE_GAP_EVENT_REPEAT_PAIRING:
|
||||||
|
DEBUG_MSG("repeat pairing event; conn_handle=%d "
|
||||||
|
"cur_key_sz=%d cur_auth=%d cur_sc=%d "
|
||||||
|
"new_key_sz=%d new_auth=%d new_sc=%d "
|
||||||
|
"new_bonding=%d\n",
|
||||||
|
event->repeat_pairing.conn_handle, event->repeat_pairing.cur_key_size, event->repeat_pairing.cur_authenticated,
|
||||||
|
event->repeat_pairing.cur_sc, event->repeat_pairing.new_key_size, event->repeat_pairing.new_authenticated,
|
||||||
|
event->repeat_pairing.new_sc, event->repeat_pairing.new_bonding);
|
||||||
/* We already have a bond with the peer, but it is attempting to
|
/* We already have a bond with the peer, but it is attempting to
|
||||||
* establish a new secure link. This app sacrifices security for
|
* establish a new secure link. This app sacrifices security for
|
||||||
* convenience: just throw away the old bond and accept the new link.
|
* convenience: just throw away the old bond and accept the new link.
|
||||||
@ -695,9 +702,10 @@ static void on_sync(void)
|
|||||||
|
|
||||||
/* Printing ADDR */
|
/* Printing ADDR */
|
||||||
uint8_t addr_val[6] = {0};
|
uint8_t addr_val[6] = {0};
|
||||||
rc = ble_hs_id_copy_addr(own_addr_type, addr_val, NULL);
|
int isPrivate = 0;
|
||||||
|
rc = ble_hs_id_copy_addr(own_addr_type, addr_val, &isPrivate);
|
||||||
DEBUG_MSG("Device Address: ");
|
assert(rc == 0);
|
||||||
|
DEBUG_MSG("Addr type %d, Private=%d, Device Address: ", own_addr_type, isPrivate);
|
||||||
print_addr(addr_val);
|
print_addr(addr_val);
|
||||||
DEBUG_MSG("\n");
|
DEBUG_MSG("\n");
|
||||||
/* Begin advertising. */
|
/* Begin advertising. */
|
||||||
@ -776,8 +784,9 @@ void reinitBluetooth()
|
|||||||
ble_hs_cfg.sm_bonding = 1;
|
ble_hs_cfg.sm_bonding = 1;
|
||||||
ble_hs_cfg.sm_mitm = 1;
|
ble_hs_cfg.sm_mitm = 1;
|
||||||
ble_hs_cfg.sm_sc = 1;
|
ble_hs_cfg.sm_sc = 1;
|
||||||
ble_hs_cfg.sm_our_key_dist = 1;
|
// per https://github.com/espressif/esp-idf/issues/5530#issuecomment-652933685
|
||||||
ble_hs_cfg.sm_their_key_dist = 1;
|
ble_hs_cfg.sm_our_key_dist = BLE_SM_PAIR_KEY_DIST_ID | BLE_SM_PAIR_KEY_DIST_ENC;
|
||||||
|
ble_hs_cfg.sm_their_key_dist = BLE_SM_PAIR_KEY_DIST_ID | BLE_SM_PAIR_KEY_DIST_ENC;
|
||||||
|
|
||||||
// add standard GAP services
|
// add standard GAP services
|
||||||
ble_svc_gap_init();
|
ble_svc_gap_init();
|
||||||
|
Loading…
Reference in New Issue
Block a user