I am using the nRF Connect 3.6.0 Bluetooth Low Energy app v2.4.2 on MacOS. When I pair and bond with my device it works fine. I can disconnect and connect in the same session, and nRF Connect remembers the device (and the device has stored its bonding info too with the peer manager) and establishes an unauthenticated (by design) encrypted connection. But if I close nRF Connect, it loses the bonding information. When I restart it, the device remembers it from its bonding table, but nRF Connect does not, and does not try to establish an encrypted connection.
I have verified this with Wireshark. Everything looks fine after initial bonding as long as I don't close nRF Connect. I can disconnect and reconnect, and every time the master (nRF Connect) will send an LL_ENC_REQ packet to start the process of changing to an encrypted link. But if I close and reopen nRF Connect, it never sends the LL_ENC_REQ, as if its bonding table has been erased.
Where are nRF Connect's bonds stored? I can't find a file like this in the Application Support folder (where the log uuid_definitions.json file are stored). Are they on the scanning device (in this case an nRF52840 dongle)? Why are they not persistent, or are they not stored anywhere?