I have set up a project with the HIDEmuKbrd as a basis. The device acts as a peripheral and uses a MITM passcode to make a secure link. The device transmits packets by HID-over-GATT. It works consistently well with iOS.
I am hitting an issue repeatedly where if I pair it to an OSX computer, I get serious lag periodically. Using an OSX packet sniffer I can see that the computer is timing out on HCI events sent by the computer/host.
The HCI events correlated with the lag are:
1. FD4C Set extended scan response data
2. FD4D Set extended advertising enable
3. FD4B Set extended advertising data
4. FD4A Set extended advertising parameters
5. 2005 LE set random address
Using the TI Packet Sniffer software (see attached records of 10x trials) I can see FCE errors that seem to correspond with the HCI events and lag.
I need feedback on these questions:
1. What is this FCE error?
2. How do we prevent this FCE error?
3. What do those HCI commands mean?
4. Why might these HCI commands cause a timeout?
5. Can this be resolved by changing connection parameters so the host does not send these messages?
6. Is there a way to set up the CC2541 to respond to these events as the host expects?