This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2541 and incorporating a long processing event

Other Parts Discussed in Thread: CC2541, CC2640

Hi,

I'm new to BLE programming and the CC2541, and don't know what I don't know, hoping to get some advice.

I'm trying to interface some electronics to the CC2541, but the communication event overall takes up to 40ms. I was hoping to have a BLE connection between and iOS/Android device and occasionally invoke the 40ms scan of the electronics then report the results. There are critical sections of 6ms and 10ms at the beginning and end, but in between, I could potentially free up the 8051 for bg tasks.

  • Right now I'm having issues with getting the correct response from the electronics, and am wondering if it is possible the OSAL/BLE is interrupting? I have disabled interrupts in the critical sections, w/HAL_ENTER_CRITICAL_SECTION( intState ); but not sure if there is something I'm missing.
  • Are there connection parameter requirements I should watch out for (for connection dropping, etc)?

  • Hi Danny,

    Welcome to BLE! I'm not sure about your processing requirements, but have you considered using the CC2640 for your application? The Cortex-M3 has improved processing capability over the 8051 in the CC2541. Also, the RTOS is well suited for bg processing.

    In terms of holding off interrupts for an extended period, that will most likely cause timing issues with the BLE interface. Also, you didn't mention what peripheral you are using to interface to your ext HW.

    If you are intending to operate with an iOS device, you should review Apple's Bluetooth Accessory Design Guidelines document.

    Best wishes