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.

CC2640: Data Length Extension support on an external host

Part Number: CC2640
Other Parts Discussed in Thread: CC2564C, , , CC2642R

I am re-spinning a system that currently is using the cc2564C, connected to an external host that is running a BLE stack.  We are trying to increase throughput on the BLE connection, and at this point I think our best option is enabling Data Length Extension (DLE) on our BLE device.  Unfortunately, the cc2564C does not support Data Length Extension.  I've noticed that many of the SimpleLink devices do support DLE, but from what I can find are incapable of running with an external host's BLE stack, and must use custom TI HCI commands instead.  Given that I cannot modify the underlying software architecture to use TI's custom commands, is there a device and/or method to add DLE support to my system?  Is there any software available (or is it even possible) that would turn a chip like the cc2640 into a controller-only device that accepts normal Bluetooth HCI commands?

I understand that running the Bluetooth stack on the MCU would be optimal for performance, as it takes processing load off of the host, but in this case the host is powerful enough to where running the BLE stack has a negligible performance impact.

I'm also not even sure if this is a good question - it seems like most vendor's BLE devices now have an integrated MCU, so maybe I'm missing something here.

Thanks!

  • Hi Joel,

    I have quite a few remarks on your question:

    - DLE can be activated through HCI commands. You may be interested by the following commands: HCI_LE_ReadSuggestedDefaultDataLenCmd(), HCI_LE_WriteSuggestedDefaultDataLenCmd(), HCI_LE_ReadMaxDataLenCmd(), HCI_LE_SetDataLenCmd()

    - In your case, you should look into the NPI (Network Processor Interface).

    - TI does not provide the possibility to use only the controller of the BLE stack. That being said, there is no need to have a controller-only device to activate DLE.

    - If it was not clear, the CC2640 / CC2640R2F has an integrated MCU (Cortex M3). You could also look into the CC2642R (with an integrated Cortex M4F).

    Don't hesitate to come back with some followup questions!

    Best regards,

  • Okay, all of that makes sense.  In this particular situation, I don't have the ability to move away from our current host-controller implementation (software interfacing with the host portion of the BLE stack is already [mostly] locked down), so our only real option is to migrate to a controller that implements DLE.  If I were designing this from the ground up I would absolutely have gone the route you are suggesting, implementing the NPI as our interface to the BLE device.

    Thank you for confirming TI parts cannot be used as controller-only, that answers my original question.