8,367
edits
Changes
→The method of using the dd command to burn
# First, you need to prepare an M-Key 2280 specification NVMe SSD solid state drive, and the specification of the PCIe interface in the M.2 slot of the development board is PCIe3.0x4.
::[[File:media/image25.png|306x89px]]
<ol start="2" style="list-style-type: decimal;">
<li>Then insert the NVMe SSD into the M.2 PCIe interface of the development board shown in the figure below, and fix it</li></ol>
[[File:media/image90.png|274x110px]]
</ol>
<ol start="3" style="list-style-type: decimal;">
<li>The position of the SPI Flash on the development board is shown in the figure below, no other settings are required before starting the programming</li></ol>
[[File:media/image91.png|416x115px]]
</ol>
<ol start="4" style="list-style-type: decimal;">
<li><p>Burning the linux image to SPIFlash+NVMe SSD needs to be done with a TF card, so first you need to burn the linux image to the TF card, and then use the TF card to start the development board to enter the linux system. For the method of burning the Linux image to the TF card, please refer to the instructions in the two sections of [[Orange Pi 5 Plus#Method of burning Linux image to TF card based on Windows PC|'''the method of burning the Linux image to the TF card based on the Windows PC''' ]] and t[[Orange Pi 5 Plus#Method of burning Linux image to TF card based on Ubuntu PC|'''he the method of burning the Linux image to the TF card based on the Ubuntu PC''']]</p></li>
<li><p>After using the TF card to start the Linux system, we first burn the u-boot image into the SPI Flash</p>
<ol style="list-style-type: lower-alpha;">
<li>Run '''nand-sata-install''' first, '''<span style="color:#FF0000">ordinary users remember to add sudo permission.</span>'''</li></ol></li></ol>
{| class="wikitable" style="width:800px;"
|-
|
orangepi@orangepi:~$ '''sudo nand-sata-install'''
|}</ol>
<ol start="2" style="list-style-type: lower-alpha;">
<li>Then select '''7 Install/Update ther bootloader on SPI Flash'''</li></ol>
<div class="figure">
[[File:media/image92.png|355x174px|IMG_256]]
</div></ol>
<ol start="3" style="list-style-type: lower-alpha;">
<li>Then select '''<Yes>'''</li></ol>
<div class="figure">
[[File:media/image93.png|356x179px|IMG_256]]
</div></ol>
<ol start="4" style="list-style-type: lower-alpha;">
<li>Then please wait patiently for the burning to complete. After the burning is completed, the display will be as follows (a '''Done''' will be displayed in the lower left corner):</li></ol>
[[File:media/image94.png|406x199px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big>'''There is no nand-sata-install script in OPi OS Arch system, please use the following command to mirror u-boot to SPI Flash:'''</big>
[orangepi@orangepi ~]$ '''sudo dd if=/boot/rkspi_loader.img of=/dev/mtdblock0'''
|}</ol></li></ol>
<ol start="6" style="list-style-type: decimal;">
<li>Then upload the linux image file (Debian, Ubuntu or OpenWRT image downloaded from the official website) to the TF card. For the method of [[Orange Pi 5 Plus#The method of uploading files to the Linux system of the development board|'''uploading the linux image file to the development board,''' ]] please refer to the description in the section of the method of uploading files to the development board Linux system.</li></ol>
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big>'''Note, if you download the OpenWRT image, you will see the following two types of images in the download link of the OpenWRT image, please download the image file in the "TF card, eMMC and NVME SSD boot image" folder.'''</big>
<div class="figure">
</div>
|}
</ol>
<ol start="7" style="list-style-type: decimal;">
<li>After uploading the image to the linux system of the development board, we enter the storage path of the image file in the command line of the linux system of the development board. For example, I store the linux image of the development board in the '''/home/orangepi/Desktop''' directory Download it, and then enter the '''/home/orangepi/Desktop''' directory to see the uploaded image file.</li></ol>
{| class="wikitable" style="width:800px;"
|-
|
orangepi@orangepi:~$ '''cd /home/orangepi/Desktop'''
orangepi5plus_x.x.x_debian_bullseye_desktop_xfce_linux5.10.110.img
|}
<p>'''1. For the method of using the serial port to log in to the terminal, please refer to the instructions in the section on how to use the debugging serial port.'''</p>
<p>'''2. Use ssh to remotely log in to the Linux system, please refer to the instructions in the section of SSH remote login to the development board.'''</p>
<p>'''3. If HDMI, LCD and other display screens are connected, you can open a command line terminal on the desktop.'''</p></big>
|}
</ol>
<!-- -->
<ol start="8" style="list-style-type: decimal;">
<li>Next, let's confirm that the NVMe SSD has been recognized by the development board's linux. If the NVMe SSD is recognized normally, use the '''sudo fdisk -l''' command to see nvme-related information</li></ol>
{| class="wikitable" style="width:800px;"
|-
|
orangepi@orangepi:~/Desktop$ '''sudo fdisk -l | grep "nvme0n1"'''
Disk /dev/nvme0n1: 1.86 TiB, 2048408248320 bytes, 4000797360 sectors
|}
Use the lspci command to see an NVMe-related PCI device
{| class="wikitable" style="width:800px;"
|-
|
orangepi@orangepi:~$ '''lspci'''
0000:00:00.0 PCI bridge: Rockchip Electronics Co., Ltd Device 3588 (rev 01)
0000:01:00.0 Non-Volatile memory controller: SK hynix BC501 '''<span style="color:#FF0000">NVMe</span>''' Solid State Drive
.…
|}</ol>
<ol start="9" style="list-style-type: decimal;">
<li>Then we can use the dd command to clear the NVMe SSD (optional)</li></ol>
{| class="wikitable" style="width:800px;"
|-
|
orangepi@orangepi5plus:~/Desktop$ '''sudo dd bs=1M if=/dev/zero of=/dev/nvme0n1 count=2000 status=progress'''
orangepi@orangepi5plus:~/Desktop$ '''sudo sync'''
|}</ol>
<ol start="10" style="list-style-type: decimal;">
<li><p>Then you can use the dd command to burn the linux image of the development board to the NVMe SSD</p>
<ol style="list-style-type: lower-alpha;">
<li><p>In the following command, the '''if=''' parameter is followed by the full path where the linux image is stored + the name of the Linux image (such as '''the name of /home/orangepi/Desktop/Linux image'''). Because we have entered the path of the linux image above, we only need to fill in the name of the Linux image.</p></li>
<li><p>Please do not copy the linux image name in the following command, but replace it with the actual image name (because the version number of the image may be updated).</p></li></ol></li></ol>
{| class="wikitable" style="width:800px;"
|-
|
'''sudo dd bs=1M if=orangepi5plus_x.x.x_debian_bullseye_desktop_xfce_linux5.10.110.img of=/dev/nvme0n1 status=progress'''
'''sudo''' '''sync'''
|}
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big>'''<span style="color:#FF0000">Note, if you upload a <span style="color:blue">.7z or .xz or .gz </span> linux image compressed file, please remember to decompress it before using the dd command to burn.''' '''The detailed description of all parameters of the dd command and more usage can be viewed by executing the man dd command in the linux system.</span>'''
'''The detailed description of all parameters of the dd command and more usage can be viewed by executing the man dd command in the linux system.'''</big>
|}
</ol>
</li></ol>
<ol start="11" style="list-style-type: decimal;">
<li>After successfully burning the linux image of the development board to the NVMe SSD, you can use the poweroff command to shut down. Then please pull out the TF card, and then short press the power button to turn on, then the linux system in SPIFlash+NVMe SSD will be started.</li></ol>
<span id="how-to-use-balenaetcher-software-to-program"></span>
=== How to use balenaEtcher software to program ===