Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

Difference between revisions of "Rockpi4/dev/usb-install/zh cn"

< Rockpi4‎ | dev‎ | usb-install
(通过USB烧写镜像到eMMC模块)
(引导Rock PI 进入Maskrom模式)
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
{{rockpi4_header}}
 
{{rockpi4_header}}
 
{{Languages|rockpi4/dev/usb-install/zh_cn}}
 
{{Languages|rockpi4/dev/usb-install/zh_cn}}
     [[rockpi4 | ROCK Pi 4]] > [[rockpi4/dev | Development]] > [[rockpi4/dev/usb-install | Install from USB OTG port]]
+
     [[rockpi4 | ROCK Pi 4]] > [[rockpi4/dev | Development]] > [[rockpi4/dev/usb-install/zh_cn | Install from USB OTG port]]
  
Rock PI支持Maskrom模式,这是一种CPU等待USB OTG口命令的特殊操作模式。'''rkdevelopment和AndroidTool'''是我们在Maskrom模式下用来与Rock PI通信的PC端烧录工具。在Linux/MacOS下使用的是'''rkdevelopment'''工具,而在Windows下使用的是'''AndroidTool'''工具。
+
Rock PI支持Maskrom模式,这是一种CPU等待USB OTG端口命令的特殊操作模式。'''rkdevelopment和AndroidTool'''是我们在Maskrom模式下用来与Rock PI通信的PC端烧录工具。在Linux/MacOS下使用的是'''rkdevelopment'''工具,而在Windows下使用的是'''AndroidTool'''工具。
  
 
=== 准备 ===
 
=== 准备 ===
Line 110: Line 110:
 
** 拔掉SD卡。
 
** 拔掉SD卡。
 
** 如果你的ROCK PI 4上有可拆卸的eMMC模块,请将其移除。
 
** 如果你的ROCK PI 4上有可拆卸的eMMC模块,请将其移除。
** 如果你的是ROCK PI 4 Plus版本,有焊接的eMMC,则需要按住maskrom键 (1: Maskrom 2: Reset 3: Recovery)
+
** 如果你的是ROCK PI 4 Plus版本,有焊接的eMMC,则需要按住maskrom键 (1: Reset 2: Maskrom 3: Recovery)
  
 
[[File:Rockpi4bplus_key.jpg|400px]]
 
[[File:Rockpi4bplus_key.jpg|400px]]
Line 183: Line 183:
  
 
提示:loader用于启动初始化RAM,并准备好烧录环境。如果你没有loader的bin文件,可以在[https://dl.radxa.com/rockpi/images/loader/ 这里]下载。
 
提示:loader用于启动初始化RAM,并准备好烧录环境。如果你没有loader的bin文件,可以在[https://dl.radxa.com/rockpi/images/loader/ 这里]下载。
 
  
 
===== 步骤 2: 选择镜像 =====
 
===== 步骤 2: 选择镜像 =====
  
点击图片中的右侧最后一列的'''...''',选择你要烧录的镜像
+
点击如上图片中的右侧最后一列的按钮,选择你要烧录的镜像
  
 
通常情况下,镜像的名字应该以xxx-gpt.img结尾。如果镜像名称以xxx-rkupdate.img结尾,你就不能用这个方法进行烧录。
 
通常情况下,镜像的名字应该以xxx-gpt.img结尾。如果镜像名称以xxx-rkupdate.img结尾,你就不能用这个方法进行烧录。
 
  
 
===== 步骤 3: 运行 =====
 
===== 步骤 3: 运行 =====
  
点击下面红框中的 "run "按钮,你会看到右边红框中的内容。当进度达到100%时,说明下载就完成了。
+
点击下面红框中的 "Run "按钮,你会看到右边红框中的内容。当进度达到100%时,说明下载就完成了。
  
 
[[File:Androidtool5.PNG | 600px]]
 
[[File:Androidtool5.PNG | 600px]]
Line 216: Line 214:
 
</pre>
 
</pre>
  
当ROCK pi 4处于maskrom模式时,可以根据下面的命令来烧写不同位置的分区
+
当ROCK PI 4处于maskrom模式时,可以根据下面的命令来烧写不同位置的分区
  
 
     rkdeveloptool db rk3399_loader_*.bin
 
     rkdeveloptool db rk3399_loader_*.bin
Line 228: Line 226:
  
 
<div class="toccolours mw-collapsible" style="width:800px; overflow:auto;">
 
<div class="toccolours mw-collapsible" style="width:800px; overflow:auto;">
 +
 
==== Windows ====
 
==== Windows ====
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">

Latest revision as of 09:15, 12 February 2022

    ROCK Pi 4 >  Development >  Install from USB OTG port

Rock PI支持Maskrom模式,这是一种CPU等待USB OTG端口命令的特殊操作模式。rkdevelopment和AndroidTool是我们在Maskrom模式下用来与Rock PI通信的PC端烧录工具。在Linux/MacOS下使用的是rkdevelopment工具,而在Windows下使用的是AndroidTool工具。

准备

  • ROCK Pi 4 主板
  • eMMC 模块
  • 电源适配器
  • USB A对A 的数据线 (参考).

安装工具以及驱动

Windows

步骤 1:安装 Androidtool 工具

这个工具是以压缩包的形式提供的。首先,下载这个工具的压缩包,点击这个链接下载(AndroidTool_Release_v2.69.zip)。下载之后解压并完成安装。

步骤 2:安装驱动

使用RK驱动助手工具来安装驱动。 在此过程中,不需要连接您的Rockchip设备,只需下载压缩包并解压RKDriverAssistant.zip。 然后双击RKDriverAssistant目录下的DriverInstall.exe,启动工具并点击Install Driver安装驱动。 如果你已经为其他Rockchip设备安装过Rockchip USB驱动,请先点击 "卸载驱动"。

RK Driver Assistant Install Uninstall.jpg

Linux

在Linux上,我们从源代码来编译构建rkdeveloptool工具。 要在Debian的Linux发行版上编译rkdeveloptool工具,请按照以下说明操作。

安装编译依赖:

 sudo apt-get install libudev-dev libusb-1.0-0-dev dh-autoreconf

克隆源码并编译:

 git clone https://github.com/rockchip-linux/rkdeveloptool
 cd rkdeveloptool
 autoreconf -i
 ./configure
 make

如果你遇到像下面这样的编译错误:

   ./configure: line 4269: syntax error near unexpected token `LIBUSB1,libusb-1.0'
   ./configure: line 4269: `PKG_CHECK_MODULES(LIBUSB1,libusb-1.0)'


你可以安装 pkg-config libusb-1.0

   sudo apt-get install pkg-config libusb-1.0

然后重新执行以下操作

   autoreconf -i
   ./configure
   make

现在你在当前目录下会有rkdeveloptool的可执行文件,并添加到系统工具中。

 sudo cp rkdeveloptool /usr/local/bin/

MacOS

在 macOS上,我们从源码来编译redeveloptool工具

为了在macOS上编译rkdeveloptool,你需要安装这个支持包homebrew

安装编译需要的依赖:

   brew install automake autoconf libusb lsusb

克隆源码并编译:

   git clone https://github.com/rockchip-linux/rkdeveloptool
   cd rkdeveloptool
   autoreconf -i
   ./configure
   make

如果出现像下面一样的编译错误

   ./configure: line 4269: syntax error near unexpected token `LIBUSB1,libusb-1.0'
   ./configure: line 4269: `PKG_CHECK_MODULES(LIBUSB1,libusb-1.0)'


你可以安装 pkg-config libusb-1.0

   brew install pkg-config

然后重新编译

   autoreconf -i
   ./configure
   make

现在,在当前目录下就会有rkdeveloptool的可执行文件

   sudo cp rkdeveloptool /usr/local/bin/

引导Rock PI 进入Maskrom模式

将ROCK Pi引导到maskrom模式非常简单,如下:

  • 1. 断电
    • 拔掉SD卡。
    • 如果你的ROCK PI 4上有可拆卸的eMMC模块,请将其移除。
    • 如果你的是ROCK PI 4 Plus版本,有焊接的eMMC,则需要按住maskrom键 (1: Reset 2: Maskrom 3: Recovery)

Rockpi4bplus key.jpg

  • 2. 用A对A的USB线,连接PC端的USB和ROCK PI 4的OTG接口(上面的USB3.0 接口),
  • 3. 按住Maskrom按键并且给ROCK PI 4上电
    • 4. 对于 Linux/macOS

在Linux PC端, 使用lsusb命令可以看到连接的USB设备。

   Bus 003 Device 005: ID 2207:330c
    • 4. 对于 Windows

在 Windows 端,打开设备管理器:

RK Driver Assistant Install Usb driver.png

这就意味着ROCK PI 4已经进入maskrom 模式.

  • 5. 现在插入eMMC模块,并进行下一步的烧写

另外,如果你运行的是安卓系统并且可以访问ADB,你可以将设备重启到loader模式adb rebootloader,然后使用rkdeveloptool将设备重置到maskrom模式`rkdeveloptool rd 3'`或者Windows AndroidTool Switch 按钮来进入maskrom模式。

通过USB烧写镜像到eMMC模块

Linux/macOS

在你的PC端,运行rkdeveloptool工具

   rkdeveloptool ld        # List the device
   DevNo=1	Vid=0x2207,Pid=0x330c,LocationID=305	Maskrom

loader文件用于启动初始化RAM,并准备好烧录环境。如果你没有xxx_loader_xxx.bin文件,可以在这里下载。

   rkdeveloptool db rk3399_loader_vxxxx.bin

0开始烧写GPT镜像到eMMC

   rkdeveloptool wl 0 /path/to/rockpi4b-xxx-gpt.img

重新启动设备

   rkdeveloptool rd

现在,设备应该会重新启动eMMC里的新镜像。

请注意,当你想擦除板上的eMMC时,你可以使用这个命令。可以从 这里下载到zero.img。

   rkdeveloptool db rk3399_loader_vxxxx.bin
   rkdeveloptool wl 0 zero.img

Windows

双击 AndroidTool.exe 会看到下面的界面: 如果你的ROCK Pi 4已经进入Maskrom模式并连接上电脑,你可以看到红框里面的字样:

AndroidTool1.PNG

步骤 1: 选择 Loader

点击下面红框并选择这个"rk3399_ loader_ xxxxx.bin "文件

AndroidTool8.PNG

提示:loader用于启动初始化RAM,并准备好烧录环境。如果你没有loader的bin文件,可以在这里下载。

步骤 2: 选择镜像

点击如上图片中的右侧最后一列的按钮,选择你要烧录的镜像

通常情况下,镜像的名字应该以xxx-gpt.img结尾。如果镜像名称以xxx-rkupdate.img结尾,你就不能用这个方法进行烧录。

步骤 3: 运行

点击下面红框中的 "Run "按钮,你会看到右边红框中的内容。当进度达到100%时,说明下载就完成了。

Androidtool5.PNG

按分区进行安装(高级)

Linux/macOS

有时我们只想更新镜像的一个分区,比如只更新boot分区,只更新kernel。我们可以通过分区来烧写

| Part Number | Offset | Name    | Description                |
| ----------- | ------ | ------- | -------------------------- |
| 1           | 32KB   | loader1 | First stage loader         |
| 2           | 8MB    | loader2 | U-boot image               |
| 3           | 12MB   | trust   | ATF                        |
| 4           | 16MB   | boot    | Kernel partition, bootable |
| 5           | 128MB  | rootfs  | Rootfs                     |

当ROCK PI 4处于maskrom模式时,可以根据下面的命令来烧写不同位置的分区

   rkdeveloptool db rk3399_loader_*.bin
   rkdeveloptool wl 64 idbloader.img
   rkdeveloptool wl 16384 uboot.img
   rkdeveloptool wl 24576 trust.img
   rkdeveloptool wl 32768 boot.img
   rkdeveloptool wl 262144 rootfs.img

Windows

TBD.

常见问题

如果你遇到了类似的问题,你可以试试rk3399_loader_v1.20.119.bin这个bin文件

Error-loader1.png Error-loader2.png

故障排除