cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F401RE NUCLEO Usart Bootloader issue

tingting
Associate II
Posted on August 26, 2015 at 16:36

Hi,

I want to try the USART bootloader on my nucleo board.

I connected Boot0 to VDD and Boot1 to GND, I reseted the board.

Then I send the command 0x7F to the board. But I have not received any response.

Did I miss something?

How can I know if my bootloader is corrupted?

Thank you
9 REPLIES 9
Posted on August 26, 2015 at 18:30

The chance of the boot-loader being corrupt is approaching zero, start by looking critically at what you're doing.

The device should support USART1 (PA9/PA10) and USART3 (check manual), the signalling must use EVEN PARITY, I'd suggest 9600 8E1 to start with. The signals are at CMOS levels, and are not compatible with RS232 levels without a converter. Use a terminal program like RealTerm which is capable of sending/receiving in HEX mode.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
Nesrine M_O
Lead II
Posted on August 26, 2015 at 18:37

Hi, 

Please try to check the hardware resources used by this bootloader.

I'd highly recommend you to refer to this

http://www.st.com/st-web-ui/static/active/en/resource/technical/document/application_note/CD00167594.pdf?s_searchtype=keyword

about STM32 microcontroller system memory boot mode.

-Syrine-

tingting
Associate II
Posted on August 27, 2015 at 10:46

Thank you. Indeed, I forgot the EVEN Parity.

So I configured my RealTerm as below:

baud : 9600

parity: EVEN

Data bits: 8

Stop Bits: 1

But, the nucleo answers 0x00...

According to the diagram(AN2606):

0x7F is first checked, then it detects if there is a USB cable. But the USB cable is always plugged to supply the board.

I suppose that USB cable is detected before receiving 0x7F. As there is no External Oscillator on the Board, the system resets. That's why I have received 0x00.

Is it right?

0690X00000602ZgQAI.jpg

________________

Attachments :

Capture.JPG : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006Htqc&d=%2Fa%2F0X0000000aXn%2F3rrbhAAf8R1BN92vH4u_l2z1em3q_R6pNhFRWYZq0U4&asPdf=false
Posted on August 27, 2015 at 13:43

The USB connection on the Nucleo doesn't connect to the F401RE, rather just the ST-LINK's F103

The 0x7F should be sent with the ''Send Numbers'' option

You'll need to diagram/describe what you've wired up. I have ST's manuals.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
tingting
Associate II
Posted on August 27, 2015 at 14:14

Yes I sent this with ''send numbers''

Attached a picture of my nucleo.

0690X00000602ZlQAI.jpg

________________

Attachments :

nucleo.jpg : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006Htqh&d=%2Fa%2F0X0000000aXp%2F3G.cv1HKCNw.dR7_cHpVt5MXXeigHdJ4wGcUu_G5J8w&asPdf=false
Posted on August 27, 2015 at 14:40

OK, but how is the USART1 (or USART3) connected? Going through the VCP to USART2 is not a valid path here.

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..
tingting
Associate II
Posted on August 27, 2015 at 14:59

Indeed, nothing is connected to USART 1. Why USART2 is not a valid path in this case?

According to the AN2606, the USART2 seems like it should be able to be used 

0690X00000602ZqQAI.jpg

tingting
Associate II
Posted on August 27, 2015 at 17:24

Actually, I changed the USART. I switched to USART1. And It is working!

Thank you clive1.

Posted on August 27, 2015 at 18:03

Excellent.

The Nucleo VCP is connected to USART2 via PA2/PA3

Tips, buy me a coffee, or three.. PayPal Venmo Up vote any posts that you find helpful, it shows what's working..