Take a look at the following sample application: /WICED-Smart-SDK/Apps/puart_control
I believe this provides an example of what you are trying to accomplish.
There is @puart_control AppNote in the SDK as well under /WICED-Smart-SDK/Apps/puart_control/PUART-Control.pdf
If you're attempting to set these up simultaneously you'll run into problems. UART protocol doesn't support multi-slave implementations.
1. For PUART traces, insert in your APLLICATION_INIT() after bleapp_set_cfg:
Ensure that your pin numbers are properly configured in the puart_cfg table:
// Following structure defines UART configuration
const BLE_PROFILE_PUART_CFG wiced_sense_puart_cfg =
/*.baudrate =*/ 115200,
/*.txpin =*/ GPIO_PIN_UART_TX,
/*.rxpin =*/ GPIO_PIN_UART_RX,
2 .PUART Communication with other MCU:
As mwf_mmfae, said the puart_control app in the SDK demonstrate an extremely detailed interface.
For a more basic understanding of PUART implementation see: Connecting an external board to the BCM2073X via the PUART.
The HCI UART for all intents and purposes is a programming interface only. You can also route debug traces to the HCI UART per the instructions in the WICED Smart Quick Start Guide (SDK 2.x and TAG4 Board), but again, if you application requires some form of UART access, only the peripheral UART is available to the application.