Linux/MacOS
File Download
Please visit the Resource Download to download the corresponding Loader and image files.
Install rkdeveloptool
rkdeveloptool is software developed by Rockchip for USB flashing on Linux/macOS platforms.
rkdeveloptool can be considered the open-source version of the upgrade_tool.
If your operating system does not provide rkdeveloptool, you will need to compile and install it from the source code.
Enter Maskrom
What is Maskrom mode
Maskrom mode, also known as Loader mode, is a special boot mode generally used to restore or repair malfunctioning devices. This mode enables users to interact directly with the device's hardware without going through the operating system. In Maskrom mode, users can communicate with the device via a computer or other devices and execute a series of commands to resolve the device's issues.MacOS:
The results after executing "lsusb" Output:Bus 000 Device 004: ID 2207:350b Fuzhou Rockchip Electronics Co., Ltd. Composite Device
Linux:
The results after executing "lsusb" Output:Bus 001 Device 030: ID 2207:350b Fuzhou Rockchip Electronics Company
Windows:
Open the RKDevTool, and you will see that the device is in the "Found One MASKROM Device" state.
How to enter Maskrom mode
- Raspberry Pi CM4 IO Board
- WaveShare CM4-POE-UPS-BASE
- WaveShare CM4-IO-BASE-B
- WaveShare CM4-NANO-B
-
Prepare a USB-A to MicroUSB cable
-
Insert the USB-A to MicroUSB cable into the OTG port (Micro USB port) of the Raspberry Pi Compute Module 4 IO Board, and plug the other end into the computer.
- Then press and hold the eMMC Button (if this is the first time flashing, the button does not need to be pressed).
- Power on.
- At this point, under normal circumstances, it will enter Maskrom mode, and the RKdevTool will detect a Maskrom device.
-
Prepare a USB-A to USB-C cable.
-
Insert the USB-A to USB-C cable into the USB Type-C port of the WaveShare CM4-POE-UPS-BASE board, and plug the other end into the computer.
- Set the BOOT DIP switch on the board to the ON position.
- Then press and hold the eMMC Button (if this is the first time flashing, the button does not need to be pressed).
- Power on, then switch the switch at the position shown in the image to the ON position.
- At this point, under normal circumstances, it will enter Maskrom mode, and the RKdevTool will detect a Maskrom device.
-
Prepare a USB-A to USB-C cable.
-
First, set the BOOT DIP switch on the board to the ON position.
- Then press and hold the eMMC Button (if this is the first time flashing, the button does not need to be pressed).
- Insert the USB-A to USB-C cable into the USB Type-C port of the WaveShare CM4-IO-BASE-B board, and plug the other end into the computer.
- At this point, under normal circumstances, it will enter Maskrom mode, and the RKdevTool will detect a Maskrom device.
-
Prepare a USB-A to USB-C cable.
-
First, set the BOOT DIP switch on the board to the ON position.
- Then press and hold the eMMC Button (if this is the first time flashing, the button does not need to be pressed).
- Insert the USB-A to USB-C cable into the USB Type-C port of the WaveShare CM4-IO-BASE-B board, and plug the other end into the computer.
- At this point, under normal circumstances, it will enter Maskrom mode, and the RKdevTool will detect a Maskrom device.
Use rkdeveloptool
Write the file
When writing the file, rkdeveloptool will not automatically decompress compressed files.
Please first decompress the files you will be using and specify the decompressed files in rkdeveloptool.
rkdeveloptool does not support selecting the Maskrom device or the storage medium to write to. Typically, when using rkdeveloptool, only one device and one storage medium are hardware-connected. This step cannot be controlled by software.
If you need to write to multiple devices simultaneously, please use upgrade_tool.
-
Decompress the image file (for the image file details, refer to the Resource Download section. Here, we take radxa-cm3j-rpi-cm4-io_bullseye_xfce_b1.output.img.xz as an example).
xz -d radxa-cm3j-rpi-cm4-io_bullseye_xfce_b1.output.img.xz (If it's in gz format, use the command `gunzip -d xxx.gz`)
-
Flash the Loader (for the actual file details, refer to the Resource Download section. Here, we take rk356x_spl_loader_ddr1056_v1.12.109_no_check_todly.bin as an example).
sudo rkdeveloptool db rk356x_spl_loader_ddr1056_v1.12.109_no_check_todly.bin
-
Flash the image (the following image name is just an example; the actual image file is the one decompressed in step 1).
sudo rkdeveloptool wl 0 radxa-cm3j-rpi-cm4-io_bullseye_xfce_b1.output.img
Restart the device
sudo rkdeveloptool rd