cancel
Showing results for 
Search instead for 
Did you mean: 

How to downgrade/restore STlinkv2 ?

ijona
Associate III

Hi,

I update my STlinkv2 from V2J29M18 to V2J34M25 firmware version and i lost the UART communication.

I have two STlinkV2 and one is always in V2J29M18 version so i'm sure that the problem come from the update.

So my question is how i can restore the V2J29M18 firmware ? (the easy way i think)

Or how to re-active the UART communication with the V2J34M25 version ?

Best regards.

14 REPLIES 14

Fiddled with any of the other upgrade check boxes?

Get an older version of the ST-LINK Utilities or stand alone upgrade tool you used to put V2J29 on it and use that again to downgrade.

Version 2.28.18

https://drive.google.com/open?id=0B7OY5pub_GfIM21yTDZvcmNKQUk

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

Hello,

May you please detail on which board exactly you faced the issue, and the overall context (host PC and target application) ? The ST-Link/V2 is the name of the standalone probe which does not provide UART connection so you are most probably mentioning a disco/nucleo/eval board embedding the ST-Link/V2-1. On those boards, the VCP initialization changed in version V2J33M25: prior to this version, the VCP was initialized at ST-Link startup, with arbitrary default parameters (9600 bauds, ...), which created issues in some cases. Since V2J33M25, the VCP is initialized when the host issues a SET_LINE_CODING command, which is the command configuring the VCP (sent by host terminal applications). I guess your issue is somehow related to this change but I would need more information to better understand your case.

ijona
Associate III

Hi S C,

I use a custom probe where i recycling the IC from a nucleo L011K4. But the configuration of my probe is close to the nucleo.

So I have not yet tested with an original nucleo board.

What is VCP ? i think this is the key because my probe work for programming and debug mode.

S C
ST Employee

VCP stands for Virtual Com Port: briefly it's a gateway USB to UART, allowing to communicate to a target UART through the ST-Link USB channel. On Nucleo boards (like any other ST-Link/V2-1 based board), an UART of the STM32F103CB of the ST-Link is connected to an UART of the target. If you don't activate the VCP, the ST-Link firmware V2J34M25 (and later) activates a pull-up on its Tx pin (Rx for target) and let its Rx pin floating (while previously, a pull-up was also activated on this pin, because of VCP activation). This is perhaps what explains the regression in your case

ijona
Associate III

Ok so how i can activate the VCP ?

S C
ST Employee

You may use applications like Putty or teraterm, for investigations. But your application should work without the ST-Link VCP activated; I still don't understand what you mean by "I lost the UART communication", I initially thought you spoke about the UART of the ST-Link VCP. If it's not the case, perhaps you also need to check the hardware configuration of your UART communication, which perhaps requires a pull-up at least on one side, instead of relying on the ST-Link configuration ?

ijona
Associate III

So when i place a jumper between the Tx-Rx of my probe i can receive an echo (same behavior on new and old firmware)

ijona
Associate III

Sorry i send a response before your question...

So my problem is i can't receive any trace on my terminal from the device with my probe flashed with the new firmware (V2J34M25).

If connect a probe with a firmware under V2J33... all is ok.

Terminal stay clear with the new firmware (of the probe). No invalid characters or garbage it's just open and clear.

S C
ST Employee

My understanding is that you connect the target UART to a terminal but in the same time you kept the connection to the ST-Link UART, is that right ? In that case I suggest you to activate the pull-up on the target UART_Tx pin and then it should work even with recent probe firmware versions