cancel
Showing results for 
Search instead for 
Did you mean: 

Does USART has to be RS232 to use system bootloader

Jasmine
Associate II

Hi,

I'm designing a board in which the communication between STM32 and the host is UART over LVDS. So RS232 transceiver is not used in the design.

And we want to upgrade STM32 firmware remotely through the UART LVDS interface by the host.

But according to AN2066 page 38, the hardware requirement to use USART is through RS232 transceiver to the host. https://www.st.com/resource/en/application_note/cd00167594-stm32-microcontroller-system-memory-boot-mode-stmicroelectronics.pdf

I'm wondering if RS232 transceiver is necessary to use the system bootloader. Is UART over LVDS ok to use the system bootloader.

Does anybody know the answer?

Any response is appreciated. And thank you very much in advance.

With best wishes

Jasmine

1 ACCEPTED SOLUTION

Accepted Solutions
Peter BENSCH
ST Employee

In fact, an RS232 transceiver is only necessary if the host is connected with RS232. Of course, you can also connect the USART without a transceiver if the remote station has the correct levels.

Regards

/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

7 REPLIES 7
Peter BENSCH
ST Employee

In fact, an RS232 transceiver is only necessary if the host is connected with RS232. Of course, you can also connect the USART without a transceiver if the remote station has the correct levels.

Regards

/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
TDK
Guru

The signal at the MCU needs to be 0 logic low and VDD logic high (or equivalent). However you get the signal there is up to you.

LVDS will need a transceiver to convert.

If you feel a post has answered your question, please click "Accept as Solution".

AN2606

Generally I think you'd want the pin pulled high, what you want to avoid is glitching/transitioning signals on the PINS the loader is waiting on, so important NOT to connect things like GPS/GNSS receivers to other UART Rx pins the loader might use, as the receivers will start squawking immediately at power up and block your connectivity.

Expectation at the pins CMOS 2.7-3.3V type levels, per you device powering scheme

Watching for 0x7F data pattern a 8E1 to auto-baud the data rate, and then responds with an 0x79 data pattern.

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

And also to check if the signal should be inverted or not 😉

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

Thank you very much for the answer.

Thank you very much for the answer.

Is it necessary to pull high, what about pulled low?