Changes

Jump to: navigation, search

Orange Pi Zero 3

962 bytes removed, 11:26, 12 July 2023
no edit summary
<big>'''Top view:'''</big>
[[File:media/image3zero3-img3.png|390x329px]]
<big>'''Bottom view:'''</big>
[[File:media/image4zero3-img4.png|494x292px]]
<span id="interface-details-of-orange-pi-zero-3"></span>
== Interface details of Orange Pi Zero 3 ==
[[File:media/image5zero3-img5.png|485x787px]]
[[File:media/image6zero3-img6.png|575x227px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
# TF card, a high-speed SanDisk card of class 10 or above with a minimum capacity of 8GB
::[[File:media/image7zero3-img7.png|124x96px]]
::{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<big>'''Using other brands of TF cards (non-SanDisk TF cards), as shown in the picture below (including but not limited to these cards), some friends have reported that there will be problems during the system startup process, such as the system is stuck halfway through startup, Or the reboot command cannot be used normally, and it was finally resolved after changing the SanDisk TF card. So if you use a non-SanDisk TF card and find that there is a problem with the system startup or use, please replace the SanDisk TF card and then test.'''</big>
[[File:media/image8zero3-img8.png|103x85px]][[File:media/image9zero3-img9.png|112x85px]][[File:media/image10zero3-img10.png|114x85px]][[File:media/image11zero3-img11.png|86x109px]]
'''Current feedback is that there are some TF cards that have problems starting on Orange Pi Zero 3'''
<li>TF card reader, used to read and write TF card</li>
[[File:media/image12zero3-img12.png|139x96px]]
</ol>
<ol start="3" style="list-style-type: decimal;">
<li>Micro HDMI to HDMI cable, used to connect the development board to an HDMI monitor or TV for display</li>
[[File:media/image13zero3-img13.png|215x222px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<big>'''Note, please do not use the relatively wide Micro HDMI adapter as shown in the figure below, because the distance between the Micro HDMI interface of the development board and the Type-C power interface is relatively small, it may cause that the two cannot be inserted into the development board at the same time. plate.'''</big>
[[File:media/image14zero3-img14.png|151x120px]]
|}
</ol>
<li>Power supply, if you have a 5V/2A or 5V/3A power head, you only need to prepare a USB-to-Type C interface data cable as shown in the picture on the left below, and you can also use a cable similar to the picture on the right below A 5V/2A or 5V/3A high-quality USB Typc C interface power adapter integrated with the power head.</li>
[[File:media/image15zero3-img15.png|217x223px]] [[File:media/image16zero3-img16.png|218x218px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<li>The physical object of the expansion board is as follows</li>
[[File:media/image17zero3-img17.png|252x154px]]
</ol>
<ol start="2" style="list-style-type: lower-alpha;">
<li>The way to insert the expansion board into the development board is as follows, remember not to insert it backwards</li>
[[File:media/image18zero3-img18.png|246x162px]]
</ol>
<ol start="3" style="list-style-type: lower-alpha;">
<li>The schematic diagram of the 13pin header of the Orange Pi Zero 3 development board is shown below</li>
[[File:media/image19zero3-img19.png|264x142px]]
</ol>
</li></ol>
<li><p>Infrared remote control, mainly used to control Android TV system</p></li>
[[File:media/image20zero3-img20.png|170x173px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<li><p>AV video cable, if you want to display video through the AV interface instead of the HDMI interface, then you need to connect the development board to the TV through the AV video cable</p></li>
[[File:media/image21zero3-img21.png|217x218px]]
</ol>
<ol start="10" style="list-style-type: decimal;">
<li>Heat sink, if you are worried that the temperature of the development board is too high, you can add a heat sink, and the heat sink can be pasted on the H618 chip</li>
[[File:media/image22zero3-img22.png|171x140px]] [[File:media/image23zero3-img23.png|151x147px]]
</ol>
<ol start="11" style="list-style-type: decimal;">
|}
[[File:media/image24zero3-img24.png|212x226px]]
</ol>
<ol start="12" style="list-style-type: decimal;">
<li><p>USB to TTL module and DuPont line, when using the serial port debugging function, need USB to TTL module and DuPont line to connect the development board and computer</p></li>
[[File:media/image25zero3-img25.png|176x118px]] [[File:media/image26zero3-img26.png|305x110px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<li>After entering the balenaEtcher download page, click the green download button to jump to the place where the software is downloaded</li>
[[File:media/image27zero3-img27.png|456x219px]]
</ol>
<ol start="6" style="list-style-type: decimal;">
<li>Then you can choose to download the Portable version of balenaEtcher software. The Portable version does not need to be installed, and you can use it by double-clicking to open it</li>
[[File:media/image28zero3-img28.png|468x173px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
<li>If the downloaded version of balenaEtcher needs to be installed, please install it before using it. If you downloaded the Portable version of balenaEtcher, just double-click to open it. The opened balenaEtcher interface is shown in the figure below</li>
[[File:media/image29zero3-img29.png|335x211px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<big>'''When opening balenaEtcher, if the following error is prompted:'''</big>
[[File:media/image30zero3-img30.png|206x162px]]
<big>'''Please select balenaEtcher, right-click, and select Run as administrator.'''</big>
[[File:media/image31zero3-img31.png|114x37px]]
|}
</ol>
<li><p>Then select the drive letter of the TF card</p></li>
<li><p>Finally click Flash to start burning the Linux image to the TF card</p>
[[File:media/image32zero3-img32.png|501x281px|03]]
</li></ol>
</li>
<li><p>The interface displayed in the process of burning the Linux image by balenaEtcher is shown in the figure below, and the progress bar displays purple, indicating that the Linux image is being burned into the TF card</p></li>
[[File:media/image33zero3-img33.png|506x317px]]
</ol>
<ol start="10" style="list-style-type: decimal;">
<li>After burning the Linux image, balenaEtcher will also verify the image burned to the TF card by default to ensure that there is no problem in the burning process. As shown in the figure below, a green progress bar indicates that the image has been burnt, and balenaEtcher is verifying the burnt image.</li>
[[File:media/image34zero3-img34.png|519x325px]]
</ol>
<ol start="11" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image35zero3-img35.png|523x324px|04]]
</div></ol>
<div class="figure">
[[File:media/image36zero3-img36.png|209x228px|选区_199]]
</div></ol>
<li>Then click &quot; '''Format''' &quot;, a warning box will pop up before formatting, and formatting will start after selecting &quot;Yes (Y)&quot;</li>
[[File:media/image37zero3-img37.png|304x147px]]
</ol>
<ol start="5" style="list-style-type: lower-alpha;">
<li>After formatting the TF card, the message shown in the figure below will pop up, click OK</li>
[[File:media/image38zero3-img38.png|186x149px]]
</ol>
</li></ol>
<div class="figure">
[[File:media/image39zero3-img39.png|297x206px|C:\Users\orangepi\Desktop\用户手册插图\Pi5 Plus\a8fda8737c5b0b3b38fbb75ef68acfc.pnga8fda8737c5b0b3b38fbb75ef68acfc]]
</div></ol>
<li>After entering the balenaEtcher download page, click the green download button to jump to the place where the software is downloaded</li>
[[File:media/image27zero3-img27.png|489x235px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<li>Then choose to download the Linux version of the software</li>
[[File:media/image40zero3-img40.png|485x184px]]
</ol>
<ol start="6" style="list-style-type: decimal;">
<li>Then double-click '''balenaEtcher-1.14.3-x64.AppImage''' on the graphical interface of Ubuntu PC to open balenaEtcher (no installation required), and the interface after balenaEtcher is opened is displayed as shown in the figure below</li>
[[File:media/image41zero3-img41.png|423x251px]]
</ol>
<ol start="9" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image32zero3-img32.png|501x281px|03]]
</div></ol>
<li>The interface displayed in the process of burning the Linux image by balenaEtcher is shown in the figure below, and the progress bar displays purple, indicating that the Linux image is being burned into the TF card</li>
[[File:media/image42zero3-img42.png|576x247px]]
</ol>
<ol start="11" style="list-style-type: decimal;">
<li>After burning the Linux image, balenaEtcher will also verify the image burned into the TF card by default to ensure that there is no problem in the burning process. As shown in the figure below, a green progress bar indicates that the image has been burnt, and balenaEtcher is verifying the burnt image</li>
[[File:media/image43zero3-img43.png|576x252px]]
</ol>
<ol start="12" style="list-style-type: decimal;">
<li>After successful burning, the display interface of balenaEtcher is as shown in the figure below. If a green indicator icon is displayed, it means that the image burning is successful. At this time, you can exit balenaEtcher, and then pull out the TF card and insert it into the TF card slot of the development board for use</li>
[[File:media/image44zero3-img44.png|576x340px]]
</ol>
<span id="how-to-burn-android-image-to-tf-card"></span>
# First, please make sure that the Windows system has installed '''Microsoft Visual C++ 2008 Redistrbutable - x86'''
::[[File:media/image45zero3-img45.png|449x293px]]
<ol start="2" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image46zero3-img46.png|522x395px|NUQB$Q%(){1CV6M6WK4N`5J]]
</div></ol>
<li>'''Microsoft Visual C++ 2008 Redistrbutable - x86''' the installation package can be downloaded from the [http://www.orangepi.online/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-Zero-3.html '''official tool'''] of Orange Pi Zero 3, or you can go to the [https://www.microsoft.com/zh-cn/download/details.aspx?id=26368 '''official website of Microsoft'''] to download</li>
[[File:media/image47zero3-img47.png|242x52px]] [[File:media/image48zero3-img48.png|200x95px]]
</ol>
<ol start="4" style="list-style-type: decimal;">
<li><p>Download the Android image and PhoenixCard programming tool from the [http://www.orangepi.online/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-Zero-3.html '''Orange Pi data download page''']. '''<span style="color:#FF0000">Please ensure that the version of the PhonenixCrad tool is PhonixCard-4.2.8.</span>''' Please do not use the PhonixCard software version lower than 4.2.8 to burn the Android image. There may be problems with the Android image flashed by this version of the PhonixCard tool</p></li>
[[File:media/image49zero3-img49.png|575x169px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
<li>Then use the decompression software to decompress the compressed package of the downloaded Android image. Among the decompressed files, the file ending with &quot;.img&quot; is the Android image file, and the size is more than 1GB. If you don't know how to decompress the compressed package of the Android image, you can install a [https://yasuo.360.cn/ '''compression software'''] to decompress the image.</li>
[[File:media/image50zero3-img50.png|438x158px]]
</ol>
<ol start="8" style="list-style-type: decimal;">
<li>Then use decompression software to decompress '''PhonixCard4.2.8.zip''', this software does not need to be installed, just find PhoenixCard in the decompressed folder and open it</li>
[[File:media/image51zero3-img51.png|576x113px]]
</ol>
<ol start="9" style="list-style-type: decimal;">
<li>After opening PhoenixCard, if the TF card is recognized normally, the drive letter and capacity of the TF card will be displayed in the middle list. '''<span style="color:#FF0000">Please make sure that the displayed drive letter is consistent with the drive letter of the TF card you want to burn</span>'''. If there is no display, you can try to unplug the TF card, or click the &quot;'''Refresh Drive Letter'''&quot; button in PhoenixCard</li>
[[File:media/image52zero3-img52.png|575x137px]]
</ol>
<ol start="10" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image53zero3-img53.png|575x316px|C:\Users\orangepi\Desktop\用户手册插图\Zero3\未标题-1.jpg未标题-1]]
</div>
<li><p>Then click the &quot;'''burn card'''&quot; button to start burning</p></li>
[[File:media/image54zero3-img54.png|576x431px]]
</ol>
</li></ol>
<div class="figure">
[[File:media/image55zero3-img55.png|575x358px|1]]
</div>
<big>'''After burning the Android system, the TF card can only see a 128 MB partition in Windows, and the displayed partition is as shown in the figure below (some computers may pop up more than 20 disk partitions, but only the 128 MB partition can be opened. partition), please note that this is normal, please do not think that the TF card is burned out. The reason for this is that the Android system has a total of more than 20 partitions, but most of them cannot be recognized normally in the Windows system. At this point, please safely unplug the TF card and insert it into the development board to start it.'''</big>
[[File:media/image56zero3-img56.png|193x45px]]
<big>'''After the Android system starts, use the following command to see the twenty or so partitions in the TF card:'''</big>
[[File:media/image57zero3-img57.png|368x131px]]
<big>'''Use the df -h command to see that the 16GB TF card has about 11 GB of space available after burning the Android system (more than 20 partitions will not be mounted to the Android system, focus on these to the partition).'''</big>
[[File:media/image58zero3-img58.png|391x220px]]
|}
</ol>
There is a 16MB SPI Flash on the development board, and its location is shown in the figure below:
[[File:media/image59zero3-img59.png|285x185px]]
There is a tiny linux system programmed into SPI Flash by default, which is mainly used to prove that the development board can start normally. When you get the development board, you don't need to burn the system into the TF card, you only need to connect the Type-C power supply to the development board to start the micro linux system in the SPI Flash. The main functions of this system are:
<div class="figure">
::[[File:media/image60zero3-img60.png|552x110px|7]]
</div>
<li>The corresponding relationship between GND, TX and RX pins of the debugging serial port of the development board is shown in the figure below</li>
[[File:media/image61zero3-img61.png|328x185px]]
</ol>
<ol start="3" style="list-style-type: decimal;">
<li><p>The schematic diagram of connecting the USB to TTL module to the computer and the Orange Pi development board is as follows</p></li>
[[File:media/image62zero3-img62.png|553x204px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<li>After executing the putty command, the following interface will pop up</li>
[[File:media/image63zero3-img63.png|332x290px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image64zero3-img64.png|337x297px|9]]
</div></ol>
<div class="figure">
[[File:media/image65zero3-img65.png|398x352px|10]]
</div></ol>
<div class="figure">
[[File:media/image66zero3-img66.png|375x333px|11]]
</div></ol>
<li>Then start the development board, and you can see the Log information output by the system from the opened serial port terminal</li>
[[File:media/image67zero3-img67.png|376x249px]]
</ol>
<span id="how-to-use-the-debugging-serial-port-on-windows-platform"></span>
<li>After entering the MobaXterm download page, click '''GET XOBATERM NOW!'''</li>
[[File:media/image68zero3-img68.png|382x233px]]
</ol>
<ol start="3" style="list-style-type: lower-alpha;">
<li>Then choose to download the Home version</li>
[[File:media/image69zero3-img69.png|353x231px]]
</ol>
<ol start="4" style="list-style-type: lower-alpha;">
<div class="figure">
[[File:media/image70zero3-img70.png|322x175px|选区_232]]
</div></ol>
<li>After downloading, use decompression software to decompress the downloaded compressed package, you can get the executable software of MobaXterm, and then double-click to open</li>
[[File:media/image71zero3-img71.png|576x83px]]
</ol>
<ol start="3" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image72zero3-img72.png|553x280px|12]]
</div></ol>
<div class="figure">
[[File:media/image73zero3-img73.png|628x318px|13]]
</div></ol>
<div class="figure">
::[[File:media/image74zero3-img74.png|223x160px|图片4]]
</div>
<li><p>The positions of the 5V pin and GND pin of the 26pin and 13pin interfaces in the development board are shown in the figure below'''<span style="color:#FF0000">, remember not to reverse the connection.</span>'''</p></li>
[[File:media/image24zero3-img24.png|163x174px]]
</ol>
</li></ol>
# If you have purchased a 13pin expansion board for Orange Pi, insert the expansion board into the 13pin interface of the development board to expand 2 USB interfaces
::[[File:media/image18zero3-img18.png|246x162px]]
<ol start="2" style="list-style-type: decimal;">
<li>First, you need to prepare a 4pin 2.54mm Dupont to USB2.0 female cable (this cable can be bought on Taobao, please search and buy by yourself), as shown in the figure below:</li>
[[File:media/image75zero3-img75.png|208x162px]] [[File:media/image76zero3-img76.png|237x165px|C:\Users\orangepi\Desktop\用户手册插图\Zero3\未标题-2.jpg未标题-2]]
</ol>
<ol start="2" style="list-style-type: lower-alpha;">
<li>The schematic diagram of the 13pin interface is shown below</li>
[[File:media/image19zero3-img19.png|265x142px]] [[File:media/image77zero3-img77.png|219x152px|C:\Users\orangepi\Desktop\用户手册插图\Zero3\未标题-3.jpg未标题-3]]
</ol>
<ol start="3" style="list-style-type: lower-alpha;">
<li>The wiring of USB2 is as follows</li>
[[File:media/image78zero3-img78.png|256x189px]]
</ol>
<ol start="4" style="list-style-type: lower-alpha;">
<li>The wiring of USB3 is as follows</li>
[[File:media/image79zero3-img79.png|255x195px]]
</ol>
<ol start="5" style="list-style-type: lower-alpha;">
<li>If you need to connect two USB devices to the 13pin interface at the same time, you will find that the 5V and GND pins on the 13pin interface are not enough. At this time, one of the USB devices can use the 5V and GND pins in the 26pin interface. The location is as shown in the figure below Shown:</li>
[[File:media/image24zero3-img24.png|243x260px]]
</ol>
</li></ol>
After entering the download page of the corresponding development board on the Orange Pi data download page, you can see the following download options. In the description below, the Ubuntu image and the Debian image are generally referred to as the Linux image.
[[File:media/image80zero3-img80.png|207x123px]]
The naming rules of Linux images are as follows:
# The Linux system automatically logs in to the terminal by default, and the default login user name is '''<span style="color:#FF0000">orangepi</span>'''
::[[File:media/image81zero3-img81.png|475x240px]]
<ol start="2" style="list-style-type: decimal;">
<div class="figure">
::[[File:media/image82zero3-img82.png|576x324px|1]]
</div>
<div class="figure">
[[File:media/image83zero3-img83.png|569x320px|IMG_256]]
</div></ol>
<li>Then restart the system, and the root user will automatically log in to the desktop</li>
[[File:media/image84zero3-img84.png|294x123px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<li>Then select '''System'''</li>
[[File:media/image85zero3-img85.png|398x194px]]
</ol>
<ol start="3" style="list-style-type: lower-alpha;">
<li>Then select '''Hardware'''</li>
[[File:media/image86zero3-img86.png|393x202px]]
</ol>
<ol start="4" style="list-style-type: lower-alpha;">
<li>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the space to select '''disable-leds'''</li>
[[File:media/image87zero3-img87.png|397x35px]]
</ol>
<ol start="5" style="list-style-type: lower-alpha;">
<li>Then selec '''&lt;Save&gt;'''</li>
[[File:media/image88zero3-img88.png|397x92px]]
</ol>
<ol start="6" style="list-style-type: lower-alpha;">
<li>Then select '''&lt;Back&gt;'''</li>
[[File:media/image89zero3-img89.png|395x91px]]
</ol>
<ol start="7" style="list-style-type: lower-alpha;">
<li>Then select '''&lt;Reboot&gt;''' to restart the system for the configuration to take effect</li>
[[File:media/image90zero3-img90.png|374x187px]]
</ol>
<ol start="8" style="list-style-type: lower-alpha;">
<li>After opening gparted, you can select the TF card in the upper right corner, and then you can see the usage of the TF card capacity</li>
[[File:media/image91zero3-img91.png|575x210px]]
</ol>
<ol start="4" style="list-style-type: lower-alpha;">
<li>After starting the Linux system for the first time, we can also remove the TF card from the development board and reinsert it into the '''<span style="color:#FF0000">Ubuntu computer</span>''', and then use gparted to check the status of the TF card again, as shown in the figure below, the rootfs partition (/dev/ The capacity of sdc1) has been expanded to 14.69GiB</li>
[[File:media/image92zero3-img92.png|575x211px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<li>After opening gparted, you can select the TF card in the upper right corner, and then you can see the usage of the TF card capacity. The figure below shows the situation of the TF card after burning the Linux desktop version system. It can be seen that although the total capacity of the TF card is 16GB (displayed as 14.84GiB in GParted), the rootfs partition (/dev/sdc1) Only 4.05GiB were actually allocated, leaving 10.79GiB unallocated</li>
[[File:media/image91zero3-img91.png|575x210px]]
</ol>
<ol start="8" style="list-style-type: decimal;">
<li>Then select the rootfs partition (/dev/sdc1)</li>
[[File:media/image93zero3-img93.png|575x211px]]
</ol>
<ol start="9" style="list-style-type: decimal;">
<li>Click the right mouse button again to see the operation options shown in the figure below. If the TF card has been mounted, first you need to Umount the rootfs partition of the TF card</li>
[[File:media/image94zero3-img94.png|436x298px]]
</ol>
<ol start="10" style="list-style-type: decimal;">
<li>Then select the rootfs partition again, click the right mouse button, and select '''Resize/Move''' to start expanding the size of the rootfs partition</li>
[[File:media/image95zero3-img95.png|444x302px]]
</ol>
<ol start="11" style="list-style-type: decimal;">
<li>After the '''Resize/Move''' option is turned on, the following setting interface will pop up</li>
[[File:media/image96zero3-img96.png|315x193px]]
</ol>
<ol start="12" style="list-style-type: decimal;">
<li>Then you can directly drag the location shown in the figure below to set the size of the capacity, or you can set the size of the rootfs partition by setting the number in '''New sieze(MiB)'''</li>
[[File:media/image97zero3-img97.png|320x191px]]
</ol>
<ol start="13" style="list-style-type: decimal;">
<li>After setting the capacity, click '''Resize/Move''' in the lower right corner</li>
[[File:media/image98zero3-img98.png|327x196px]]
</ol>
<ol start="14" style="list-style-type: decimal;">
<li>After confirming that it is correct, click the green button shown in the figure below '''<span style="color:green">√</span>'''</li>
[[File:media/image99zero3-img99.png|392x270px]]
</ol>
<ol start="15" style="list-style-type: decimal;">
<li>Then select'''Apply''', It will officially start to expand the capacity of the rootfs partition</li>
[[File:media/image100zero3-img100.png|399x116px]]
</ol>
<ol start="16" style="list-style-type: decimal;">
<li>After the expansion is completed, click '''Close''' to close</li>
[[File:media/image101zero3-img101.png|399x172px]]
</ol>
<ol start="17" style="list-style-type: decimal;">
<li>After opening gparted, you can select the TF card in the upper right corner, and then you can see the usage of the TF card capacity</li>
[[File:media/image102zero3-img102.png|575x217px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<li>Then select the rootfs partition (/dev/sdc1)</li>
[[File:media/image103zero3-img103.png|575x217px]]
</ol>
<ol start="6" style="list-style-type: decimal;">
<li>Click the right mouse button again to see the operation options shown in the figure below. If the TF card has been mounted, first you need to Umount the rootfs partition of the TF card</li>
[[File:media/image104zero3-img104.png|400x274px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
<li>Then select the rootfs partition again, click the right mouse button, and select '''Resize/Move''' to start setting the size of the rootfs partition</li>
[[File:media/image105zero3-img105.png|399x273px]]
</ol>
<ol start="8" style="list-style-type: decimal;">
<li>After the'''Resize/Move''' option is turned on, the following setting interface will pop up</li>
[[File:media/image106zero3-img106.png|315x188px]]
</ol>
<ol start="9" style="list-style-type: decimal;">
<li>Then you can directly drag the location shown in the figure below to set the size of the capacity, or you can set the size of the rootfs partition by setting the number in '''New sieze(MiB)'''</li>
[[File:media/image97zero3-img97.png|318x190px]]
</ol>
<ol start="10" style="list-style-type: decimal;">
<li>After setting the capacity, click'''Resize/Move''' in the lower right corner</li>
[[File:media/image98zero3-img98.png|327x196px]]
</ol>
<ol start="11" style="list-style-type: decimal;">
<li>After confirming that it is correct, click the green button shown in the figure below '''<span style="color:green">√</span>'''</li>
[[File:media/image99zero3-img99.png|392x270px]]
</ol>
<ol start="12" style="list-style-type: decimal;">
<li>Then select '''Apply''', and the expansion of the rootfs partition will officially start</li>
[[File:media/image100zero3-img100.png|365x106px]]
</ol>
<ol start="13" style="list-style-type: decimal;">
<li>After the expansion is completed, click '''Close''' to close</li>
[[File:media/image101zero3-img101.png|379x164px]]
</ol>
<ol start="14" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image107zero3-img107.png|575x250px|选区_011]]
</div>
<li>Enter the nmtui command to open the interface as shown below</li>
[[File:media/image108zero3-img108.png|345x215px]]
</ol>
<ol start="4" style="list-style-type: decimal;">
<li>Select '''Activate a connect''' and press Enter</li>
[[File:media/image109zero3-img109.png|349x216px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image110zero3-img110.png|426x270px|16]]
</div></ol>
<div class="figure">
[[File:media/image111zero3-img111.png|474x298px|17]]
</div></ol>
<div class="figure">
[[File:media/image112zero3-img112.png|480x308px|18]]
</div></ol>
<div class="figure">
[[File:media/image113zero3-img113.png|443x283px|19]]
</div></ol>
# Click the network configuration icon in the upper right corner of the desktop (please do not connect the network cable when testing WIFI)
::[[File:media/image114zero3-img114.png|275x121px]]
<ol start="2" style="list-style-type: decimal;">
<li>Click '''More networks''' in the pop-up drop-down box to see all scanned WIFI hotspots, and then select the WIFI hotspot you want to connect to</li>
[[File:media/image115zero3-img115.png|576x353px]]
</ol>
<ol start="3" style="list-style-type: decimal;">
<li>Then enter the password of the WIFI hotspot, and then click '''Connect'''to start connecting to WIFI</li>
[[File:media/image116zero3-img116.png|288x147px]]
</ol>
<ol start="4" style="list-style-type: decimal;">
<li>After connecting to WIFI, you can open the browser to check whether you can access the Internet. The entrance of the browser is shown in the figure below</li>
[[File:media/image117zero3-img117.png|465x249px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<li>If you can open other web pages after opening the browser, it means that the WIFI connection is normal</li>
[[File:media/image118zero3-img118.png|576x222px]]
</ol>
<span id="the-method-of-creating-wifi-hotspot-through-create_ap"></span>
<li>Take out the mobile phone at this time, you can find the WIFI hotspot named '''orangepi''' created by the development board in the searched WIFI list, and then you can click '''orangepi''' to connect to the hotspot, the password is set above '''orangepi'''</li>
[[File:media/image119zero3-img119.png|230x183px]]
</ol>
<ol start="4" style="list-style-type: decimal;">
<li>After the connection is successful, the display is as shown in the figure below</li>
[[File:media/image120zero3-img120.png|233x111px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
By default, the DHCP service of the development board will assign an IP address of '''192.168.12.0/24''' to the device connected to the hotspot. At this time, click on the connected WIFI hotspot '''orangepi''', and then you can see that the IP address of the mobile phone is '''192.168.12.X'''
[[File:media/image120zero3-img120.png|271x129px]]
[[File:media/image121zero3-img121.png|274x155px]]
</li></ol>
<ol start="6" style="list-style-type: decimal;">
At this time, after connecting to the hotspot through the mobile phone, click on the connected WIFI hotspot '''orangepi''', and then you can see that the IP address of the mobile phone is '''192.168.2.X'''.
[[File:media/image120zero3-img120.png|286x137px]]
[[File:media/image122zero3-img122.png|302x174px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
At this time, the mobile phone cannot search for the WIFI hotspot. You need to manually specify the name of the WIFI hotspot and enter the password to connect to the WIFI hotspot.
[[File:media/image123zero3-img123.png|237x198px]]
</li></ol>
<span id="create_ap-method-to-create-wifi-hotspot-in-bridge-mode"></span>
<li>Take out the mobile phone at this time, and you can find the WIFI hotspot named orangepi created by the development board in the searched WIFI list, and then you can click '''orangepi''' to connect to the hotspot, and the password is the '''orangepi''' set above</li>
[[File:media/image119zero3-img119.png|265x211px]]
</ol>
<ol start="4" style="list-style-type: decimal;">
<li>After the connection is successful, the display is as shown in the figure below</li>
[[File:media/image120zero3-img120.png|273x130px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
The IP of the device connected to the WIFI hotspot is also assigned by the main router, so the mobile phone connected to the WIFI hotspot and the development board are in the same network segment. At this time, click on the connected WIFI hotspot orangepi, and then you can see the IP address of the mobile phone Also '''192.168.1.X'''.
[[File:media/image120zero3-img120.png|284x136px]]
[[File:media/image124zero3-img124.png|282x159px]]
</ol>
<ol start="6" style="list-style-type: decimal;">
At this time, the mobile phone cannot search for the WIFI hotspot. You need to manually specify the name of the WIFI hotspot and enter the password to connect to the WIFI hotspot.
[[File:media/image123zero3-img123.png|228x191px]]
</li></ol>
<span id="how-to-set-static-ip-address"></span>
</li>
<li><p>Then select '''Edit a connection''' and press Enter</p>
<p>[[File:media/image125zero3-img125.png|227x247px]]</p></li>
<li><p>Then select the network interface that needs to set a static IP address, for example, to set the static IP address of the '''Ethernet''' interface, select '''Wired connection 1'''.</p>
<p>[[File:media/image126zero3-img126.png|310x149px]]</p></li>
<li><p>Then select '''Edit''' with the '''Tab''' key and press the Enter key</p>
<p>[[File:media/image127zero3-img127.png|316x144px]]</p></li>
<li><p>Then use the Tab key to move the cursor to the '''&lt;Automatic&gt;''' position shown in the figure below to configure IPv4</p>
<p>[[File:media/image128zero3-img128.png|575x240px]]</p></li>
<li><p>Then press Enter, select '''Manual''' through the up and down arrow keys, and press Enter to confirm</p>
<p>[[File:media/image129zero3-img129.png|576x237px]]</p></li>
<li><p>The display after selection is shown in the figure below</p>
<p>[[File:media/image130zero3-img130.png|575x240px]]</p></li>
<li><p>Then move the cursor to '''&lt;Show&gt;''' via the Tab key</p>
<p>[[File:media/image131zero3-img131.png|576x241px]]</p></li>
<li><p>Then press Enter, the following setting interface will pop up after entering</p>
<p>[[File:media/image132zero3-img132.png|575x450px]]</p></li>
<li><p>Then you can set the IP address (Addresses), gateway (Gateway) and DNS server address in the position shown in the figure below (there are many other setting options in it, please explore by yourself), '''<span style="color:#FF0000">please set according to your specific needs, The values set in the image below are just an example</span>'''</p>
<p>[[File:media/image133zero3-img133.png|576x233px]]</p></li>
<li><p>After setting, move the cursor to '''&lt;OK&gt;''' in the lower right corner, and press Enter to confirm</p>
<p>[[File:media/image134zero3-img134.png|576x116px]]</p></li>
<li><p>Then click '''&lt;Back&gt;''' to return to the previous selection interface</p>
<p>[[File:media/image135zero3-img135.png|330x325px]]</p></li>
<li><p>Then select '''Activate a connection''', then move the cursor to '''&lt;OK&gt;''', and finally click Enter</p>
<p>[[File:media/image136zero3-img136.png|331x248px]]</p></li>
<li><p>Then select the network interface that needs to be set, such as '''Wired connection 1''', then move the cursor to &lt;Deactivate&gt;, and press the Enter key to disable '''Wired connection 1'''</p>
<p>[[File:media/image137zero3-img137.png|576x224px]]</p></li>
<li><p>Then please do not move the cursor, and then press the Enter key to re-enable '''Wired connection 1''', so that the static IP address set earlier will take effect</p>
<p>[[File:media/image138zero3-img138.png|576x224px]]</p></li>
<li><p>Then you can exit nmtui through the '''&lt;Back&gt;''' and '''Quit''' buttons</p>
<p>[[File:media/image139zero3-img139.png|300x253px]] [[File:media/image140zero3-img140.png|227x252px]]</p></li>
<li><p>Then through '''ip a s eth0''', you can see that the IP address of the network port has changed to the static IP address set earlier</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<ol start="3" style="list-style-type: decimal;">
<li><p>After successfully logging in to the system, the display is as shown in the figure below</p>
<p>[[File:media/image141zero3-img141.png|575x273px]]</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
|-
<div class="figure">
[[File:media/image142zero3-img142.png|553x280px|14]]
</div></li></ol>
<div class="figure">
[[File:media/image143zero3-img143.png|553x151px|15]]
</div></li>
<li><p>The display after successfully logging in to the system is shown in the figure below</p>
<p>[[File:media/image144zero3-img144.png|559x388px]]</p></li></ol>
<span id="hdmi-test"></span>
<ol style="list-style-type: decimal;">
<li><p>Use a Micro HDMI to HDMI cable to connect the Orange Pi development board and HDMI display</p>
<p>[[File:media/image13zero3-img13.png|167x172px]]</p></li>
<li><p>After starting the linux system, if the HDMI monitor has image output, it means that the HDMI interface is working normally</p>
<ol style="list-style-type: lower-alpha;">
<li><p>HDMI to VGA converter</p>
<p>[[File:media/image145zero3-img145.png|155x104px]]</p></li>
<li><p>A VGA cable and a Micro HDMI male to HDMI female conversion cable</p>
<p>[[File:media/image146zero3-img146.png|148x133px]] [[File:media/image147zero3-img147.png|157x139px|IMG_6140(20220104-134930)]]</p></li>
<li><p>A monitor or TV that supports VGA interface</p></li></ol>
</li>
<li><p>HDMI to VGA display test as shown below</p>
<p>[[File:media/image148zero3-img148.png|574x336px]]</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
|-
<p>orangepi@orangepi:~$ '''sudo cat /sys/class/disp/disp/attr/sys'''</p>
|}
<p>[[File:media/image149zero3-img149.png|575x84px]]</p></li></ol>
<span id="how-to-modify-the-framebuffer-width-and-height-of-linux5.4-system"></span>
<ol style="list-style-type: decimal;">
<li><p>Click the Bluetooth icon in the upper right corner of the desktop</p>
<p>[[File:media/image150zero3-img150.png|314x122px]]</p></li>
<li><p>Then select the adapter</p>
<p>[[File:media/image151zero3-img151.png|318x140px]]</p></li>
<li><p>If there is a prompt on the following interface, please select '''Yes'''</p>
<p>[[File:media/image152zero3-img152.png|248x85px]]</p></li>
<li><p>Then set the '''Visibility Setting''' to '''Always visible''' in the Bluetooth adapter setting interface, and then close it</p>
<p>[[File:media/image153zero3-img153.png|196x183px]]</p></li>
<li><p>Then open the configuration interface of the Bluetooth device</p>
<p>[[File:media/image154zero3-img154.png|438x179px]]</p></li>
<li><p>Click '''Search''' to start scanning the surrounding Bluetooth devices</p>
<p>[[File:media/image155zero3-img155.png|311x210px]]</p></li>
<li><p>Then select the Bluetooth device you want to connect to, and then click the right button of the mouse to pop up the operation interface for this Bluetooth device, select '''Pair''' to start pairing, and the demonstration here is to pair with an Android phone</p>
<p>[[File:media/image156zero3-img156.png|311x242px]]</p></li>
<li><p>When pairing, a pairing confirmation box will pop up in the upper right corner of the desktop, just select '''Confirm''' to confirm, and the phone also needs to confirm at this time</p>
<p>[[File:media/image157zero3-img157.png|411x150px]]</p></li>
<li><p>After pairing with the mobile phone, you can select the paired Bluetooth device, then right click and select '''Send a File''' to start sending a picture to the mobile phone</p>
<p>[[File:media/image158zero3-img158.png|405x239px]]</p></li>
<li><p>The interface for sending pictures is as follows</p>
<p>[[File:media/image159zero3-img159.png|399x231px]]</p></li></ol>
<span id="how-to-use-the-server-image"></span>
</li>
<li><p>After the pairing is successful, the Bluetooth interface of the mobile phone will be displayed as follows</p>
<p>[[File:media/image160zero3-img160.png|189x167px]]</p></li>
<li><p>To connect a Bluetooth device, you need to install the '''pulseaudio-module-bluetooth''' package, and then start the '''pulseaudio''' service</p>
{| class="wikitable" style="width:800px;"
<div class="figure">
[[File:media/image161zero3-img161.png|223x232px|Screenshot_20201205_142413]]
</div></li></ol>
<div class="figure">
[[File:media/image162zero3-img162.png|575x278px|图片9]]
</div></li></ol>
<div class="figure">
[[File:media/image163zero3-img163.png|126x125px|IMG_256]]
</div></li>
<ol style="list-style-type: decimal;">
<li><p>First open the file manager</p>
<p>[[File:media/image164zero3-img164.png|257x126px]]</p></li>
<li><p>Then find the following file (if there is no audio file in the system, you can upload an audio file to the system yourself)</p>
<div class="figure">
[[File:media/image165zero3-img165.png|236x186px|图片10]]
</div></li>
<li><p>Then select the audio.wav file, right click and select open with vlc to start playing</p>
<p>[[File:media/image166zero3-img166.png|241x195px]]</p></li>
<li><p>How to switch between different audio devices such as HDMI playback and headphone playback</p>
<ol style="list-style-type: lower-alpha;">
<li><p>First open the volume control interface</p>
<p>[[File:media/image167zero3-img167.png|294x161px]]</p></li>
<li><p>When playing audio, the audio device options that the playback software can use will be displayed in '''Playback''', as shown in the figure below, where you can set which audio device to play to</p>
<div class="figure">
[[File:media/image168zero3-img168.png|576x324px|4]]
</div></li></ol>
<div class="figure">
[[File:media/image163zero3-img163.png|164x163px|IMG_256]]
</div></li>
<div class="figure">
[[File:media/image169zero3-img169.png|140x131px|IMG_256]]
</div></li>
<div class="figure">
[[File:media/image170zero3-img170.png|245x133px|C:\Users\orangepi\Desktop\用户手册插图\Zero3\未标题-3.jpg未标题-3]]
</div></li>
<li><p>The schematic diagram of the 13pin interface of the development board is as follows</p>
<p>[[File:media/image19zero3-img19.png|359x193px]]</p></li>
<li><p>The function description of the 13 pin expansion board interface pins of the development board is as follows</p>
<ol style="list-style-type: lower-alpha;">
<ol style="list-style-type: decimal;">
<li><p>For the order of the 26-pin interface pins on the Orange Pi Zero 3 development board, please refer to the silkscreen diagram on the development board</p>
<p>[[File:media/image171zero3-img171.png|389x125px]]</p></li>
<li><p>The functions of the 26 pin interface pins on the development board are shown in the table below</p>
'''After entering the system, you can run the gpio readall command. If you can see the following output, it means that wiringOP has been pre-installed and can be used normally.'''</big>
[[File:media/image172zero3-img172.png|575x365px]]
<big>'''wiringOP is currently mainly adapted to the functions of setting GPIO port input and output, setting GPIO port output high and low levels, and setting up and down pull-down resistors. Functions such as hardware PWM are not available.'''</big>
<li><p>Pin 33 corresponds to pin 13 of 13pin on the development board</p></li>
<li><p>'''<span style="color:#FF0000">Pins 28, 30, 32, and 34 are empty, please ignore them</span>'''</p>
<p>[[File:media/image172zero3-img172.png|575x365px]]</p></li></ol>
</li></ol>
<ol style="list-style-type: decimal;">
<li><p>The following takes pin 7—corresponding to GPIO as PC9—corresponding to wPi number 2—as an example to demonstrate how to set the high and low levels of the GPIO port</p>
<p>[[File:media/image173zero3-img173.png|576x128px]]</p></li>
<li><p>First set the GPIO port to output mode, where the third parameter requires the serial number of the wPi corresponding to the input pin</p>
{| class="wikitable" style="width:800px;"
|}
<p>Use gpio readall to see that the value (V) of pin 7 has changed to 0</p>
<p>[[File:media/image174zero3-img174.png|575x128px]]</p></li>
<li><p>Then set the GPIO port to output a high level. After setting, you can use a multimeter to measure the voltage value of the pin. If it is 3.3v, it means that the high level is set successfully.</p>
{| class="wikitable" style="width:800px;"
|}
<p>Use gpio readall to see that the value (V) of pin 7 has changed to 1</p>
<p>[[File:media/image175zero3-img175.png|575x130px]]</p></li>
<li><p>The setting method of other pins is similar, just modify the serial number of wPi to the corresponding serial number of the pin</p></li></ol>
<ol style="list-style-type: decimal;">
<li><p>The following takes pin 7—the corresponding GPIO is PC9—the corresponding wPi number is 2—as an example to demonstrate how to set the pull-up and pull-down resistors of the GPIO port</p>
<p>[[File:media/image173zero3-img173.png|576x128px]]</p></li>
<li><p>First, you need to set the GPIO port to the input mode, and the third parameter needs to be the serial number of the wPi corresponding to the input pin</p>
{| class="wikitable" style="width:800px;"
<ol style="list-style-type: decimal;">
<li><p>According to the schematic diagram of the 26pin interface, the available spi is spi1</p>
<p>[[File:media/image176zero3-img176.png|565x209px]]</p></li>
<li><p>The spi1 is disabled by default in the Linux system and needs to be manually enabled before it can be used. The steps to open are as follows:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|398x194px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the '''space''' to select '''spi1-cs1-spidev'''</p>
<p>[[File:media/image177zero3-img177.png|392x57px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|397x92px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>Then check whether there is a '''spidev1.1''' device node in the Linux system. If it exists, it means that the configuration of SPI1 has taken effect</p>
<ol style="list-style-type: decimal;">
<li><p>According to the schematic diagram of 26pin, the available i2c is i2c3</p>
<p>[[File:media/image178zero3-img178.png|575x204px]]</p></li>
<li><p>i2c3 is disabled by default in the Linux system, and it needs to be manually enabled before it can be used. The steps to open are as follows:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|390x190px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the '''space''' to select '''ph-i2c3'''</p>
<p>[[File:media/image179zero3-img179.png|392x57px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>After starting the linux system, first confirm that there is an i2c3 device node under /dev</p>
<div class="figure">
[[File:media/image180zero3-img180.png|383x151px|选区_460]]
</div></li></ol>
<ol style="list-style-type: decimal;">
<li><p>According to the schematic diagram of the 26pin interface, the available uart is uart5</p>
<p>[[File:media/image181zero3-img181.png|575x203px]]</p></li>
<li><p>uart5 is disabled by default in the Linux system, and it needs to be opened manually to use it. The steps to open are as follows:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|398x194px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the '''space''' to select '''ph-uart5'''</p>
<p>[[File:media/image182zero3-img182.png|400x60px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|397x92px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>After entering the linux system, first confirm whether there is a uart5 device node under '''/dev'''</p>
<big>'''The development board can use up to 4 channels of PWM, and the positions of their pins are shown in the figure below:'''</big>
[[File:media/image183zero3-img183.png|388x180px]]
|}
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|398x194px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the space to select the configuration corresponding to pwm</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<p>'''PWM3, PWM4 and the TX and RX pins in the debug serial port are multiplexed, so when using PWM3 and PWM4 (need to select ph-pwm34), please turn off the configuration of UART0 (need to select disable-uart0), after turning off UART0 The debug serial port cannot be used.'''</p></big>
|}
<p>[[File:media/image184zero3-img184.png|402x156px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|397x92px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>After restarting, the PWM test can be started</p>
<div class="figure">
[[File:media/image185zero3-img185.png|574x344px|69D96433378187B10005CDD2A52881B0]]
</div></ol>
|
<big>'''wiringOP-Python is the same as wiringOP, you can also determine which GPIO pin to operate by specifying the wPi number, because there is no command to check the wPi number in wiringOP-Python, so you can only check the board wPi number and physical Correspondence between pins.'''</big>
[[File:media/image172zero3-img172.png|575x365px]]
|}
<ol style="list-style-type: decimal;">
<li><p>The following takes pin 7—the corresponding GPIO is PC9—the corresponding wPi number is 2—as an example to demonstrate how to set the high and low levels of the GPIO port</p>
<p>[[File:media/image173zero3-img173.png|576x128px]]</p></li>
<li><p>The steps to test directly with the command are as follows:</p>
<ol style="list-style-type: lower-alpha;">
<ol style="list-style-type: decimal;">
<li><p>According to the schematic diagram of the 26pin interface, the available spi is spi1</p>
<p>[[File:media/image176zero3-img176.png|565x209px]]</p></li>
<li><p>The spi1 is disabled by default in the Linux system and needs to be manually enabled before it can be used. The steps to open are as follows:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|398x194px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the '''space''' to select '''spi1-cs1-spidev'''</p>
<p>[[File:media/image177zero3-img177.png|392x57px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|397x92px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''然后选择'''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>Then check whether there is a '''spidev1.1''' device node in the Linux system. If it exists, it means that the configuration of SPI1 has taken effect</p>
<ol style="list-style-type: decimal;">
<li><p>According to the schematic diagram of 26pin, the available i2c is i2c3</p>
<p>[[File:media/image178zero3-img178.png|575x204px]]</p></li>
<li><p>i2c3 is disabled by default in the Linux system, and it needs to be manually enabled before it can be used. The steps to open are as follows:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|398x194px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the '''space''' to select '''ph-i2c3'''</p>
<p>[[File:media/image179zero3-img179.png|401x59px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|397x92px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>After starting the linux system, first confirm that there is an i2c3 device node under /dev</p>
</li>
<li><p>Then connect an i2c device to the i2c3 pin of the 26pin connector, here we take the DS1307 RTC module as an example</p>
<p>[[File:media/image186zero3-img186.png|180x153px]]</p>
{| class="wikitable" style="width:800px;"
<li>Then use the '''i2cdetect -y 3''' command, if the address of the connected i2c device can be detected, it means that the i2c device is connected correctly</li>
[[File:media/image187zero3-img187.png|388x203px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
<ol style="list-style-type: decimal;">
<li><p>According to the schematic diagram of the 26pin interface, the available uart is uart5</p>
<p>[[File:media/image181zero3-img181.png|575x203px]]</p></li>
<li><p>uart5 is disabled by default in the Linux system, and it needs to be opened manually to use it. The steps to open are as follows:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>Then select '''System'''</p>
<p>[[File:media/image85zero3-img85.png|398x194px]]</p></li>
<li><p>Then select '''Hardware'''</p>
<p>[[File:media/image86zero3-img86.png|393x202px]]</p></li>
<li><p>Then use the arrow keys on the keyboard to navigate to the position shown in the figure below, and then use the '''space''' to select '''ph-uart5'''</p>
<p>[[File:media/image182zero3-img182.png|400x60px]]</p></li>
<li><p>Then select '''&lt;Save&gt;''' to save</p>
<p>[[File:media/image88zero3-img88.png|397x92px]]</p></li>
<li><p>Then select '''&lt;Back&gt;'''</p>
<p>[[File:media/image89zero3-img89.png|395x91px]]</p></li>
<li><p>Then select '''&lt;Reboot&gt;''' to restart the system to make the configuration take effect</p>
<p>[[File:media/image90zero3-img90.png|374x187px]]</p></li></ol>
</li>
<li><p>After entering the linux system, first confirm whether there is a uart5 device node under '''/dev'''</p>
<big><p>'''It takes a while for the Home Assistant container to start. If the following interface is not displayed normally, please wait for a few seconds and then refresh. If the following interface is not displayed normally after waiting for more than one minute, it means that there is a problem with the installation of Home Assistant. At this time, you need to check whether there is a problem with the previous installation and setting process.'''</p></big>
|}
<p>[[File:media/image188zero3-img188.png|576x209px]]</p></li>
<li><p>Then enter '''your name''', '''user name''' and '''password''' and click '''Create Account'''</p>
<p>[[File:media/image189zero3-img189.png|220x279px]]</p></li>
<li><p>Then follow the interface prompts to set according to your preferences, and then click Next</p>
<p>[[File:media/image190zero3-img190.png|575x297px]]</p></li>
<li><p>Then click Next</p>
<p>[[File:media/image191zero3-img191.png|576x185px]]</p></li>
<li><p>Then click Finish</p>
<p>[[File:media/image192zero3-img192.png|576x117px]]</p></li>
<li><p>The final main interface displayed by Home Assistant is shown in the figure below</p>
<p>[[File:media/image193zero3-img193.png|574x294px]]</p></li>
<li><p>How to stop the Home Assistant container</p>
<ol style="list-style-type: lower-alpha;">
<big><p>'''When running the hass command for the first time, you will download and install and cache some necessary libraries and dependencies to run. This process may take a few minutes. Note that at this time, the interface of Home Assistant cannot be seen in the browser. Please wait for a while before refreshing.'''</p></big>
|}
<p>[[File:media/image194zero3-img194.png|576x203px]]</p></li></ol>
<span id="opencv-installation-method"></span>
</li>
<li><p>Then you have to wait patiently. When you see the printing information below the terminal output, it means that the pagoda has been installed. The entire installation process takes about 34 minutes. There may be some differences according to the difference in network speed</p>
<p>[[File:media/image195zero3-img195.png|576x233px]]</p></li>
<li><p>At this time, enter the '''panel address''' displayed above in the browser to open the login interface of the aapanel Linux panel, and then enter the '''username''' and '''password''' displayed in the corresponding position to log in to the aapanel<br />
[[File:media/image196zero3-img196.png|575x281px]]</p></li>
<li><p>After successfully logging in to the aapanel, the following welcome interface will pop up. First, please take the intermediate user notice to read to the bottom, and then you can choose &quot;I have agreed and read&quot; User Agreement &quot;, and then click&quot; Enter the panel &quot; You can enter the aapanel</p>
<p>[[File:media/image197zero3-img197.png|575x317px]]</p></li>
<li><p>After entering the aapanel, you will first prompt that you need to bind the account of the aapanel official website. If you do n’t have an account, you can go to the aapanel's official website ('''https://www.bt.cn''') to register one</p>
<p>[[File:media/image198zero3-img198.png|576x300px]]</p></li>
<li><p>The final display interface is shown in the figure below. You can intuitively see some status information of the development board Linux system, such as load state, CPU usage, memory usage and storage space usage</p>
<p>[[File:media/image199zero3-img199.png|575x306px]]</p></li>
<li><p>For more functions of the aapanel, please refer to the following information to explore by yourself</p>
{| class="wikitable" style="width:800px;"
</li>
<li><p>After face_recognition is installed, it will automatically download the source code of face_recognition, and then automatically run some examples in face_recognition. If you can finally see the following pictures popping up on the desktop, it means that the face_recognition installation test is successful.</p>
<p>[[File:media/image200zero3-img200.png|576x324px]]</p></li></ol>
<span id="manually-install-face_recognition"></span>
</li>
<li><p>Wait for a while and the following picture will pop up, which is the face located in the test picture</p>
<p>[[File:media/image201zero3-img201.png|575x311px]]</p></li></ol>
</li>
<li><p>'''find_facial_features_in_picture.py''' is used to identify the key points of the face in a single picture, and the test steps are as follows</p>
</li>
<li><p>After waiting for a while, the following picture will pop up, and you can see that the outline of the face is marked</p>
<p>[[File:media/image202zero3-img202.png|575x302px]]</p></li></ol>
</li>
<li><p>'''identify_and_draw_boxes_on_faces.py''' is used to identify faces and mark them with boxes. The test steps are as follows</p>
</li>
<li><p>After waiting for a while, the following picture will pop up. You can see that the faces in the picture are marked with boxes, and the names of the characters are displayed correctly</p>
<p>[[File:media/image203zero3-img203.png|461x250px]]</p></li></ol>
</li>
<li><p>'''face_distance.py''' is used to compare whether two faces belong to the same person at different precisions. First open a terminal, then enter the '''face_recognition/examples''' directory, and then execute the following command to see the output of the test</p>
</li>
<li><p>Wait for a while and the camera display screen will pop up</p>
<p>[[File:media/image204zero3-img204.png|314x245px]]</p></li>
<li><p>At this point, you can point the camera at yourself. When the camera detects a face, it will frame the detected face with a square. '''Note that when detecting a face, the image displayed by the camera will be relatively slow, please do not move too fast'''</p></li>
<li><p>You can also open a picture of Obama, and then use the camera to point at the opened picture. You can see that not only the face can be marked, but also the name of the detected face can be displayed correctly. '''Note that when detecting a face, the image displayed by the camera will be relatively slow, please do not move too fast'''</p>
<p>[[File:media/image205zero3-img205.png|358x284px]]</p></li></ol>
</li>
<li><p>'''web_service_example.py''' is a very simple case of using a web service to upload a picture to run face recognition. The backend server will identify whether the picture is Obama, and output the recognition result as a json key-value pair. The test steps are as follows:</p>
<ol style="list-style-type: none;">
<li><p>a) First open the browser, then enter the '''<span class="mark">IP address of the development board: 5001</span>''' in the address bar of the browser, and then you can see the following page</p>
<p>[[File:media/image206zero3-img206.png|575x150px]]</p></li>
<li><p>b) Then copy obama2.jpg to the desktop</p>
{| class="wikitable" style="width:800px;"
</li>
<li><p>c) Then select the picture you just copied in your browser</p>
<p>[[File:media/image207zero3-img207.png|575x217px]]</p></li>
<li><p>d) Then click '''Upload''' to upload the picture you just selected for face recognition</p>
<p>[[File:media/image208zero3-img208.png|575x145px]]</p></li>
<li><p>e) After waiting for a while, the detection result will be displayed</p>
<p>[[File:media/image209zero3-img209.png|314x149px]]</p></li></ol>
</li></ol>
</li>
</li>
<li><p>Then select '''zh_CN.UTF-8 UTF-8''' in the pop-up interface (move up and down through the up and down direction keys on the keyboard, select through the space bar, and finally move the cursor to '''&lt;OK&gt;''' through the Tab key, and then press Enter.)</p>
<p>[[File:media/image210zero3-img210.png|575x296px]]</p></li>
<li><p>Then set the default '''locale''' to '''zh_CN.UTF-8'''</p>
<p>[[File:media/image211zero3-img211.png|575x160px]]</p></li>
<li><p>After exiting the interface, the '''locale''' setting will start, and the output displayed on the command line is as follows</p>
{| class="wikitable" style="width:800px;"
</li>
<li><p>Then open the '''Input Method'''</p>
<p>[[File:media/image212zero3-img212.png|575x361px]]</p></li>
<li><p>Then choose '''OK'''</p>
<p>[[File:media/image213zero3-img213.png|295x212px]]</p></li>
<li><p>Then choose '''Yes'''</p>
<p>[[File:media/image214zero3-img214.png|303x192px]]</p></li>
<li><p>Then choose '''fcitx'''</p>
<p>[[File:media/image215zero3-img215.png|307x220px]]</p></li>
<li><p>Then choose '''OK'''</p>
<p>[[File:media/image216zero3-img216.png|305x216px]]</p></li>
<li><p>'''<span style="color:#FF0000">Then restart the Linux system to make the configuration take effect</span>'''</p></li>
<li><p>Then open '''Fcitx configuration'''</p>
<p>[[File:media/image217zero3-img217.png|575x376px]]</p></li>
<li><p>Then click the + sign in the position shown in the figure below</p>
<p>[[File:media/image218zero3-img218.png|280x187px]]</p></li>
<li><p>Then search '''Google Pinyin''' and click '''OK'''</p>
<p>[[File:media/image219zero3-img219.png|291x196px]]</p></li>
<li><p>Then bring '''Google Pinyin''' to the front</p>
<p>[[File:media/image220zero3-img220.png|299x202px]]</p><p>[[File:media/image221zero3-img221.png|300x202px]]</p></li>
<li><p>Then open the '''Geany''' editor to test the Chinese input method</p>
<p>[[File:media/image222zero3-img222.png|349x212px]]</p></li>
<li><p>The Chinese input method test is as follows</p>
<p>[[File:media/image223zero3-img223.png|575x325px]]</p></li>
<li><p>The Chinese and English input methods can be switched through the '''Ctrl+Space''' shortcut key</p></li>
<li><p>If the entire system needs to be displayed in Chinese, you can set the variables in '''/etc/default/locale''' to '''zh_CN.UTF-8'''</p>
</li>
<li><p>Then '''<span style="color:#FF0000">restart the system</span>''' and you can see that the system is displayed in Chinese</p>
<p>[[File:media/image224zero3-img224.png|576x356px]]</p></li></ol>
<span id="how-to-install-ubuntu-20.04-system"></span>
<ol style="list-style-type: decimal;">
<li><p>First open '''Language Support'''</p>
<p>[[File:media/image225zero3-img225.png|575x351px]]</p></li>
<li><p>Then find the <span class="mark">'''Chinese (China''')</span> option</p>
<p>[[File:media/image226zero3-img226.png|318x311px]]</p></li>
<li><p>Then please use the left mouse button to select '''<span class="mark">Chinese (China)</span>''' and hold it down, then drag it up to the initial position, the display after dragging is as shown in the figure below:</p>
<p>[[File:media/image227zero3-img227.png|324x320px]]</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<ol start="4" style="list-style-type: decimal;">
<li><p>Then select '''Apply System-Wide''' to apply the Chinese settings to the entire system</p>
<p>[[File:media/image228zero3-img228.png|321x316px]]</p></li>
<li><p>Then set'''Keyboard input method system''' to '''fcitx'''</p>
<p>[[File:media/image229zero3-img229.png|327x320px]]</p></li>
<li><p>'''<span style="color:#FF0000">Then restart the Linux system to make the configuration take effect</span>'''</p></li>
<li><p>After re-entering the system, '''<span class="mark">please choose not to ask me again</span>''' in the following interface, and then please decide whether the standard folder should also be updated to Chinese according to your preferences</p>
<p>[[File:media/image230zero3-img230.png|303x247px]]</p></li>
<li><p>Then you can see that the desktop is displayed in Chinese</p>
<p>[[File:media/image231zero3-img231.png|575x383px]]</p></li>
<li><p>Then we can open '''Geany''' to test the Chinese input method, as shown in the figure below</p>
<p>[[File:media/image232zero3-img232.png|576x292px]]</p></li>
<li><p>After opening '''Geany''', the default is English input method, we can switch to Chinese input method through '''Ctrl+Space''' shortcut key, and then we can input Chinese</p>
<p>[[File:media/image233zero3-img233.png|575x308px]]</p></li></ol>
<span id="how-to-install-ubuntu-22.04-system"></span>
<ol style="list-style-type: decimal;">
<li><p>First open '''Language Support'''</p>
<p>[[File:media/image225zero3-img225.png|575x351px]]</p></li>
<li><p>Then find the '''<span class="mark">Chinese (China)</span>''' option</p>
<p>[[File:media/image234zero3-img234.png|249x242px]]</p></li>
<li><p>Then please use the left mouse button to select '''<span class="mark">Chinese (China)</span>''' and hold it down, then drag it up to the initial position, the display after dragging is as shown in the figure below:</p>
<p>[[File:media/image235zero3-img235.png|267x262px]]</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<ol start="4" style="list-style-type: decimal;">
<li><p>Then select '''Apply System-Wide''' to apply the Chinese settings to the entire system</p>
<p>[[File:media/image236zero3-img236.png|287x282px]]</p></li>
<li><p>'''<span style="color:#FF0000">Then restart the Linux system to make the configuration take effect</span>'''</p></li>
<li><p>After re-entering the system, please choose '''<span class="mark">not to ask me again</span>''' in the following interface, and then please decide whether the standard folder should also be updated to Chinese according to your preferences</p>
<p>[[File:media/image230zero3-img230.png|303x247px]]</p></li>
<li><p>Then you can see that the desktop is displayed in Chinese</p>
<p>[[File:media/image231zero3-img231.png|575x383px]]</p></li>
<li><p>Then open the Fcitx5 configuration program</p>
<p>[[File:media/image237zero3-img237.png|575x349px]]</p></li>
<li><p>Then choose to use Pinyin input method</p>
<div class="figure">
[[File:media/image238zero3-img238.png|338x267px|C:\Users\orangepi\Desktop\用户手册插图\Pi5 Plus\未标题-11.jpg未标题-11]]
</div></li>
<li><p>The interface after selection is as shown below, and then click OK</p>
<p>[[File:media/image239zero3-img239.png|366x290px]]</p></li>
<li><p>Then we can open '''Geany''' to test the Chinese input method, the opening method is shown in the figure below</p>
<p>[[File:media/image232zero3-img232.png|576x292px]]</p></li>
<li><p>After opening '''Geany''', the default is English input method, we can switch to Chinese input method through '''Ctrl+Space''' shortcut key, and then we can input Chinese</p>
<p>[[File:media/image240zero3-img240.png|434x308px]]</p></li></ol>
<span id="how-to-remotely-log-in-to-the-desktop-of-linux-system"></span>
|}
[[File:media/image241zero3-img241.png|575x227px]]
</ol>
<ol start="2" style="list-style-type: lower-alpha;">
<li><p>In addition, the installation package of '''NoMachine''' can also be downloaded in the '''official tool'''</p>
<p>[[File:media/image242zero3-img242.png|66x102px]]</p>
<p>First enter the '''<span class="mark">remote login software-NoMachine</span>''' folder</p>
<p>[[File:media/image243zero3-img243.png|271x43px]]</p>
<p>Then download the arm64 version of the deb installation package</p>
<p>[[File:media/image244zero3-img244.png|180x109px]]</p></li>
<li><p>Then upload the downloaded '''nomachine_x.x.x_x_arm64.deb''' to the Linux system of the development board</p></li>
<li><p>Then use the following command to install '''NoMachine''' in the Linux system of the development board</p>
|}
[[File:media/image245zero3-img245.png|575x163px]]
</ol>
<ol start="3" style="list-style-type: decimal;">
<li><p>Then install NoMachine in Windows, '''please restart the computer after installation'''</p></li>
<li><p>Then open '''NoMachine''' in Window</p>
<p>[[File:media/image246zero3-img246.png|76x66px]]</p></li>
<li><p>After Nomachine starts, it will automatically scan other devices installed in the local area network. After entering the main interface of Nomachine, you can see that the development board is already in the connected device list, and then click the location shown in the red box below. Start log in to the linux system desktop of the development board</p>
<p>[[File:media/image247zero3-img247.png|321x92px]]</p></li>
<li><p>Then click '''OK'''</p>
<p>[[File:media/image248zero3-img248.png|318x217px]]</p></li>
<li><p>Then enter the username and password of the linux system in the corresponding position in the figure below, and then click '''<span class="mark">OK</span>''' to start logging in</p>
<div class="figure">
[[File:media/image249zero3-img249.png|303x204px|C:\Users\orangepi\Desktop\用户手册插图\Pi5 Plus\未标题-12.jpg未标题-12]]
</div></li>
<li><p>Then click OK in the next interface</p></li>
<li><p>Finally, you can see the desktop of the development board Linux system</p>
<p>[[File:media/image250zero3-img250.png|411x246px]]</p></li></ol>
<span id="log-in-remotely-using-vnc"></span>
<div class="figure">
[[File:media/image251zero3-img251.png|490x349px|图片1208]]
</div></ol>
<ol start="2" style="list-style-type: lower-alpha;">
<li><p>Then enter the VNC password set earlier</p>
<p>[[File:media/image252zero3-img252.png|221x105px]]</p></li>
<li><p>After successful login, the interface is displayed as shown in the figure below, and then you can remotely operate the desktop of the development board linux system</p></li>
[[File:media/image253zero3-img253.png|405x293px]]
</ol>
</li></ol>
</li>
<li><p>Then you can see the QT Creator startup icon in '''Applications'''</p>
<p>[[File:media/image254zero3-img254.png|576x270px]]</p>
<p>You can also use the following command to open QT Creator</p>
{| class="wikitable" style="width:800px;"
</li>
<li><p>The interface after QT Creator is opened is as follows</p>
<p>[[File:media/image255zero3-img255.png|576x342px]]</p></li>
<li><p>The version of QT Creator is as follows</p>
<ol style="list-style-type: lower-alpha;">
<li><p>The default version of QT Creator in '''Ubuntu20.04''' is as follows</p>
<p>[[File:media/image256zero3-img256.png|419x224px]]</p></li>
<li><p>The default version of QT Creator in '''Ubuntu22.04''' is as follows</p>
<p>[[File:media/image257zero3-img257.png|443x237px]]</p></li>
<li><p>The default version of QT Creator in '''Debian11''' is as follows</p>
<p>[[File:media/image258zero3-img258.png|444x238px]]</p></li>
<li><p>The default version of QT Creator in '''Debian12''' is as follows</p>
<p>[[File:media/image259zero3-img259.png|449x277px]]</p></li></ol>
</li>
<li><p>Then set up QT</p>
<ol style="list-style-type: lower-alpha;">
<li><p>First open '''Help'''-&gt;'''About Plugins.…'''</p>
<p>[[File:media/image260zero3-img260.png|573x164px]]</p></li>
<li><p>Then remove the tick of '''ClangCodeModel'''</p>
<p>[[File:media/image261zero3-img261.png|408x254px]]</p></li>
<li><p>'''<span style="color:#FF0000">After setting, you need to restart QT Creator</span>'''</p></li>
<li><p>Then make sure the GCC compiler used by QT Creator, if the default is Clang, please modify it to GCC</p>
<big><p>'''Debian12 please skip this step.'''</p></big>
|}
<p>[[File:media/image262zero3-img262.png|576x315px]]</p><p>[[File:media/image263zero3-img263.png|575x307px]]</p></li></ol>
</li>
<li><p>Then you can open a sample code</p>
<p>[[File:media/image264zero3-img264.png|575x312px]]</p></li>
<li><p>After clicking the sample code, the corresponding instruction document will be opened automatically, you can read the instructions carefully</p>
<p>[[File:media/image265zero3-img265.png|576x218px]]</p></li>
<li><p>Then click '''Configure Project'''</p>
<p>[[File:media/image266zero3-img266.png|575x304px]]</p></li>
<li><p>Then click the green triangle in the lower left corner to compile and run the sample code</p>
<p>[[File:media/image267zero3-img267.png|575x312px]]</p></li>
<li><p>After waiting for a period of time, the interface shown in the figure below will pop up, which means that QT can compile and run normally</p>
<p>[[File:media/image268zero3-img268.png|576x308px]]</p></li>
<li><p>References</p>
{| class="wikitable" style="width:800px;"
# The currently active version of ROS 1 is shown below, and the recommended version is '''Noetic Ninjemys'''
::[[File:media/image269zero3-img269.png|345x235px]]
::[[File:media/image270zero3-img270.png|576x210px]]
::{| class="wikitable" style="width:800px;"
<p>[http://wiki.ros.org/noetic/Installation '''http://wiki.ros.org/noetic/Installation''']</p>
|}
<p>[[File:media/image271zero3-img271.png|312x176px]]</p></li>
<li><p>Then use the script below to install ros1</p>
{| class="wikitable" style="width:800px;"
</li>
<li><p>After running the '''test_ros.sh''' script, a little turtle as shown in the figure below will pop up</p>
<p>[[File:media/image272zero3-img272.png|575x291px]]</p></li>
<li><p>Then please keep the terminal window you just opened on top</p></li>
<div class="figure">
[[File:media/image273zero3-img273.png|575x269px|C:\Users\orangepi\Desktop\用户手册插图\Zero3\未标题-5.jpg未标题-5]]
</div></ol>
<ol start="9" style="list-style-type: decimal;">
<li><p>At this time, press the direction keys on the keyboard to control the little turtle to move up, down, left, and right</p>
<p>[[File:media/image274zero3-img274.png|575x250px]]</p></li></ol>
<span id="how-to-install-ros-2-galactic-on-ubuntu-20.04"></span>
<ol style="list-style-type: decimal;">
<li><p>The currently active version of ROS 2 is shown below, and the recommended version is '''Galactic Geochelone'''</p>
<p>[[File:media/image275zero3-img275.png|576x271px]]</p><p>[[File:media/image276zero3-img276.png|575x265px]]</p>
{| class="wikitable" style="width:800px;"
|-
<p>orangepi@orangepi:~$ '''ros2 run rviz2 rviz2'''</p>
|}
<p>[[File:media/image277zero3-img277.png|576x324px]]</p></li>
<li><p>For how to use ROS, please refer to the documentation of ROS 2</p>
{| class="wikitable" style="width:800px;"
<p>orangepi@orangepi:~$ '''ros2 run rviz2 rviz2'''</p>
|}
<p>[[File:media/image278zero3-img278.png|575x323px]]</p></li>
<li><p>Reference documents</p>
{| class="wikitable" style="width:800px;"
<div class="figure">
[[File:media/image279zero3-img279.png|576x453px|截图 2022-12-03 19-04-40]]
</div></li>
<div class="figure">
[[File:media/image280zero3-img280.png|575x128px|图片565]]
</div></li></ol>
<ol start="5" style="list-style-type: decimal;">
<li><p>Then choose to '''<span class="mark">save the password</span>''', and then click '''<span class="mark">OK</span>'''</p>
<p>[[File:media/image281zero3-img281.png|249x181px]]</p></li>
<li><p>Then choose to '''<span class="mark">always trust this host</span>''', and then click '''<span class="mark">OK</span>'''</p>
<div class="figure">
[[File:media/image282zero3-img282.png|278x150px|IMG_256]]
</div></li></ol>
<div class="figure">
[[File:media/image283zero3-img283.png|533x330px|IMG_256]]
</div></li></ol>
<div class="figure">
[[File:media/image284zero3-img284.png|529x414px|IMG_256]]
</div></li></ol>
|}
::[[File:media/image285zero3-img285.png|472x171px|C:\Users\orangepi\Desktop\用户手册插图\Pi5 Plus\未标题-15.jpg未标题-15]]
::[[File:media/image286zero3-img286.png|384x276px]]
<ol start="2" style="list-style-type: decimal;">
<div class="figure">
[[File:media/image287zero3-img287.png|355x279px|IMG_256]]
</div></li></ol>
<div class="figure">
[[File:media/image288zero3-img288.png|451x357px|IMG_256]]
</div></li></ol>
<div class="figure">
[[File:media/image280zero3-img280.png|575x128px|图片565]]
</div></li></ol>
<div class="figure">
[[File:media/image289zero3-img289.png|207x146px|IMG_256]]
</div></li></ol>
<div class="figure">
[[File:media/image290zero3-img290.png|221x109px|IMG_256]]
</div></li></ol>
<div class="figure">
[[File:media/image291zero3-img291.png|446x329px|图片3]]
</div></li></ol>
<div class="figure">
[[File:media/image292zero3-img292.png|461x340px|IMG_256]]
</div></li></ol>
<ol start="2" style="list-style-type: lower-alpha;">
<li><p>Note that the Ubuntu version needs to be switched to 22.04.</p>
<p>[[File:media/image293zero3-img293.png|576x241px]]</p></li>
<li><p>The content of the '''/etc/apt/sources.list''' file that needs to be replaced is:</p>
{| class="wikitable" style="width:800px;"
<div class="figure">
[[File:media/image294zero3-img294.png|576x298px|图片6]]
</div>
<div class="figure">
[[File:media/image295zero3-img295.png|575x278px|选区_396]]
</div>
<div class="figure">
[[File:media/image296zero3-img296.png|576x132px|选区_238]]
</div></li>
<li><p>Then select the model of the development board</p>
<p>[[File:media/image297zero3-img297.png|576x123px]]</p></li>
<li><p>Then select the branch type of u-boot</p>
<ol style="list-style-type: lower-alpha;">
<li><p>The current branch will compile the u-boot v2018.05 code that needs to be used in the linux5.4 image</p></li>
<li><p>The next branch will compile the u-boot v2021.07 version code that needs to be used in the linux6.1 image</p>
<p>[[File:media/image298zero3-img298.png|576x77px]]</p></li></ol>
</li>
<li><p>Then it will start to compile u-boot, and part of the information prompted when compiling the next branch is as follows:</p>
</li>
<li><p>Then select '''5 Install/Update the bootloader on SD/eMMC'''</p>
<p>[[File:media/image299zero3-img299.png|320x174px]]</p></li>
<li><p>After pressing the Enter key, a Warning will pop up first</p>
<p>[[File:media/image300zero3-img300.png|314x170px]]</p></li>
<li><p>Press the Enter key again to start updating u-boot, and the following information will be displayed after the update</p>
<p>[[File:media/image301zero3-img301.png|292x164px]]</p></li>
<li><p>Then you can restart the development board to test whether the modification of u-boot takes effect</p></li></ol>
</li></ol>
<div class="figure">
[[File:media/image302zero3-img302.png|575x116px|选区_240]]
</div></li>
<li><p>Then you will be prompted whether you need to display the kernel configuration interface. If you do not need to modify the kernel configuration, select the first one. If you need to modify the kernel configuration, select the second one.</p>
<p>[[File:media/image303zero3-img303.png|576x87px]]</p></li>
<li><p>Then select the model of the development board</p>
<p>[[File:media/image297zero3-img297.png|576x123px]]</p></li>
<li><p>Then select the branch type of the kernel source code</p>
<ol style="list-style-type: lower-alpha;">
<li><p>current branch will compile linux5.4 kernel source code</p></li>
<li><p>The next branch will compile the linux6.1 kernel source code</p>
<p>[[File:media/image298zero3-img298.png|576x77px]]</p></li></ol>
</li>
<li><p>If you choose to display the kernel configuration menu (the second option) in step 3), the kernel configuration interface opened by '''make menuconfig''' will pop up. At this time, you can directly modify the kernel configuration, save and exit after modification. Yes, after exiting, it will start compiling the kernel source code.</p>
<p>[[File:media/image304zero3-img304.png|575x357px]]</p>
<ol style="list-style-type: lower-alpha;">
<li><p>You can also set '''KERNEL_CONFIGURE=no''' in the orangepi-build/userpatches/config-default.conf configuration file, which can permanently disable this function</p></li>
<li><p>If the following error is displayed when compiling the kernel, it is because the terminal interface of the Ubuntu PC is too small to display the make menuconfig interface. Please maximize the terminal of the Ubuntu PC and run the build.sh script again</p>
<p>[[File:media/image305zero3-img305.png|574x234px]]</p></li></ol>
</li></ol>
<!-- -->
<div class="figure">
[[File:media/image306zero3-img306.png|576x119px|选区_241]]
</div></li></ol>
<ol start="3" style="list-style-type: decimal;">
<li><p>Then select the model of the development board</p>
<p>[[File:media/image297zero3-img297.png|576x123px]]</p></li>
<li><p>Then select the branch type of the kernel source code, the type of rootfs maintained by different versions of the kernel source code is different</p>
<ol style="list-style-type: lower-alpha;">
<li><p>The current branch can see debian11, ubuntu20.04, ubuntu22.04 three options</p></li>
<li><p>The next branch can see debian11, debian12, ubuntu22.04 three options</p>
<p>[[File:media/image298zero3-img298.png|576x77px]]</p></li></ol>
</li>
<li><p>Then select the type of rootfs</p>
<p>[[File:media/image307zero3-img307.png|576x79px]]</p></li>
<li><p>Then select the type of image</p>
<ol style="list-style-type: lower-alpha;">
<div class="figure">
[[File:media/image308zero3-img308.png|576x75px|选区_245]]
</div></li></ol>
<div class="figure">
[[File:media/image309zero3-img309.png|576x78px|选区_397]]
</div></li>
<li><p>If you are compiling the image of the desktop version, you also need to select the type of desktop environment. Currently only XFCE is maintained, so please choose the XFCE type desktop</p>
<p>[[File:media/image310zero3-img310.png|576x76px]]</p><p>[[File:media/image311zero3-img311.png|576x74px]]</p>
<p>You can then select additional packages that need to be installed. Please press the Enter key to skip directly here.</p>
<p>[[File:media/image312zero3-img312.png|575x264px]]</p></li>
<li><p>Then it will start to compile rootfs, and some information prompted during compilation is explained as follows</p>
<ol style="list-style-type: lower-alpha;">
<div class="figure">
[[File:media/image313zero3-img313.png|576x128px|选区_242]]
</div></li></ol>
<ol start="3" style="list-style-type: decimal;">
<li><p>Then select the model of the development board</p>
<p>[[File:media/image297zero3-img297.png|576x123px]]</p></li>
<li><p>Then select the branch type of the kernel source code, the type of rootfs maintained by different versions of the kernel source code is different</p>
<ol style="list-style-type: lower-alpha;">
<li><p>The current branch can see debian11, ubuntu20.04, ubuntu22.04 three options</p></li>
<li><p>The next branch can see debian11, debian12, ubuntu22.04 three options</p>
<p>[[File:media/image298zero3-img298.png|576x77px]]</p></li></ol>
</li>
<li><p>Then select the type of rootfs</p>
<p>[[File:media/image307zero3-img307.png|576x79px]]</p></li>
<li><p>Then select the type of image</p>
<ol style="list-style-type: lower-alpha;">
<div class="figure">
[[File:media/image308zero3-img308.png|576x75px|选区_245]]
</div></li></ol>
<div class="figure">
[[File:media/image309zero3-img309.png|576x78px|选区_397]]
</div></li>
<li><p>If you are compiling the image of the desktop version, you also need to select the type of desktop environment. Currently only XFCE is maintained, so please select the XFCE type desktop</p>
<p>[[File:media/image310zero3-img310.png|576x76px]]</p><p>[[File:media/image311zero3-img311.png|576x74px]]</p>
<p>You can then select additional packages that need to be installed. Please press the Enter key to skip directly here.</p>
<p>[[File:media/image312zero3-img312.png|575x264px]]</p></li>
<li><p>Then it will start to compile the linux image. The general process of compilation is as follows</p>
<ol style="list-style-type: lower-alpha;">
<li><p>We generally use the mouse and keyboard to control the Android system of the development board. When entering certain interfaces and need to return to the previous interface or desktop, we can only return through the '''<span style="color:#FF0000">right mouse button</span>''', and the keyboard cannot return.</p></li>
<li><p>If you have purchased the infrared remote control (other remote control does not work) and the expansion board that match the development board, after inserting the expansion board into the development board, you can return to the previous menu through the return key in the remote control. The position of the return key is shown in the figure below shown:</p>
<p>[[File:media/image314zero3-img314.png|231x199px]]</p></li></ol>
<span id="how-to-use-adb"></span>
<ol style="list-style-type: decimal;">
<li><p>Prepare a data cable with USB Type C interface, plug one end of the USB interface into the USB interface of the computer, and insert one end of the USB Type C interface into the power interface of the development board. In this case, the development board is powered by the USB interface of the computer, so please make sure that the USB interface of the computer can provide the most power to drive the development board</p>
<p>[[File:media/image315zero3-img315.png|178x178px]]</p></li>
<li><p>Install adb tool on Ubuntu PC</p>
{| class="wikitable" style="width:800px;"
<ol style="list-style-type: decimal;">
<li><p>First enter '''Settings'''</p>
<p>[[File:media/image316zero3-img316.png|234x83px]]</p></li>
<li><p>Then select '''Device Preferences'''</p>
<p>[[File:media/image317zero3-img317.png|415x170px]]</p></li>
<li><p>Then select '''Display &amp; Sound'''</p>
<p>[[File:media/image318zero3-img318.png|420x133px]]</p></li>
<li><p>Then select '''Advanced display settings'''</p>
<p>[[File:media/image319zero3-img319.png|423x96px]]</p></li>
<li><p>Then select '''HDMI outpu mode'''</p>
<p>[[File:media/image320zero3-img320.png|423x101px]]</p></li>
<li><p>Then you can see the list of resolutions supported by the display. At this time, click the corresponding option to switch to the corresponding resolution. Please note that the resolutions supported by different monitors may be different. If you connect to a TV, you will generally see more resolution options than the picture below.</p>
<p>[[File:media/image321zero3-img321.png|429x136px]]</p></li>
<li><p>The HDMI output of the development board supports 4K display. When connected to a 4K TV, you can see the option of 4K resolution</p>
<p>[[File:media/image322zero3-img322.png|429x242px]]</p></li></ol>
<span id="hdmi-to-vga-display-test-1"></span>
<ol style="list-style-type: lower-alpha;">
<li><p>HDMI to VGA Converter</p>
<p>[[File:media/image145zero3-img145.png|155x104px]]</p></li>
<li><p>A VGA cable and a Micro HDMI male to HDMI female conversion cable</p>
<p>[[File:media/image146zero3-img146.png|148x133px]] [[File:media/image147zero3-img147.png|157x139px|IMG_6140(20220104-134930)]]</p></li>
<li><p>A monitor or TV that supports VGA interface</p></li></ol>
</li>
<li><p>HDMI to VGA display test as shown below</p>
<p>[[File:media/image323zero3-img323.png|576x330px]]</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
|-
<ol style="list-style-type: decimal;">
<li><p>First select '''Settings'''</p>
<p>[[File:media/image316zero3-img316.png|234x83px]]</p></li>
<li><p>Then select '''Network &amp; Internet'''</p>
<p>[[File:media/image324zero3-img324.png|373x103px]]</p></li>
<li><p>Then open WI-FI</p>
<p>[[File:media/image325zero3-img325.png|381x50px]]</p></li>
<li><p>After turning on WI-FI, you can see the searched signal under '''Available networks'''</p>
<p>[[File:media/image326zero3-img326.png|381x187px]]</p></li>
<li><p>After selecting the WI-FI you want to connect to, the password input interface shown in the figure below will pop up</p>
<div class="figure">
[[File:media/image327zero3-img327.png|386x180px|Screenshot_20220104-164114]]
</div></li>
<div class="figure">
[[File:media/image328zero3-img328.png|401x165px|图片1]]
</div></li>
<li><p>After the WI-FI connection is successful, the display is as shown in the figure below</p>
<p>[[File:media/image329zero3-img329.png|402x141px]]</p></li></ol>
<span id="how-to-use-wi-fi-hotspot"></span>
<li><p>First, please make sure that the Ethernet port is connected to the network cable and can access the Internet normally</p></li>
<li><p>Then select '''Settings'''</p>
<p>[[File:media/image316zero3-img316.png|234x83px]]</p></li>
<li><p>Then select '''Network &amp; Internet'''</p>
<p>[[File:media/image324zero3-img324.png|373x103px]]</p></li>
<li><p>Then select '''WIFI hotspot'''</p>
<p>[[File:media/image330zero3-img330.png|378x104px]]</p></li>
<li><p>Then turn on '''Hotspot Enable''', you can also see the name and password of the generated hotspot in the figure below, remember them and use them when connecting to the hotspot (if you need to modify the name and password of the hotspot, you need to turn off '''Hotspot Enable''' first, before modifying)</p>
<p>[[File:media/image331zero3-img331.png|402x174px]]</p></li>
<li><p>At this point, you can take out your mobile phone. If everything is normal, you can find the WIFI hotspot with the same name '''(here AndroidAP_7132)''' displayed under the '''Hotspot name''' in the above picture in the WI-FI list searched by the mobile phone. Then you can click '''AndroidAP_7132''' to connect to the hotspot, and the password can be seen under the '''Hotspot password''' in the above picture</p>
<p>[[File:media/image332zero3-img332.png|269x191px]]</p></li>
<li><p>After the connection is successful, it will be displayed as shown in the figure below (the interface of different mobile phones will be different, the specific interface is subject to the display of your mobile phone). At this point, you can open a webpage on your mobile phone to see if you can access the Internet. If you can open the webpage normally, it means that the '''WI-FI Hotspot''' of the development board can be used normally.</p>
<p>[[File:media/image333zero3-img333.png|269x125px]]</p></li></ol>
<span id="how-to-check-the-ip-address-of-the-ethernet-port"></span>
<li><p>First, please make sure that the Gigabit Ethernet port of the development board is connected to a router or switch</p></li>
<li><p>Then open '''Settings'''</p>
<p>[[File:media/image334zero3-img334.png|431x161px]]</p></li>
<li><p>Then select '''Network &amp; Internet'''</p>
<p>[[File:media/image335zero3-img335.png|576x186px]]</p></li>
<li><p>Then you can see the IP address of the development board's wired network port at the position shown in the figure below</p>
<p>[[File:media/image336zero3-img336.png|576x200px]]</p></li></ol>
<span id="bluetooth-connection-method"></span>
<ol style="list-style-type: decimal;">
<li><p>First select '''Settings'''</p>
<p>[[File:media/image316zero3-img316.png|234x83px]]</p></li>
<li><p>Then select '''Bluetooth'''</p>
<p>[[File:media/image337zero3-img337.png|377x111px]]</p></li>
<li><p>Then open '''Bluetooth Enable'''</p>
<p>[[File:media/image338zero3-img338.png|384x180px]]</p></li>
<li><p>Then click '''Pair new device''' to start scanning the surrounding Bluetooth devices</p>
<p>[[File:media/image339zero3-img339.png|389x129px]]</p></li>
<li><p>The searched Bluetooth devices will be displayed under '''Available devices'''</p>
<p>[[File:media/image340zero3-img340.png|407x181px]]</p></li>
<li><p>Then click the Bluetooth device you want to connect to start pairing. When the following interface pops up, please use the mouse to select the '''Pair''' option</p>
<p>[[File:media/image341zero3-img341.png|420x115px]]</p></li>
<li><p>The test here is the configuration process of the development board and the Bluetooth of the '''<span style="color:#FF0000">Android mobile phone</span>'''. At this time, the following confirmation interface will pop up on the mobile phone. After clicking the pairing button on the mobile phone, the pairing process will start</p>
<p>[[File:media/image342zero3-img342.png|178x200px]]</p></li>
<li><p>After the pairing is complete, open '''Paired devices''' and you can see the paired Bluetooth devices</p>
<p>[[File:media/image343zero3-img343.png|430x136px]]</p></li>
<li><p>At this time, you can use the Bluetooth of your mobile phone to send a picture to the development board. After sending, you can see the following confirmation interface in the Android system of the development board, and then click '''Accept''' to start receiving the picture sent by the mobile phone.</p>
<p>[[File:media/image344zero3-img344.png|433x113px]]</p></li>
<li><p>The pictures received by the Android system Bluetooth of the development board can be viewed in '''Received files'''</p>
<p>[[File:media/image345zero3-img345.png|432x209px]]</p></li></ol>
<span id="how-to-use-the-usb-camera"></span>
<li><p>Then make sure that the adb connection between the Ubuntu PC and the development board is normal. For how to use adb, please refer to the instructions in the section on [[Orange Pi Zero 3#How to use ADB|'''how to use ADB''']]</p></li>
<li><p>Download the USB camera test APP in the <span class="mark">official tool</span> on the development board data download page</p>
<p>[[File:media/image346zero3-img346.png|344x183px]]</p><p>[[File:media/image347zero3-img347.png|575x145px]]</p></li>
<li><p>Then use the adb command to install the USB camera test APP to the Android system, of course, you can also use the U disk to copy the installation</p>
{| class="wikitable" style="width:800px;"
</li>
<li><p>After installation, you can see the startup icon of the USB camera on the Android desktop</p>
<p>[[File:media/image348zero3-img348.png|576x132px]]</p></li>
<li><p>Then double-click to open the USB camera APP and you can see the output video of the USB camera</p></li></ol>
<ol style="list-style-type: decimal;">
<li><p>Download '''rootcheck.apk''' from the <span class="mark">official tool</span> on the development board data download page</p>
<p>[[File:media/image349zero3-img349.png|576x172px]]</p><p>[[File:media/image350zero3-img350.png|575x124px]]</p></li>
<li><p>Then make sure that the adb connection between the Ubuntu PC and the development board is normal. For how to use adb, please refer to the instructions in the section on [[Orange Pi Zero 3#How to use ADB|'''how to use ADB''']]</p></li>
<li><p>Then use the adb command to install rootcheck.apk to the Android system, of course, you can also use the U disk to copy the installation</p>
</li>
<li><p>After installation, you can see the startup icon of the ROOT test tool on the Android desktop</p>
<p>[[File:media/image351zero3-img351.png|575x119px]]</p></li>
<li><p>The display interface after opening the '''ROOT test tool''' for the first time is shown in the figure below</p>
<p>[[File:media/image352zero3-img352.png|575x162px]]</p></li>
<li><p>Then you can click '''CHECK NOW''' to start checking the ROOT status of the Android system. After the check, the display is as follows, and you can see that the Android system has obtained the ROOT permission</p>
<p>[[File:media/image353zero3-img353.png|575x161px]]</p></li></ol>
<span id="the-method-of-using-miracastreceiver-to-cast-the-mobile-phone-screen-to-the-development-board"></span>
<li><p>First, please make sure that the development board and the mobile phone are connected to the same WIFI hotspot. For the method of connecting the development board to WIFI, please refer to the description in the section of [[Orange Pi Zero 3#WI-FI connection method|'''WI-FI connection method''']]</p></li>
<li><p>Then open the '''MiracastReceiver''' application in the Android system of the development board</p>
<p>[[File:media/image354zero3-img354.png|576x124px]]</p></li>
<li><p>The interface after '''MiracastReceiver''' is opened is as follows</p>
<div class="figure">
[[File:media/image355zero3-img355.png|420x236px|Screenshot_20230625-193535]]
</div></li>
<li><p>Then find the screen projection function in the mobile phone settings. '''Here we take the Mi 12S Pro mobile phone as an example'''. Please research other brands of mobile phones by yourself. As shown in the figure below, click the button in the red box to open the screen projection function of the mobile phone</p>
<p>[[File:media/image356zero3-img356.png|167x266px]]</p></li>
<li><p>After waiting for a while, you can see the searched and connectable devices on the mobile phone, and then we can select the device corresponding to the development board to connect</p>
<p>[[File:media/image357zero3-img357.png|146x308px]]</p></li>
<li><p>Then the selection box shown in the figure below will pop up on the '''MiracastReceiver''' application interface of the development board, here we can select '''Accept'''</p>
<p>[[File:media/image358zero3-img358.png|468x265px]]</p></li>
<li><p>Then you can see the content of the mobile phone screen on the HDMI screen connected to the development board</p>
<p>[[File:media/image359zero3-img359.png|576x352px]]</p></li></ol>
<span id="pin-interface-gpio-uart-spi-test"></span>
<ol style="list-style-type: decimal;">
<li><p>First open the wiringOP APP on the desktop</p>
<p>[[File:media/image360zero3-img360.png|576x133px]]</p></li>
<li><p>Then click the '''GPIO_TEST''' button to open the GPIO test interface</p>
<p>[[File:media/image361zero3-img361.png|413x77px]]</p></li>
<li><p>The GPIO test interface is shown in the figure below. There is a one-to-one correspondence between the two rows of '''CheckBox''' buttons on the left and the 26pin pins '''(PC1/PI16/PI6/PH10 in the lower left corner are GPIO ports in the 13pin pins)'''. When the '''CheckBox''' button is checked, the corresponding GPIO pin will be set to '''OUT''' mode, and the pin level will be set to high level; when the checkbox is unchecked, the GPIO pin level will be set to low level; When the '''GPIO READALL''' button is pressed, information such as the wPi number, GPIO mode, and pin level can be obtained.</p>
<p>[[File:media/image362zero3-img362.png|425x236px]]</p></li>
<li><p>Then click the '''GPIO READALL''' button, the output information is as shown in the figure below:</p>
<div class="figure">
[[File:media/image363zero3-img363.png|444x249px|Screenshot_20230609-155643]]
</div></li>
<li><p>There are a total of 17 GPIO ports in the 26pin of the development board that can be used '''(if you add 4 GPIO ports in the 13pin, then there are 21 in total)''', and the following pin No. 7 - corresponding to GPIO is PC9 - corresponding to wPi The serial number is 2——as an example to demonstrate how to set the high and low levels of the GPIO port. First click the '''CheckBox''' button corresponding to pin 7. When the button is selected, pin 7 will be set to high level. After setting, you can use a multimeter to measure the voltage value of the pin. If it is '''3.3v''', it means setting high level success</p>
<p>[[File:media/image364zero3-img364.png|432x210px]]</p></li>
<li><p>Then click the '''GPIO READALL''' button, you can see that the current pin 7 mode is '''OUT''', and the pin level is high</p>
<p>[[File:media/image365zero3-img365.png|430x207px]]</p></li>
<li><p>Click the '''CheckBox''' button in the figure below again to cancel the check status. Pin 7 will be set to low level. After setting, you can use a multimeter to measure the voltage value of the pin. If it is '''0v''', it means that the low level is set successfully.</p>
<p>[[File:media/image366zero3-img366.png|434x212px]]</p></li>
<li><p>Then click the '''GPIO READALL''' button, you can see that the current pin 7 mode is OUT, and the pin level is low</p>
<p>[[File:media/image367zero3-img367.png|438x217px]]</p></li></ol>
<span id="pin-uart-test-method"></span>
</li>
<li><p>First open the wiringOP APP on the desktop</p>
<p>[[File:media/image360zero3-img360.png|576x133px]]</p></li>
<li><p>Then click the '''UART_TEST''' button to open the UART test interface</p>
<p>[[File:media/image368zero3-img368.png|505x94px]]</p></li>
<li><p>The serial port test interface of wiringOP is shown in the figure below</p></li>
[[File:media/image369zero3-img369.png|511x133px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<li><p>Then select the '''/dev/ttyAS5''' node in the selection box</p>
<p>[[File:media/image370zero3-img370.png|499x269px]]</p></li>
<li><p>Enter the baud rate you want to set in the edit box, and then click the '''OPEN''' button to open the '''/dev/ttyAS5''' node. After the opening is successful, the '''OPEN''' button becomes unselectable, and the '''CLOSE''' button and '''SEND''' button become selectable.</p></li>
[[File:media/image371zero3-img371.png|334x107px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
<li>Then you can enter a character in the send edit box below, click the '''SEND''' button to start sending</li>
[[File:media/image372zero3-img372.png|376x189px]]
</ol>
<ol start="9" style="list-style-type: decimal;">
<li>If everything is normal, the received string will be displayed in the receiving box</li>
[[File:media/image373zero3-img373.png|382x196px]]
</ol>
<span id="pin-spi-test-method"></span>
<ol style="list-style-type: decimal;">
<li><p>The SPI that can be used in 26pin is SPI1, and the corresponding device node is '''/dev/spidev1.1'''</p>
<p>[[File:media/image360zero3-img360.png|576x133px]]</p></li>
<li><p>Here is a demonstration to test the SPI1 interface through the '''w25q64''' module, first connect the w25q64 module to the SPI1 interface</p>
<li><p>Then open the wiringOP APP on the desktop</p></li>
<li><p>Then click the '''SPI_TEST''' button to open the SPI test interface</p>
<p>[[File:media/image374zero3-img374.png|518x96px]]</p></li>
<li><p>Then select the spi device node in the upper left corner. If you directly test the onboard SPIFlash, then keep the default '''/dev/spidev0.0'''. If you connect the '''w25q64''' module to the 26pin spi1, then please select /dev '''/dev/spidev1.1'''</p>
<div class="figure">
[[File:media/image375zero3-img375.png|296x135px|C:\Users\orangepi\Desktop\用户手册插图\Zero3\未标题-7.jpg未标题-7]]
</div></li>
<li><p>Then click the '''OPEN''' button to initialize the SPI</p></li>
[[File:media/image376zero3-img376.png|295x168px]]
</ol>
<ol start="7" style="list-style-type: decimal;">
<li><p>Then fill in the bytes that need to be sent, such as reading the ID information of the onboard SPIFlash, fill in the address 0x9f in data[0], and then click the '''TRANSFER''' button</p>
<p>[[File:media/image377zero3-img377.png|294x169px]]</p></li>
<li><p>Finally, the APP will display the read ID information of the onboard SPI Flash</p></li>
[[File:media/image378zero3-img378.png|299x217px]]
</ol>
<ol start="9" style="list-style-type: decimal;">
<li><p>If it is to read the w25q64 module connected to 26pin SPI1, then the read ID information is shown in the figure below</p>
<p>[[File:media/image379zero3-img379.png|302x201px]]</p></li>
<li><p>The MANUFACTURER ID of the w25q64 module is EFh, and the Device ID is 4017h, corresponding to the value read above (h stands for hexadecimal)</p>
<p>[[File:media/image380zero3-img380.png|336x113px]]</p></li></ol>
<span id="pin-i2c-test-method"></span>
</li>
<li><p>First open the wiringOP APP on the desktop</p>
<p>[[File:media/image360zero3-img360.png|576x133px]]</p></li>
<li><p>Then click the '''I2C_TEST''' button to open the i2c test interface</p>
<p>[[File:media/image381zero3-img381.png|506x110px]]</p></li>
<li><p>The i2c test interface of wiringOP is shown in the figure below. You can see that the default i2c is '''/dev/i2c-3''', so we don't need to re-select</p></li>
[[File:media/image382zero3-img382.png|353x159px]]
</ol>
<ol start="5" style="list-style-type: decimal;">
<li><p>Then connect an i2c device to the 26pin i2c3 pin, here we take the ds1307 rtc module as an example</p>
<p>[[File:media/image186zero3-img186.png|121x103px]]</p></li>
{| class="wikitable" style="width:800px;"
<p>apollo-p2:/ # '''i2cdetect -y 3'''</p>
|}
<p>[[File:media/image383zero3-img383.png|424x186px]]</p></li>
<li><p>Then set the address of i2c to 0x68 in wiringOP, and then click the '''OPEN''' button to open i2c3</p>
<p>[[File:media/image384zero3-img384.png|354x177px]]</p></li>
<li><p>The display after clicking the '''OPEN''' button to open i2c3 is as follows:</p>
<p>[[File:media/image385zero3-img385.png|355x171px]]</p></li>
<li><p>Then we test to write a value into the register of the rtc module, for example, write 0x55 to the 0x1c address</p>
<ol style="list-style-type: lower-alpha;">
<li><p>We first set the address of the register to be written to 0x1c</p>
<p>[[File:media/image386zero3-img386.png|322x152px]]</p></li>
<li><p>Then set the value to be written to 0x55</p>
<p>[[File:media/image387zero3-img387.png|315x177px]]</p></li>
<li><p>Then click the '''WRITE BYTE''' button to execute the write action</p>
<p>[[File:media/image388zero3-img388.png|314x173px]]</p></li></ol>
</li>
<li><p>Then click the '''READ BYTE''' button to read the value of the 0x1c register, if it is displayed as 0x55, it means that the i2c read and write test has passed</p>
<p>[[File:media/image389zero3-img389.png|316x170px]]</p></li></ol>
<span id="appendix"></span>

Navigation menu