5 Replies Latest reply on Sep 7, 2017 1:59 PM by e.pratt_1639216

    BLE stack issuing permanent CYBLE_EVT_STACK_BUSY_STATUS

    bobcat_1857246

      I have a BLE project that communicates with a MAC OS using the BLE MIDI protocol. I have had this working for several years on the Broadcom (now Cypress) CYW20737S, but I'm porting it to the PROC CYBLE-012011-00. I stress this, to show that I trust the client implementation in the MAC OS.

       

      The PROC device is configured to transmit every half second for testing. On the PROC device, after 5 or 10 minutes of operation, the AppCallBack() is called with event CYBLE_EVT_STACK_BUSY_STATUS, and eventParam 0x01, but the stack then never makes a corresponding CYBLE_EVT_STACK_BUSY_STATUS with eventParam 0.

       

      Once in this busy state, my calls to CyBle_GattsNotification() (every half second) return CYBLE_ERROR_INVALID_OPERATION.

      The only way I can find to get out of this state, is from the MAC to disconnect and reconnect the BLE.

       

      Again, I stress that on the CYW20737S implementation it will run forever with no issues, so I trust the MAC client.

       

      What would make the BLE stack permanently become busy, and how can I fix it?