Part Number: CC2642R-Q1
We are investigating a BLE Secure Connections issue observed on a CC2642-Q1 device
.
During the pairing process, the HCI commands HCI_LE_READ_LOCAL_P256_PUBLIC_KEY
(0x2025) and HCI_LE_GENERATE_DHKEY (0x2026) complete successfully; however, the overall pairing procedure eventually fails with SMP_PAIRING_FAILED_UNSPECIFIED (0x08).
To further isolate the issue, we bypassed the BLE stack and tested the cryptographic operation directly using ECDH_computePublicKey() with a fixed 32-byte private key via CryptoKeyPlaintext_initKey().
On multiple known-good boards, the ECDH computation consistently produces the same correct P-256 public key across runs and resets. However, on a specific unit, incorrect public key values are observed. Additionally, the faulty device produces different incorrect public keys from time to time for the same input, while the function still returns ECDH_STATUS_SUCCESS.
This is the first time we have encountered such a behavior in our system.
We would like to ask:
- What internal mechanisms within the PKA engine could result in
ECDH_computePublicKey()completing successfully while still producing corrupted or non-deterministic public key output? - What additional diagnostic methods or test procedures would you recommend to further isolate this issue at the hardware or driver level?