I have been developing a BLE based application on CSR1010 board. So far I was using 'DebugWriteStrings' and other related APIs to print messages on terminal application for debug purpose. But now as a project requirement, the device need to talk to an other device via Uart, for which I use 'UartWrite' and receive data in 'uartRxDataCallback' function.
I observed that now if I keep using 'DebugWritexxxxx' function calls, the other device doesn't respond for 'UartWrite' commands. Although, if I remove Debug related calls, and only use 'UartWrite' that too only to send command to that device, the device responds as per expectation. I do believe that since 'DebugWritexxx' functions also sends data via same Rx pin, I may only be able to use either of them (DebugWritexxx or UartWrite) in application. My questions are following:
1. Can we use both 'UartWrite' and 'DebugWritexxxx' related calls in same application, if yes then how should I initialize Uart? via DebugInit() by mentioning my 'uartrxDataCallback' function as uart_data_in_fn, or via UartInit() and printing my debug strings by UartWrite() api? or any other required approach?
2. If we can't use both, I will have to go with UartWrite() api and only to send command to my device. In that case, Is there any other way to print debug strings for debugging purspose (or to generate a log file). If not, any other way to debug my code? As the development is still undergoing and the issues arising are timing related, I will have to find some 'free running' way for debugging (i.e in addition to breakpoints approach).