Dragonboard won´t enter into sd boot

Hi!

The other day I was playing with the GPIO of the dragonboard and suddenly it enters in a bricked state. Because of that, I try to reflash using the SD method from eMMC, but the board is not entering in sd boot, (displaying the window of install image linaro). I do have set S6 switch to 0-1-0-0. I have followed every step in Windows Host Installation for DragonBoard-410c - 96Boards

It just turned the BT led on for around half of a second when connected to the power supply, and then stays dead.

thank you for the help.

I’ve shared a link to the board recovery document below.

However SD install is the recommended mechanism for board recovery so if it is not working it is possible you board has been damaged. If you are paranoid is can be worth re-downloading and re-writing the SD card (ideally with a physically different SD card) but this is a very long shot (the lights on the board only start flashing of the SD card is correctly authored).

Other techniques to look for signs of life are connecting to LS-UART1 (requires a special adapter) or attempting deeper recovery such as using QDL. In particular if you have a board with SW6-1 set for USB-boot and nothing connected to the board except for the micro-USB (linked to your PC) and power then you should see it enumerate as a USB device with your PC when you apply power. If it doesn’t do this then I’m afraid the board it is almost certainly broken.

Hi danielt!,

thank you for responding, I have written two differrent SD cards and still the same, I tried setting on SW6-1 (USB-boot) and nothing happened. But what it is interesting is that when I set the SW6-2 on (SD-boot) with the micro sd connected when a power the board the BT blue led flashes for half a second. Which doesnt appear when I did the usb-boot part.

I hope this is a sign, can you please tell me what else can I do? I am not familiar with QDL but should I give it a try?

“Nothing happened” is always a difficult description for me to work with because different people tend mean different things (some mean no HDMI, some no LEDS, others no UART or USB activity).

However if the board is in USB boot mode and the micro-USB is connected to a PC then a working board will enumerate with the OS (although there may not be drivers so its worth looking in the dmesg trace or hardware manager to check the device exists).

A board that does not enumerate is likely to be physically damaged and I’m afraid there are no easy options for remote diagnosis there.

Hi @danielt, I think I’m having a similar problem to this I wonder if you’ve got any advice? I’ve got my Dragonboard fresh out of the box this morning. I’ve tried to flash Windows IoT via USB (following the instructions on Microsoft) and via SD and I also tried flashing the recovery image via SD with no luck so far.

If I try to boot in USB mode “nothing happens”. That is no LEDs light up and nothing shows on the HDMI connected monitor. If I boot to USB while connected to a linux PC the device doesn’t enumerate and dmesg doesn’t show anything.

If I boot in SD mode the BT LED flashes once and then nothing else happens (no more LEDs no HDMI).

BUT if I power up with all the S6 jumpers set to 0 then it happily boots into Android and mouse, keyboard, LEDs and HDMI work as expected.

Does that sound like a hardware issue? Or perhaps the bootloader is somehow corrupted?

Apologies if this thread isn’t an appropriate place for this question. It just seems like the same ballpark.

Board recovery description is here:

If the board is successfully booting Android then I would expect the SD card recovery to be working fine and it doesn’t really indicate a hardware issue (at least not yet). The recovery mechanisms get progressively more aggressive though so if the SD card approach isn’t working try the others.

The QDL method does not rely on any software present on the device so if it doesn’t work then it does indicate a hardware problem if the recovery was carried out correctly. If is the “if the recovery was carried out correctly” that can be a bit awkward is why I’m so dogmatic in this area. Typically I will want to know (in detail) what you did, what you expected to happen and what you observed instead).

Thanks so much for the reply!

Last night I tried doing the qdl method. I followed all of the steps and when I run qdl I get the following message:

Waiting for EDL device

It will wait in that state indefinitely. This is kind of what I expected as the Dragonboard doesn’t enumerate when connected via USB.

This morning I bought a TTL to USB lead and connected to the UART on the Dragonboard. If I boot with S6 set to 0000 I get loads of normal, sensible looking output. If I boot to SD (0100) I get the output below. If I boot to USB (1000) I get no output at all! That must mean the USB side of things is knackered right? I reckon I’ve maybe got the USBOTG stuff in a bit of a twist and caused some kind of short. Does that sound plausible? I did get some kind over-current warning when I first connected the Dragonboard to my Windows PC so that could be a clue! I didn’t make make a note of the exact warning unfortunately. I really don’t know much about the USB side of things though (I will do some homework as soon as I can).

Below is my output when booting into SD Card mode (I think this is the interesting stuff I can include the logs before this as well if that will help). Does this give any clues as to why it won’t boot to SD? What would I have to know/read to get an understanding of this output?

Android Bootloader - UART_DM Initialized!!!
[0] [0] BUILD_VERSION=
[0] [0] BUILD_DATE=16:23:05 - Nov 5 2020
[0] [0] welcome to lk

[10] [10] platform_init()
[10] [10] target_init()
[40] [40] SDHC Running in HS200 mode
[50] [50] Done initialization of the card
[60] [60] pm8x41_get_is_cold_boot: cold boot
[60] [60] Rescue image for DragonBoard 410c, boot into fastboot mode only
[440] [440] Not able to search the panel:
[480] [480] Config MIPI_VIDEO_PANEL.
[500] [500] Panel CMD: command mode dma test failed
[500] [500] dsi panel init error
[500] [500] Turn off MIPI_VIDEO_PANEL.
[600] [600] Not able to search the panel:
[670] [670] Config MIPI_VIDEO_PANEL.
[900] [900] Panel CMD: command mode dma test failed
[900] [900] dsi panel init error
[910] [910] Turn off MIPI_VIDEO_PANEL.
[1000] [1000] Not able to search the panel:
[1000] [1000] Unknown panel
[1000] [1000] Target panel init not found!
[1010] [1010] pm8x41_get_is_cold_boot: cold boot

You’ve gone into a lot of detail but haven’t described how you have set up the hardware.

In both cases I recommend the following (which is overzealous but difficult to get wrong):

  • Disconnect everything from the DB410C
  • Set jumpers (and insert SD card if needed)
  • Plug in the power connector
  • Connect you laptop to the DB410C using the USB micro B

Check if the DB410C enumerated as a device on the laptop. On a GNU/Linux workstation that means hooking it up and running sudo dmesg… although I don’t know how to do any kind of testing on a Windows machine.

BTW if you saw overcurrent messages on your PC then this is probably a software warning (do you have any unpowered hubs or anything like that… if so bypass them). However do check the USB socket on the PC is working OK (e.g. a mouse works or, better, that your phone goes into the “Charging slowly” state when connected).

Finally if all else fails power off (not reboot) your laptop for a little while. USB has lots of overcurrent protection, both in software and hardware… the hardware side is usually has a currently limiter or a resetable fuse. Powering off is paranoid… but I have known resetable fuses that stay fused until the power goes out.

I tried those steps with my existing board and it didn’t work. I then got myself a new board and tried those steps and they still didn’t work. I tried the same thing but connecting the USB before powering on and that did enumerate. So:

  • Disconnect everything
  • Set S6 to 1000
  • Connect micro USb to linux PC (straight into the built in USB, not via a hub)
  • dmesg showed a Quectel Modem connected

Brilliant!

I then tried the same sequence with a screen connected to the Dragonboard via HDMI and it didn’t enumerate. I then went back to doing it without the screen connected and still nothing. I then tried the sequence that you mentioned (power first then connect USB) and I got some more overcurrent messages from dmesg.

I’ve done lots of power cycling the PC and tried a bunch of USB leads and I can’t get the new board to register again now.

This tells me I must be doing something wrong every time! My 12V power supply is only providing 500mA. Could that be the issue?

I don’t understand why it would still boot in normal S6 set to 0000 mode if that were the case though. I’ve ordered a 12V 2A power supply and a brand new USB lead for tomorrow.

Booting in SD card mode with a HDMI connected never showed anything on the monitor.

That could very well be the issue. That’s a pretty small power supply, which may be right on the edge. You might want to put a voltmeter on the SYS_DCIN pin and make sure that the voltage doesn’t dip too low when you are powering the board on. Its supposed to be good down to as low as 6.5v, but I’d be concerned if the 12v power supply is ever dropping below about 11v. It would mean that you are drawing more than the power supply can provide.

Note that the specs call for a 3A power supply.

They do? I thought when the DB410C was available in kit form they were paired with a 24W (12v x 2A) power supply.

Either way I certainly agree that a 12v x 0.5A supply is likely to cause trouble.

Under “Power source”:
8V~18V@3A, Plug specification is inner diameter 1.7mm and outer diameter 4.8mm

I guess between the two USB ports at 500 mA each = 1A, 5W on the +5V pin on the LS header = 1A, we are already at 2A before even considering running the board itself and another 7W on SYS_DCIN.

The power coming into the DB410C goes through a pair of buck converters so that way to express the power requirements is bizarre. IIUC all that really matters is the intended wattage of the power supply: 8V@3A (24W) is more or less the same thing as 12v@2A (also 24W) as a supply for the board.

Ok I’m up and running now. I got a 12V 24W power supply and it mostly seems happy. I still couldn’t boot to the SD card but I’ve managed to do everything via USB. Thanks for all of your help on this!