cancel
Showing results for 
Search instead for 
Did you mean: 

WICED Studio Wi-Fi Combo

Anonymous
Not applicable

Hi..

I had been using SDK-2.4.0 and recently I changed to SDK-2.4.1. I tried to run the UART receive program which I wrote in SDK-2.4.0 in the new SDK. The program worked fine in SDK-2.4.0 but it is not working properly in 2.4.1. The wiced_uart_receive_bytes() function always return WICED_ERROR.

This is my function call.

result = wiced_uart_receive_bytes( WICED_SELECTED_UART, receiveData, RX_BUFFER_SIZE ,receiveTimeOut);

when I checked the receiveData, it has received the data correctly. But still the function returns WICED_ERROR.

I went inside the function definition in

WICED-SDK-2.4.1/Wiced/Platform/common/ARM_Cortex_M3/STM32F2xx/stm32f2xx_platform.c

And found a line in platform_uart_receive_bytes() function.

uart_interfaces[uart].rx_dma_result = WICED_ERROR;


if ( timeout > 0 )

{

      host_rtos_get_semaphore( &uart_interfaces[uart].rx_complete, timeout, WICED_TRUE );

      return uart_interfaces[uart].rx_dma_result;

}

I suspected "return uart_interfaces[uart].rx_dma_result" is always returning WICED_ERROR and when I commented it, the program is working fine.

In SDK-2.4.0, this line is not present (I compared this file with previous version).

Am I missing something ? Please help me. My eval board has BCM943362WCD4.

0 Likes
2 Replies
MuOr_1658816
Contributor

I think rx_dma_result is assigned from an interrupt. It is just setting the default value.

We are using SDK 2.4.1 with uart to talk to another device. It is working fine for us.

Anonymous
Not applicable

ok Thanks . I will try with some other examples and keep u posted.

0 Likes