Rkdeveloptool on 5A?

I haven’t used rkdeveloptool before. I’m trying on my Rock 5A target with an EMMC installed. I connect a USB A - USB A cable to my laptop, connect the “maskrom” pins together and connects power (correct, right?)

Almost all commands fail. But “list device” succeeds, which confirms that USB communication works. What could be the problem?

me@host:~/$ rkdeveloptool ld
DevNo=1	Vid=0x2207,Pid=0x350b,LocationID=501	Maskrom
me@host:~/$ sudo rkdeveloptool rfi
Read Flash Info failed!
me@host:~/$ sudo rkdeveloptool ld
DevNo=1	Vid=0x2207,Pid=0x350b,LocationID=501	Maskrom
me@host:~/$ sudo rkdeveloptool ppt
Read GPT failed!
Read parameter failed!
Not found any partition table!
me@host:~/$ sudo rkdeveloptool ef
Starting to erase flash...
Getting flash info from device failed!
me@host:~/$ sudo rkdeveloptool rfi
Read Flash Info failed!
me@host:~/$ sudo rkdeveloptool ld
DevNo=1	Vid=0x2207,Pid=0x350b,LocationID=501	Maskrom
me@host:~/$ sudo rkdeveloptool rcb
Read capability Fail!
me@host:~/$ sudo rkdeveloptool db foo
Opening loader failed, exiting download boot!

/var/log/syslog shows:

Feb  1 13:55:41 host kernel: [97587.643904] usb 5-1: new high-speed USB device number 77 using xhci-hcd
Feb  1 13:55:41 host kernel: [97587.784524] usb 5-1: New USB device found, idVendor=2207, idProduct=350b, bcdDevice= 1.00
Feb  1 13:55:41 host kernel: [97587.784531] usb 5-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Feb  1 13:55:41 host mtp-probe: checking bus 5, device 77: "/sys/devices/platform/usbdrd3_1/fc400000.usb/xhci-hcd.4.auto/usb5/5-1"
Feb  1 13:55:41 host mtp-probe: bus: 5, device: 77 was not an MTP device
Feb  1 13:55:41 host mtp-probe: checking bus 5, device 77: "/sys/devices/platform/usbdrd3_1/fc400000.usb/xhci-hcd.4.auto/usb5/5-1"
Feb  1 13:55:41 host mtp-probe: bus: 5, device: 77 was not an MTP device

Are you sure you have eMMC installed and not the little SPI NOR which comes preinstalled?

And if true, don’t use the garbage Rockchip applications, just flash a Linux image onto an SD card, boot the 5A from it and flash anything else on the board itself from within Linux. Or, if you have an adapter, flash the image straight to eMMC.

Thanks. Yes I have a 256GB emmc. And I have the adapter, just tired of clicking that tiny emmc module in and out of those tiny sockets (I’m sure I will eventually destroy some microscopic pin).

Would have been nice to figure out why rkdeveloptool doesn’t work for me. But Ok: booting from an SD card and flashing from there works too, thanks for that hint.

Maybe there is one specific USB port you need to use? Not sure, I avoid this stuff if I can

It is a specific port: the upper USB3 port on Rock 5A.

You need to download and flash the loader bin first to continue the other steps. I’d assume the RK3588 loader bin also works on RK3588S but not sure

@Oskar_Enoksson https://wiki.radxa.com/Rock5/install/usb-install-emmc
Just follow this and use that loader.

1 Like

I don’t know why but this is always some issue and You have to have right combination of rkdevtools, cable and board. For Rock4 family i found out that usually usb-a to usb-a is working, for Rock5 it was better to use usb-c cable. Try to check several configurations and You should find right one. Test different ports on Your pc, sometimes it helps to connect via usb 1.1 hub (i.e via monitor usb). Same thing was issue on android adb and some phones.

This is always best way :smiley:

2 Likes

Thanks @dominik and @meco for your answers!

I finally had some time to try this again. I found and followed the excellent description for Rock 5A here

And now it works. I’m using an USB-A to USB-A cable. And I keep the EMMC installed and intercepts the rom bootloader with the “maskrom” jumper (yes I soldered a little 2-pin header there so I can put a jumper to enter the maskrom state).

And the “SPL loader” binary is indeed the same for Rock 5A as Rock 5B (and all other RK3588(s) based devices I suppose). It can be found here.

After executing the following line all other subcommands work:

sudo rkdeveloptool db rk3588_spl_loader_v1.08.111.bin

And yes, all rkdeveloptool commands need to be executed as root, at least with the default permissions on my ubuntu.

$ sudo rkdeveloptool rfi
Flash Info:
	Manufacturer: SAMSUNG, value=00
	Flash Size: 238552 MB
	Flash Size: 488554496 Sectors
	Block Size: 512 KB
	Page Size: 2 KB
	ECC Bits: 0
	Access Time: 40
	Flash CS: Flash<0> 
$ sudo rkdeveloptool wl 0 Armbian_23.5.4_Rock-5a_bookworm_legacy_5.10.160_minimal.img
Write LBA from file (100%)
$
1 Like