CYBLE-343072-EVAL-M2B PUART RX Not Working

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
JoOr_4004241
Level 3
Level 3
25 sign-ins 10 replies posted 5 replies posted

I'm trying to get the PUART working on my CYBLE-343072-EVAL-M2B board using the Hello Client sample application for that target board. My development system is Modus Toolbox v2.4.0. I retained the complete pin configuration that came with the Hello Client sample app.

I've attached the relevant PUART code. I am able to send data from the BLE module to a PC port monitor via this code: wiced_hal_puart_print("\nPUART initialized!"). However, any data typed at the PC port monitor is not received by the BLE module. I added code to the RX callback function to toggle an LED on the EVAL board but the LED remains off while I type characters at the PC. It appears that the callback function is not being called (the RX interrupt is not being triggered).

When the BLE module sends data, a scope shows activity on the D1 pin (PUART_TX) of the J4 connector on the EVAL board. But, the scope shows no activity on the J4/D0 pin (PUART_RX) while typing characters at the PC. Switching to a different CYBLE-343072-EVAL-M2B board does not fix the problem.

Is there an issue with PUART channel support for the 343072 EVAL board or the CYW20835B1 module?

0 Likes
1 Solution

This only solved half of the problem. In order to get PUART communications working with flow control, R75 (PUART CTS signal) also needs to be populated with a zero ohm resistor.

View solution in original post

0 Likes
5 Replies
BragadeeshV
Moderator
Moderator
Moderator
First question asked 1000 replies posted 750 replies posted

Hi @JoOr_4004241 .

The issue is because the  Kitprog 3 (KP3) in CYW9BTM2BASE1 kit, expects the PUART to use hardware flow control. Currently, the issue occurs because of the absence of the connection CTS of KP3 and RTS of BT module. The CTS line of the KP3 should be pulled low to facilitate data transfer from the KP3 (from PC) to BT module. For this, you need to populate R76 (connects BT_PUART_RTS with KP3_CTS) with a zero ohm resistor. 

Regards,
Bragadeesh
0 Likes

This only solved half of the problem. In order to get PUART communications working with flow control, R75 (PUART CTS signal) also needs to be populated with a zero ohm resistor.

0 Likes
JoOr_4004241
Level 3
Level 3
25 sign-ins 10 replies posted 5 replies posted

Bragadeesh,

Thank you for the information. In our final design, we do intend to implement flow control on the PUART connection. Will both RTS and CTS signals at the USB COM port be connected to the 343072 module's P11/P10 (RTS/CTS) signals once we do the "R76" fix you described?

0 Likes

Bragadeesh,

We implemented the R76 fix you suggested on one of our  CYBLE-343072-EVAL boards but it had no effect on getting data from a PC terminal program to the BLE module PUART channel. This is true with flow control turned ON or OFF in the BLE code and regardless of whether or not the handshake lines are asserted at the PC terminal program.

I did note one difference in behavior with the R76 fix in place. If flow control is ON in the BLE code, the PC terminal program will not receive data sent from the BLE module PUART unless RTS and DTR are both asserted in the PC terminal program. So, the fix affected data flow from the BLE module PUART to the USB COM port but not from the USB COM port to the BLE module PUART.

0 Likes
BragadeeshV
Moderator
Moderator
Moderator
First question asked 1000 replies posted 750 replies posted

Hi @JoOr_4004241 ,

Apologies for the confusion. We verified this issue with our HW team. They confirmed that the workaround for this issue is to populate both CTS and RTS resistors for the PUART RX to work correctly.

Regards,
Bragadeesh
0 Likes