Other Parts Discussed in Thread: CC2650
Hello,
I have an issue whilst I am attempting to implement UART interface within Texas Instruments SimpleLink™
Bluetooth® low energy CC2640 wireless MCU software development kit (ver. ble_cc26xx_2_01_00_44423)
over TI RTOS (ver. 2_13_00_06) with CCS IDE Version: 6.1.0.00104.
The issue is related to the POWER_SAVING mode. Currently I am able to work friendly without this option.
It means that I cannot work in power saving energy mode whilst the device is waiting UART interrupts.
Currently I am using the TL module that is based on NPI protocol. Whilst it works friendly without POWER_SAVING
option it does not work as expected in low energy mode. From my last test it starting exchanging few bytes and then
cannot receive data from remote host (e.g. PC).
The original TL TI source code gives issue with the POWER_SAVING option. So, whilst I need to use a custom
handshaking I realized that the TL module use the saving mode to handle MRDY and SRDY for handshaking purpose
as explained in Adding Serial Communication to a BLE Project. Then I changed the POWER_SAVING option to
POWER_SAVING_UART just to do not use the handshaking functionality. So, after this change now in saving mode
(i.e. using POWER_SAVING predefined flag) I can receive bytes through the UART without activate any SRDY/MRDY control
BUT whilst I transmit first byte to the host then after I cannot receive anymore data from there.
This behaviour looks like original issue in different way. No solution?
How to work with the UART including POWER_SAVING mode? This is equivalent to say, could I work with BLE project
in low power mode without using:
Power_setConstraint(Power_SB_DISALLOW);
Power_setConstraint(Power_IDLE_PD_DISALLOW);
Whilst I gave a look through E2E forum I found that this issue is reported many times
from users.
Here two TI projects available on wiki that confirm the issue:
1) CC2640 NPI UART ECHO EXAMPLE
"Also make sure POWER_SAVINGS is disabled in preprocessor to communicate with the PC terminal."
It means that NPI do not works in low power mode?
I gave a look to this TI proposal. So, I downloaded the source code (Software patch: http://www.ti.com/lit/zip/tidcac1) and
imported in CCS. I checked the POWER_SAVING as expected in the project properties and I found only the option "xPOWER_SAVING".
This means that this proposal has the same issue in low power mode. The xPOWER_SAVING predefined option is there only to skip the
UART issue in POWER SAVING mode?
Welcome any TI proposal.
Thanks
Alex