UART-Bootloader dosen't work at low baudrates

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.
Anonymous
Not applicable

Hello,

I am trying to implement a UART-bootloader which runs at 300 baud. I'tested the project with several baudrates. Down to 1200 baud it worked well, so basicly I dont find any mistake.

  • ErrorCode is 0x04 -> The data is not in the proper form.
  • I checked the bitlength on the Rx and Tx lines, they seems to be okay (3,3ms)...
  • Buffersizes are 64 Bytes.

Any ideas?

I'm using a CY8C5868AXI-LP035, PSoC-Creator 4.2 and the original PSoC Bootloader Host GUI.

I attached a example-project.

0 Likes
7 Replies
AnkitaS_51
Employee
Employee
100 likes received 50 likes received 25 likes received

Please check this doc:

Arbitrary BAUD Rate of UART in PSoC 3/5

Can you please check whether you are able to have successful  UART communication at 300bps with any simple serial port terminal application like teraterm or coolterm .

Is this issue is specific to UART bootloader only?

0 Likes
Anonymous
Not applicable

Hi Anks,

The basic communication at 300 baud is not a problem (RX and TX). I have tested the project with several baud rates. Down to 600 baud works well and I can program via bootloader.

It is specific with the UART bootloader and only with baud rates under 600.

I have now tried an external clock instead of the internal, this also don't work.

0 Likes
Anonymous
Not applicable

Come on, do you have any ideas?

0 Likes
GeonaP_26
Moderator
Moderator
Moderator
250 solutions authored 100 solutions authored 50 solutions authored

Which USB-UART bridge is used in your application? Could you please help me to understand your requirement for low baud rate?

0 Likes
Anonymous
Not applicable

Hi geon, i'm using the PSoC internal uart. This is connected via a RS485-driver and RS485-USB adapter with my PC. I also tryed out a RS232-Setup. Basic communication is not a problem.

At this moment, it seems like the Bootloader-Host GUI uses any timeouts. Maybe those are too short for the 300 baud...

0 Likes
GeonaP_26
Moderator
Moderator
Moderator
250 solutions authored 100 solutions authored 50 solutions authored

Yes, it seems to be related to timeout on the bootloader host side or the bootloader component side. Hence, we would recommend to use 1200 bps in your application.

0 Likes
Anonymous
Not applicable

Unfortunately that is not possible. The data transfer over several kilometers must work. Therefore 300 Baud are a fixed requirement. Is there a way to change the delays in the host application without writing a completely new one? Otherwise I have to write a software myself probably...

0 Likes