Could you share a short snip to reproduce your problem?
My host software sends HCI reset to Cybt-423028-eval controller.
My host software sends HCI simple pair enable(write simple pairing mode) to Cybt-423028-eval controller.
My host software sends HCI write connection acception timeout(value is 0x7E80) to Cybt-423028-eval controller.
My host software sends HCI write scan enable to Cybt-423028-eval controller.
By the way, Cybt-423028-eval controller recived these four HCI commads successfully.
My phone Bluetooth find the Cybt-423028-eval, and then sends the connection req to Cybt-423028-eval controller.
connection setup coomplete.
From my host software log, host doesn't receive the HCI_IO_Capability_Request event from the Cybt-423028-eval controller, so can't send the HCI_IO_Capability_Request_Reply command to Cybt-423028-eval controller.
If I force my host software to send the HCI_IO_Capability_Request_Reply command to Cybt-423028-eval controller when my host software doesn't receive the the HCI_IO_Capability_Request event from the Cybt-423028-eval controller.
it is can work.
What's the platform for your host MCU?
What's the stack that runs on your host MCU? Why don't you run the device in MCU mode?
You are right, My host MCU platform is FPGA board, my host communicate with Crypress by HCI UART.
My host is BT version 5.1.
I think Crypress should be support this method. However the pair routine is fail.