Topics

NanoVNA bricked

Adrian Waiblinger
 

Hi all.

I used Dfuse Demo to do an upgrade on the original NanoVNA.
Did as instructed boot to Vdd, switched on and presented with white screen
Fired up DfuSe Demo upgrade to nanoVNA_900_AA, got error message and now I have a white screen after the jumper is removed.
I assume the firmware is gone. any tips on how dot to get this error.

Regards Adrian.

QRP RX
 
Edited

Just buy ST-LINK2 on aliexpress: https://www.aliexpress.com/item/32839270086.html

it allows to flash STM32 even if it is bricked. You will need to connect GND=GND, VDD=3.3V, SWDIO=SWDIO, SWCLK=SWCLK. These signals are placed near boot jumper on the right side of nanoVNA.

In order to flash you will need ST-LINK Utility: https://www.st.com/en/development-tools/stsw-link004.html

Connect ST-LINK to NanoVNA (there is no need to solder, you can keep wires with finger during flashing), start ST-LINK Utility, and set the following values in the window:
Address: 0x08000000
Size: 0x20000
Data width: 8 bits

After that select menu: Target => Connect, it should connect to STM32 and show it's memory content.

Use File => Open file menu to open HEX file with NanoVNA firmware.
And then flash it into NanoVNA with menu Target => Program and verify

That's it :)
See HEX file with NanoVNA firmware in attachment.


Also, you can try to reflash it with DFU. Just connect USB cable, power off NanoVNA, short the boot jumper and power on NanoVNA, after that remove boot jumper and try to flash it with DFU again.

But DFU is not reliable way to flash it. So, if it won't work just buy ST-LINK and use instruction above. ST-LINK is native way to flash STM32. While DFU is just a way to flash it for those, who don't have ST-LINK. But flashing through DFU is buggy and not reliable way to flash it. It's better to use ST-LINK. But note, ST-LINK uses HEX or BIN format, it cannot understand DFU file.

Adrian Waiblinger
 

Hi

I tried what you said and it did not work. I get an error "Target 00 /error code: Bad state machine infirmware."

I have ordered an STL-Link 2 from your advice.

Thanks for your help

Regards
Adrian

Bruce KX4AZ
 

I am trying to jumper the boot to Vdd with a wire with alligator clip on each end. So it's still booting normally with regular screen, so wondering if there are any special tricks to getting the jumper connection, or a better too like the connectors used for logic probing?

David J Taylor
 

From: Bruce KX4AZ

I am trying to jumper the boot to Vdd with a wire with alligator clip on each end. So it's still booting normally with regular screen, so wondering if there are any special tricks to getting the jumper connection, or a better too like the connectors used for logic probing?
=========================

Bruce,

I just bent 24 swg tinned copper wire into a "U" shape, tweaked the space so that it held itself into position to get the white-screen boot.

Cheers,
David GM8ARV
--
SatSignal Software - Quality software for you
Web: http://www.satsignal.eu
Email: david-taylor@...
Twitter: @gm8arv

Oristo
 

I am trying to jumper the boot to Vdd with a wire with alligator clip on each end.
So it's still booting normally with regular screen,
so wondering if there are any special tricks to getting the jumper connection,
or a better too like the connectors used for logic probing?
Overkill works for me:
http://ormpoa.altervista.org/nanoDFU.htm

QRP RX
 
Edited

Adrian Waiblinger, if it shows that there is bad state in firmware, then it seems that memory is corrupted, so the only way to flash it is to use ST-LINK

Just use instruction above. If something will going wrong during flashing with ST-LINK, then use menu Target => Erase chip. It will clean all memory, so you will be able to flash it like new one with menu Target => Program and verify.

Steve London
 

Did you succeed in getting your NanoVNA unbricked with ST-LINK ?

I'm in the same boat. Before throwing good money after bad, I would like to hear from folks who have successfully used ST-LINK to unbrick a whitescreened NanoVNA that failed using DFU.

Thanks,
Steve, N2IC

hwalker
 

Steve,
The following is what another user wrote:

// Begin Quote //

There are two ways to update firmware: DFU and ST-LINK. So, it depends on what method you're want to use.

1) DFU update. This is simple but not reliable way. If something will going wrong, you may brick your NanoVNA with this method and the only way to restore it is to update firmware with the second method. DFU method doesn't requires any special hardware and you can update it just through USB.

For DFU method, you will need the file with DFU extension: e.g. "nanoVNA_900_ch_20190920.dfu"

In order to upload it into NanoVNA you will need DfuSe software.

You will need to power-off your NanoVNA, connect USB to PC, short BOOT jumper with tweezers and power on NanoVNA. It will be booted in DFU mode. The display will be white. Now you can release BOOT jumper and then use DfuSE Demo tool to upload firmware file into NanoVNA.

2) ST-LINK update. This is native and reliable way. But it requires a ST-LINKv2 dongle. This dongle allows to flash even bricked device and also allows to use in-circuit debugging.

For ST-LINK update, you will need the file with HEX or BIN (any of these) extension: e.g. "nanoVNA_900_ch_20190920.hex"

In order to upload it into NanoVNA you will need ST-LINK Utility software.

You will need to connect ST-LINK to NanoVNA with 4 wires:
- 3.3V to VDD,
- GND to GND,
- SWDIO to SWDIO,
- SWCLK to SWCLK

There is no need to solder, you can just connect wires to the pads and press it with finger during upload. Then you will need to use ST-LINK Utility tool with the following memory parameters:
- Address: 0x08000000
- Size: 0x20000
- Data Width: 8 bits

I strongly recommend to save your current firmware before update. Just in case. Both software tools allows it. "

// End Quote//

After having read the above, I bought a second nanoVNA and use it as a sacrificial device when trying upgrades. I haven't had any problems upgrading with DFUSe Demo through USB, but I'm prepared in-case Murphy decides to pay me a visit.


Herb

Steve London
 

I finally got mine unbricked using "conventional" methods.

Here's the story:

1) Used ubuntu dfu-tool to load CLEAR_MEMORY_DFU.dfu . That left the NanoVNA white screened.
2) Tried to use dfu-tool to load a NanoVNA dfu. Couldn't: ubuntu no longer found NanoVNA, even in boot mode.
3) Installed DfuSe Demo on Windows.
4) Plugged NanoVNA into Windows box, in boot mode (2 pins shorted). Windows Search found and installed the STM driver (on the 3rd try). After that, Windows device manager always found the NanoVNA when in boot mode.
5) Used DfuSe to install the current NanoVNA dfu using Hugen's excellent instructions at https://drive.google.com/drive/folders/1IRz6E1wlkRyV0u7sbqj0lhWST-GV1szY . The important thing is that you are -upgrading-, not -uploading-. Use the Choose and Upgrade options on the right side of DfuSe.

Steve

hwalker
 

Steve,
That's good information. Some Linux user's with bricked devices may not have been aware that a Windows PC might be able to recognize the device (if they still had a Windows PC available) and un-necessarily ordered the ST Programmer.

Robert Mattaliano
 

I had great difficulty flashing in DFU mode. At one point I thought the
VNA was bricked. For whatever reasons, I was unable get DFU running under
Linux. Under Windows, it finally worked but took almost 20 minutes to
flash.

Using, ST-LINK, under Windoze, 10 seconds to flash. Thanks Herb!!

Bob N6RFM

hwalker
 

Robert,
The thanks actually go to the great user groups that have formed around the nanoVNA. I never understood why people are so enthusiastic about some open source projects until now. This group is at almost 3500 messages and its almost guaranteed that if you run into a problem some other user has too. Some of the replies need to go through your "common sense" filter, but its hard to fault anyone if they are trying to help.

Herb

Dr.Heblik@...
 

Hi folks,

I got a bricked VNA (white screen) from a very frustrated OM (very cheap: a glass of beer only, hi).
- First: I tried the "DfuSe"-way - no success - as expected.
- Second: I used the "STM32CubeProgrammer" and shortened Pin "VCC" with Pin "Boot0" to reach the programming mode. Using the concerning "nnn.hex" File - IT WORKS !
- Third: I tried the method which is decribed above with the ST-Link - IT WORKS also !
So nobody need a "sacrificial" device in his stock - I think. Give it away (for much more than one glass of beer only.., hi)
(I use WIN10 prof.)

Peter , DD6USB

P.S.
It was worth a glass of beer I think.......