Unable to enter download mode after flashing SPI


I flashed the latest u-boot and single-line file from here:

Download mode button worked, console said something like “waiting for c-sky device”, cct tool worked fine to flash the images, though I had to use a docker container to install yoctools, because it is incompatible with Python 3.12.

Board boots to Ruyi SDK u-Boot no problem, and boots the SD card image

However I now cannot enter download mode by holding the download button and resetting the board. I get a message on the serial console:

brom_ver 8
[APP][E] protocol_connect failed, exit.

This is preventing me from completing the instructions here:

With the board unable to enter download mode, I cannot use fastboot to flash the eMMC image.

1 Like

Sorry, thought it was another user complaining about eMMC not working right. My bad.

Do you use the power button to reset or do you unplug and replug the USB-C connector?

What do you get on the serial console on a normal boot?

I always get

brom_ver 8
[APP][E] protocol_connect failed, exit.

and then nothing more.

And could you post the exact versions you used to get a working SD card boot? Thanks!

1 Like

USB unplug replug

These files

Boot up I get ruyisdk ascii logo, usual sbc uboot stuff and a menu with a couple of kernel entries to boot from

1 Like

Thanks. Yeah, that’s more what one would expect :slight_smile:
Can you check the version of yoctools you used?

I found that sometimes the buttons don’t register even though it feels like I pushed them.

It may show the error but still work sometimes, and the fastboot reboot command seems to screw things up, but maybe that is malfunctioning on my board as well.

1 Like

yoctools was the latest from pip

button does work as the error appears consistently when booted with the button pressed

Can anyone from MilkV advise whether it is possible to enter download mode using a uboot command, or write to the SPI from inside a booted copy of linux?

1 Like

Well, according to you:

This must be the SPI Flash device, I guess, so flashing the SPI memory should be possible from within your booted OS.
Sadly, I can’t test this for you as I don’t have the hardware.

Probably someone from Milk-V staff could tell us more.

Some progress. I still can’t get the device to be detected by cct over serial after having flashed the initial copy of u-boot. However, what does work is entering download mode and using a USB cable to the PC, then flashing via fastboot.

After fastboot flashing, I still cannot use EMMC but we can continue troubleshooting that in the other thread

1 Like