SKR 1.4 bricked

Alright so the LPC1768 on your SKR 1.3 is alive and well.

You can further verify this if you connect to the telnet interface (e.g. via ncat or telnet.exe) on the commandline (127.0.0.1 port 4444) and try to use commands for e.g. reading out the flash banks and dumping the flash content to a file (docs, reset halt, flash banks, flash info 0, flash read_bank 0 dump.bin,…). But this already strongly indicates that the MCU is alive and well.

But the SKR 1.4 doesn’t seem to be responding over the SWD interface :confused:. You can try a few things:

  • making sure that the TRST signal is connected as well to the STLink V2 (I think it’s NRST there)
  • omititing the -c "reset_config none separate" switch from the invocation
  • trying different reset configs as listed here
  • is the (not)RESET line permanently low? (holds the MCU in reset, should be high by default for “not in reset”)
  • disconnecting every external device from the motherboard, like motors, headbeds, LCDs and whatnot. The measured voltage 3.151845 seems a bit low for a 3.3V target, as if there’s a siginificant load / power draw in the system.
  • is the board externally powered? (I think the STLinkv2 will first try to measure the voltage on its VCC_TARGET pin, and if there’s no voltage present, will try to supply power - that may not be enough for the whole target motherboard; should use USB supply + the J15 jumper to VUSB maybe.)
  • using a multimeter, is the 3.3V rail of the board and especially on the microcontroller stable? (e.g. measurable via the C14 capacitor in the schematic)
  • does any chip get hot? are there burn marks on the PCB?

If the chip gets a proper power supply on all pins but still decides do nothing and not be connected to via its SWD interface, then the chip may be actually dead. These chips are listed for 4-5€ on ebay (lpc1768fbd100 LQFP100) so if you have a hot-air soldering gun and the skills, desoldering the chip and placing a new one might restore the motherboard.

SKR 1.3

All commands but this one worked. It returned connection lost.

SKR 1.4

I tried all steps but this one. I could not find the C14 capacitor in the schematic or the board. However, I measured the 3.3V pin on the SWD pin header and it showed 3.26V on my multimeter. Connecting external 5V USB power raised the chip voltage from 3.15V to 3.19V.

I got the board last week and it died within 30 minutes. I will just return it on Amazon… I also dislike that they removed a lot of the markings on v1.4 of the PCB. These labelled all the components and I don’t understand why they removed them. If I reorder a board I will get a second v1.3 instead.

Now I guess all that is left to do is figure out how to flash the SKR 1.3 via platformio (stlink)?

You should try to get binary dump of the firmware though for safety reasons, in case the bootloader is overwritten. What is the output of the previous commands about probing the flash banks?

A custom upload command can be set to invoke openocd with the previous flags plus a -c "program {<firmware elf>}; verify; reset", as seen in the docs.

reset halt
target halted due to debug-request, current mode: Thread
xPSR: 0x81000000 pc: 0x10000004 msp: 0x10000104

flash banks
#0 : lpc17xx.flash (lpc2000) at 0x00000000, size 0x00080000, buswidth 0, chipwidth 0

flash info 0
Flash protection check is not implemented.
#0 : lpc2000 at 0x00000000, size 0x00080000, buswidth 0, chipwidth 0
# 0: 0x00000000 (0x1000 4kB) protected
# 1: 0x00001000 (0x1000 4kB) protected
# 2: 0x00002000 (0x1000 4kB) protected
# 3: 0x00003000 (0x1000 4kB) protected
# 4: 0x00004000 (0x1000 4kB) protected
# 5: 0x00005000 (0x1000 4kB) protected
# 6: 0x00006000 (0x1000 4kB) protected
# 7: 0x00007000 (0x1000 4kB) protected
# 8: 0x00008000 (0x1000 4kB) protected
# 9: 0x00009000 (0x1000 4kB) protected
# 10: 0x0000a000 (0x1000 4kB) protected
# 11: 0x0000b000 (0x1000 4kB) protected
# 12: 0x0000c000 (0x1000 4kB) protected
# 13: 0x0000d000 (0x1000 4kB) protected
# 14: 0x0000e000 (0x1000 4kB) protected
# 15: 0x0000f000 (0x1000 4kB) protected
# 16: 0x00010000 (0x8000 32kB) protected
# 17: 0x00018000 (0x8000 32kB) protected
# 18: 0x00020000 (0x8000 32kB) protected
# 19: 0x00028000 (0x8000 32kB) protected
# 20: 0x00030000 (0x8000 32kB) protected
# 21: 0x00038000 (0x8000 32kB) protected
# 22: 0x00040000 (0x8000 32kB) protected
# 23: 0x00048000 (0x8000 32kB) protected
# 24: 0x00050000 (0x8000 32kB) protected
# 25: 0x00058000 (0x8000 32kB) protected
# 26: 0x00060000 (0x8000 32kB) protected
# 27: 0x00068000 (0x8000 32kB) protected
# 28: 0x00070000 (0x8000 32kB) protected
# 29: 0x00078000 (0x8000 32kB) protected
lpc2000 flash driver variant: 2, clk: 4000kHz

flash read_bank 0 dump.bin
error reading to flash at address 0x00000000 at offset 0x00000000
Read error
jtag status contains invalid mode value - communication failure
Polling target lpc17xx.cpu failed, trying to reexamine
Examination failed, GDB will be halted. Polling again in 100ms
Previous state query failed, trying to reconnect
jtag status contains invalid mode value - communication failure
Polling target lpc17xx.cpu failed, trying to reexamine
Examination failed, GDB will be halted. Polling again in 300ms
Previous state query failed, trying to reconnect

After the connection is lost it is not possible to reconnect. Different reset configs have no effect. A power reset restores connectivity.

I had the same problem with my skr1.4 turboboard. I changed the lpc17xx-dfu-bootloader of triffid
(which flashes firmware.bin, renames it to firmware.cur and then boot). One of the changes was using pin P0_26 instead of pin P0_6 as SS pin. I flashed it with flashmagic and UART connection
to the SKR1.4 turbo. (I had to short the bootpin to GND.)
After that I can load new marlin firmware via a card reader shield module connected to the spi connector.

1 Like

hello, you said that you put the pin to GND, which pin?
thank you

The mentioned SKR1.4 turbo has a LPC1768 chipset, and if you read the datasheet it says…

In ISP mode the device accepts UART commands to erase/program etc. See readily available online documetation at e.g. Unbricking - Cookbook | Mbed and Flash Magic to Program LPC1768 Cortex-M3.

thanks for your quick reply, but that won’t solve my problem, my SKR1.4 turbo has an LPC 1769 and not LPC1768
and I can’t connect with Flashmagic

That’s weird from the pictures of the board I’ve seen, but it does not make a difference. You can see for yourself that the datasheet I linked to applies to

grafik

Thus the same pin is correct.

Have you found where you can access this pin easily on the motherboard?

here I think, but maybe I’m wrong

Yeah should be right. The schematics show

So the signal ISP_BOOT is pulled-up to 3.3V via the 10kOhm resistor R28. Also capacitor C14 is right next to it.

grafik

The resistor should have the SMD code “103” on top for 10*10^3 = 10000 Ohm. Can you confirm that? Also make sure to only directly connect the side of the resistor to GND which is connected with the P2.10 pin, not the side that is connected to the 3.3V VDD side; that would create a short. Check with a multimeter to see which side of the resistor is connected to where (direct continuity to P2.10 with practically no resistance, 10k resistance to VCC in the other case)

Note that to get to UART(0), you will have to connect a USB-UART adapter to where TXD0 and RXD0 is connected to. On that board that is

grafik

on the TFT screen connector P2. So if you have adapter hooked up that, bridged ISP_BOOT with GND, and then power up the board, the MCU should start up in ISP mode and you should be able to flash it with flashmagic.

However there’s also the possibility that the chip is simply dead…

thank you very much
your screens show me or was my mistake, I tried to flash by the SPI instead of the port TFT, I can now flash.
but the bootloader that I got here GitHub - Marsman1970/SKR-V1.3-Bootloader: KR V1.3 Bootloader may not be good, because I still cannot flash marlin via microSD

Merci beaucoup

But can you flash a Marlin binary directly from PlatformIO’s output? Or a known-good binary?

I’d recommend to make a comment in skr 1.4 turbo bootloader · Issue #346 · bigtreetech/BIGTREETECH-SKR-V1.3 · GitHub to get help on where to get the bootloader. Though the comment already says…

The lpc1769 is from a skr 1.4 turbo

So I don’t know what else might be going on here. (I’m sure you’ve already removed the ISP_BOOT ↔ GND bridge, right)

yes I have deleted the ISP BOOT <-> GND bridge
no I have never succeeded by PlatformIO

maybe I have a problem with the microSD card reader

you would be able to share your bootloader which allows flashing via an external spi module

thank you

Since I dont have any 3D printer, in particular also no SKR 1.4 Turbo, I can’t dump the firmware image.

My suggestion would be to try to program the board with a simple program to check whether the chip is working okay, e.g. with an Arduino sketch. That sketch can then also check if it can read an SD card. So thus you might get closer to the actual problem (if it isn’t that the burned bootloader is wrong after all).

PlatformIO natively doesn’t support the LPC1769 chip though in the platform, only LPC1768 and other. But custom support is available.

So you can e.g. try the following PlatformIO project: GitHub - maxgerhardt/pio-nxp-lpc1769-arduino-test: Simple project for testing Arduino support on the NXP LPC1769 chip using a custom platform.

I have trouble expressing myself initially, the printer worked before I flash with “Flash Magic”
I just wanted to make a modification
as I could no longer flash with the firmware.bin in the micro sd, I thought that the bootlader was overwritten
but I don’t think the LPC 1769 is dead I just tested another bootloader that someone put on github ==> [GUIDE] No update from SD solution? · Issue #423 · bigtreetech/BIGTREETECH-SKR-V1.3 · GitHub and the problem is the same

anyway thank you for your help and sorry for my english “google translate”

can i build marlin firmware (.hex) with platformIO? to flash it then with “Flashmagic”

Flashmagic also works with .bin files. The PlatformIO Marlin build will output that .bin file (in .pio\build\<environment>\firmware.bin), which you may attempt to flash. See my text in SKR 1.4 Turbo Motherboard Without SD-CARD Reader! Bricked? - #4 by maxgerhardt regarding the bootloader and possible offset address which might not make this work.

I found the problem, I just changed my micro SD reader and now everything is working fine
thank you again for your help
image

bonjour tokaphi!

omg !! that photograph… i get nightmare flashbacks from my poor skr 1.4 turbo sd module! it looked similar! (nooooo!)

i am glad you have been able to resolve your issue
you deserve it (karma)

merci for your assistance in my thread
much respect to you