Changes

Jump to: navigation, search

Orange Pi Zero 2W

2,036 bytes added, 20:33, 27 September 2023
Download orangepi-build from github
<div class="figure">
[[File:zero2w-img3.png|800px]]
</div>
<div class="figure">
[[File:zero2w-img4.png|800px]]
</div>
<div class="figure">
[[File:zero2w-img5.png|800px]]
</div>
<span id="orange-pi-zero-2w-24pin-expansion-board-interface-details"></span>
 
== Orange Pi Zero 2w 24pin expansion board interface details ==
<div class="figure">
[[File:zero2w-img6.png|800px]]
</div>
[[File:zero2w-img7.png|800px]]
{| class="wikitable" style="background-color:#ffffdc;width:800px;"
<div class="figure">
[[File:zero2w-img272.png|center|800px]]
</div>
# As can be seen from the table below, the available pwm are pwm1, pwm2, pwm3 and pwm4.
<div style="display: flex;">::{| class="wikitable" style="width:390px;margin-right: 20px;text-align: center;"
|-
| '''GPIO serial numberNO.'''
| '''GPIO'''
| '''Function'''
| '''pin'''|| '''pin'''| '''Function'''| '''GPIO'''| '''GPIO serial numberPin'''
|-
| style="text-align: left;"|
| '''3.3V'''
| '''1'''
|
| '''2'''
| '''5V'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''264'''
| '''TWI1-SDA'''
| '''3'''
|
| '''4'''
| '''5V'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''263'''
| '''TWI1-SCL'''
| '''5'''
|
| '''6'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''<span style="color:#FF0000">269</span>'''| '''<span style="color:#FF0000">PI13</span>'''| '''<span style="color:#FF0000">PWM3</span>'''| '''<span style="color:#FF0000">7'''|| '''8'''| '''UART0_TX'''| '''PH0'''| '''224</span>'''
|-
| style="text-align: left;"|
| '''GND'''
| '''9'''
|
| '''10'''
| '''UART0_RX'''
| '''PH1'''
| '''225'''
|-
| '''226'''
| '''UART5_TX'''
| '''11'''
|
| '''12'''
| style="text-align: left;"|
| '''PI1'''
| '''257'''
|-
| '''227'''
| '''UART5_RX'''
| '''13'''
|
| '''14'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''261'''
| '''UART2_TX'''
| '''15'''
|
| '''16'''
| '''PWM4'''
| '''PI14'''
| '''270'''
|-
| style="text-align: left;"|
| '''3.3V'''
| '''17'''
|
| '''18'''
| style="text-align: left;"|
| '''PH4'''
| '''228'''
|-
| '''231'''
| '''SPI1_MOSI'''
| '''19'''
|
| '''20'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''232'''
| '''SPI1_MISO'''
| '''21'''
|
| '''22'''
| '''UART2_RX'''
| '''PI6'''
| '''262'''
|-
| '''230'''
| '''SPI1_CLK'''
| '''23'''
|
| '''24'''
| '''SPI1_CS0'''
| '''PH5'''
| '''229'''
|-
| style="text-align: left;"|
| '''GND'''
| '''25'''
|
| '''26'''
| '''SPI1_CS1'''
| '''PH9'''
| '''233'''
|-
| '''266'''
| '''TWI2-SDA'''
| '''27'''
|
| '''28'''
| '''TWI2-SCL'''
| '''PI9'''
| '''265'''
|-
| '''256'''
| style="text-align: left;"|
| '''29'''
|
| '''30'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''271'''
| style="text-align: left;"|
| '''31'''
|
| '''32'''
| '''PWM1'''
| '''PI11'''
| '''267'''
|-
| '''<span style="color:#FF0000">268</span>'''| '''<span style="color:#FF0000">PI12</span>'''| '''<span style="color:#FF0000">PWM2</span>'''| '''33'''|| '''34'''| '''GND'''| <span style="text-aligncolor: left;#FF0000"|| style="text-align: left;"|>33</span>'''
|-
| '''258'''
| style="text-align: left;"|
| '''35'''
|
| '''36'''
| style="text-align: left;"|
| '''PC12'''
| '''76'''
|-
| '''272'''
| style="text-align: left;"|
| '''37'''
|
| '''38'''
| style="text-align: left;"|
| '''PI4'''
| '''260'''
|-
| style="text-align: left;"|
| '''GND'''
| '''39'''
|
| '''40'''
| style="text-align: left;"|
| '''PI3'''
| '''259'''
|}
{| class="wikitable" style="width:390px;margin-right: 20px;text-align: center;"
|-
| '''Pin'''
| '''Function'''
| '''GPIO'''
| '''GPIO NO.'''
|-
| '''2'''
| '''5V'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''4'''
| '''5V'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''6'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''8'''
| '''UART0_TX'''
| '''PH0'''
| '''224'''
|-
| '''10'''
| '''UART0_RX'''
| '''PH1'''
| '''225'''
|-
| '''12'''
| style="text-align: left;"|
| '''PI1'''
| '''257'''
|-
| '''14'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''<span style="color:#FF0000">16</span>'''
| '''<span style="color:#FF0000">PWM4</span>'''
| '''<span style="color:#FF0000">PI14</span>'''
| '''<span style="color:#FF0000">270</span>'''
|-
| '''18'''
| style="text-align: left;"|
| '''PH4'''
| '''228'''
|-
| '''20'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''22'''
| '''UART2_RX'''
| '''PI6'''
| '''262'''
|-
| '''24'''
| '''SPI1_CS0'''
| '''PH5'''
| '''229'''
|-
| '''26'''
| '''SPI1_CS1'''
| '''PH9'''
| '''233'''
|-
| '''28'''
| '''TWI2-SCL'''
| '''PI9'''
| '''265'''
|-
| '''30'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''<span style="color:#FF0000">32</span>'''
| '''<span style="color:#FF0000">PWM1</span>'''
| '''<span style="color:#FF0000">PI11</span>'''
| '''<span style="color:#FF0000">267</span>'''
|-
| '''34'''
| '''GND'''
| style="text-align: left;"|
| style="text-align: left;"|
|-
| '''36'''
| style="text-align: left;"|
| '''PC12'''
| '''76'''
|-
| '''38'''
| style="text-align: left;"|
| '''PI4'''
| '''260'''
|-
| '''40'''
| style="text-align: left;"|
| '''PI3'''
| '''259'''
|}
</div>
<ol start="2" style="list-style-type: decimal;"><li>First click the wiringOP icon to open wiringOP APP</li></ol> [[File:zero2w-img351.png]] <ol start="3" style="list-style-type: decimal;"><li>Then click the '''PWM_TEST''' button on the main interface of wiringOP to enter the PWM test interface</li></ol> [[File:zero2w-img380.png]] <ol start="4" style="list-style-type: decimal;"><li>The PWM test interface is as follows</li></ol> <div class="figure"> [[File:zero2w-img381.png]] </div><ol start="5" style="list-style-type: decimal;"><li>Then set which PWM you want to use in the Channel. The default is PWM1. If you want to set it to PWM2, just enter 2 in the Channel. PWM3 and PWM4 and so on.</li></ol> [[File:zero2w-img382.png]] <ol start="6" style="list-style-type: decimal;"><li>Then you can set the PWM period. The default configuration is '''50000ns'''. The converted PWM frequency is '''20KHz'''</li></ol> [[File:zero2w-img383.png]] <ol start="7" style="list-style-type: decimal;"><li>Then click the '''EXPORT'''button to export PWM</li></ol> [[File:zero2w-img384.png]] <ol start="8" style="list-style-type: decimal;"><li>Then drag the progress bar below to change the PWM duty cycle, and then check '''Enable''' to output the PWM waveform.</li></ol> [[File:zero2w-img385.png]] <ol start="9" style="list-style-type: decimal;"><li>Then use an oscilloscope to measure the corresponding pins in the 40pin development board and you can see the following waveform.</li></ol> [[File:zero2w-img386.png]] <span id="how-to-compile-android-12-source-code"></span> = '''How to compile Android 12 source code''' = <span id="download-the-source-code-of-android-12"></span>== Download the source code of Android 12 == <ol style="list-style-type: decimal;"><li><p>First download the compressed package of the Android 12 source code and the compressed package of the files modified by Orange Pi Zero2w from Google Cloud Drive</p><ol style="list-style-type: lower-alpha;"><li>Google Cloud Drive</li></ol></li></ol> [[File:zero2w-img387.png]] <ol start="2" style="list-style-type: decimal;"><li>After downloading the compressed package of Android 12 source code, please check whether the MD5 checksum is correct. If it is incorrect, please download the source code again. Here's how to check the MD5 checksum:</li></ol> test@test:~$ '''md5sum -c H618-Android12-Src.tar.gz.md5sum''' H618-Android12-Src.tar.gzaa: '''OK''' H618-Android12-Src.tar.gzab: '''OK''' ...... <ol start="3" style="list-style-type: decimal;"><li>Then you need to merge multiple compressed files into one, and then extract the Android source code. The command looks like this:</li></ol> test@test:~$ '''cat H618-Android12-Src.tar.gza* &gt; H618-Android12-Src.tar.gz''' test@test:~$ '''tar -xvf H618-Android12-Src.tar.gz''' <ol start="4" style="list-style-type: decimal;"><li>Then unzip the compressed package of the files modified by Orange Pi Zero2w</li></ol> test@test:~$ '''tar zxf opizero2w_android12_patches.tar.gz''' test@test:~$ '''ls''' '''opizero2w_android12_patches''' opizero2w_android12_patches.tar.gz <ol start="5" style="list-style-type: decimal;"><li>Then copy the files modified by Orange Pi Zero2w to the Android source code</li></ol>
test@test[[File:~$ '''cp zero2w-rf opizero2w_android12_patchesimg351.png]]</* H618ol><ol start="3" style="list-Android12style-Src/type: decimal;"><li>Then click the '''PWM_TEST'''button on the main interface of wiringOP to enter the PWM test interface</li>
[[File:zero2w-img380.png]]</ol><span idol start="compile4" style="list-thestyle-source-code-of-android-12type: decimal;"><li>The PWM test interface is as follows</spanli>== Compile the source code of Android 12 ==
'''Android12 is compiled on an x86_64 computer with Ubuntu 22.04 installed. Other versions of Ubuntu system package dependencies may have some differences. The image download address of the Ubuntu 22.04 amd64 version is as follows:'''<div class="figure">
[https[File://repo.huaweicloud.com/ubuntu-releases/22.04/ubuntu-22.04.2-desktop-amd64.iso '''https://repo.huaweicloud.com/ubuntu-releases/22.04/ubuntu-22.04.2-desktopzero2w-amd64img381.iso'''png]]
'''</div></ol><ol start="5" style="list-style-type: decimal;"><li>Then set which PWM you want to use in the Channel. The x86_64 computer hardware configuration for compiling Android12 source code recommends a memory of 16GB or more, and a hard disk space of 200GB or more default is recommendedPWM1. The more CPU coresIf you want to set it to PWM2, just enter 2 in the betterChannel. PWM3 and PWM4 and so on.'''</li>
# First install [[File:zero2w-img382.png]]</ol><ol start="6" style="list-style-type: decimal;"><li>Then you can set the software packages needed to compile Android12 source codePWM period. The default configuration is '''50000ns'''. The converted PWM frequency is '''20KHz'''</li>
test@test[[File:~$ zero2w-img383.png]]</ol><ol start="7" style="list-style-type: decimal;"><li>Then click the '''sudo apt-get updateEXPORT'''button to export PWM</li>
test@test[[File:~$ zero2w-img384.png]]</ol><ol start="8" style="list-style-type: decimal;"><li>Then drag the progress bar below to change the PWM duty cycle, and then check '''sudo apt-get install -y git gnupg flex bison gperf build-essential \Enable'''to output the PWM waveform.</li>
'''zip curl zlib1g[[File:zero2w-dev gccimg385.png]]</ol><ol start="9" style="list-multilib g++style-multilib libc6-dev-i386 \'''type: decimal;"><li>Then use an oscilloscope to measure the corresponding pins in the 40pin development board and you can see the following waveform.</li>
'''lib32ncurses5[[File:zero2w-dev x11protoimg386.png]]</ol><span id="how-coreto-dev libx11compile-dev lib32z1android-dev ccache \'''12-source-code"></span>
= '''libgl1-mesa-dev libxml2-utils xsltproc unzip u-boot-tools python-is-python3 \How to compile Android 12 source code'''=
'''libssl<span id="download-dev libncurses5 clang gawk'''the-source-code-of-android-12"></span>== Download the source code of Android 12 ==
<ol start="2" style="list-style-type: decimal;"><li><p>Then compile First download the compressed package of the Android 12 source code in and the compressed package of the longan folder, which mainly contains u-boot and linux kernelfiles modified by Orange Pi Zero2w from Google Cloud Drive</p>
<ol style="list-style-type: lower-alpha;">
<li>First run '''./build.sh config''' to set compilation optionsGoogle Cloud Drive</li> [[File:zero2w-img387.png]]</ol>
</li></ol>
<ol start="2" style="list-style-type: decimal;">
<li>After downloading the compressed package of Android 12 source code, please check whether the MD5 checksum is correct. If it is incorrect, please download the source code again. Here's how to check the MD5 checksum:</li>
{| class="wikitable" style="width:800px;"
|-
|
test@test:~$ '''md5sum -c H618-Android12-Src.tar.gz.md5sum'''
test@test:~$ '''cd H618-Android12-Src.tar.gzaa: '''<span style="color:#FF0000">OK</longanspan>'''
test@test:~/H618-Android12-Src/longan$ .tar.gzab: '''.<span style="color:#FF0000">OK</build.sh configspan>'''
Welcome ......|}</ol><ol start="3" style="list-style-type: decimal;"><li>Then you need to mkscript setup progressmerge multiple compressed files into one, and then extract the Android source code. The command looks like this:</li>{| class="wikitable" style="width:800px;" |-| test@test:~$ '''cat H618-Android12-Src.tar.gz<span style="color:#FF0000">a</span>* &gt; H618-Android12-Src.tar.gz'''
All available platformtest@test:~$ '''tar -xvf H618-Android12-Src.tar.gz'''|}</ol><ol start="4" style="list-style-type: decimal;"><li>Then unzip the compressed package of the files modified by Orange Pi Zero2w</li>{| class="wikitable" style="width:800px;" |-| test@test:~$ '''tar zxf opizero2w_android12_patches.tar.gz'''
0. androidtest@test:~$ '''ls'''
1'''opizero2w_android12_patches''' opizero2w_android12_patches. linuxtar.gz|}</ol><ol start="5" style="list-style-type: decimal;"><li>Then copy the files modified by Orange Pi Zero2w to the Android source code</li>{| class="wikitable" style="width:800px;" |-| test@test:~$ '''cp -rf opizero2w_android12_patches/* H618-Android12-Src/'''|}</ol><span id="compile-the-source-code-of-android-12"></span>
Choice [android]: '''0'''== Compile the source code of Android 12 ==
All available ic{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big>'''Android12 is compiled on an x86_64 computer with <span style="color:#FF0000">Ubuntu 22.04</span> installed. Other versions of Ubuntu system package dependencies may have some differences. The image download address of the Ubuntu 22.04 <span style="color:#FF0000">amd64</span> version is as follows:'''
0[https://repo. h618huaweicloud.com/ubuntu-releases/22.04/ubuntu-22.04.2-desktop-amd64.iso '''https://repo.huaweicloud.com/ubuntu-releases/22.04/ubuntu-22.04.2-desktop-amd64.iso''']
Choice [h618]: '''0The x86_64 computer hardware configuration for compiling Android12 source code recommends a memory of 16GB or more, and a hard disk space of 200GB or more is recommended. The more CPU cores, the better.'''</big>|}
All available board:# First install the software packages needed to compile Android12 source code
0. ft::{| class="wikitable" style="width:800px;" |-| test@test:~$ '''sudo apt-get update'''
1. p1test@test:~$ '''sudo apt-get install -y git gnupg flex bison gperf build-essential \'''
2. p2'''zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \'''
3. p7'''lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache \'''
4. p7l'''libgl1-mesa-dev libxml2-utils xsltproc unzip u-boot-tools python-is-python3 \'''
5. perf1'''libssl-dev libncurses5 clang gawk'''|}
6<ol start="2" style="list-style-type: decimal;"><li><p>Then compile the code in the longan folder, which mainly contains u-boot and linux kernel</p><ol style="list-style-type: lower-alpha;"><li>First run '''./build. perf2sh config''' to set compilation options</li>{| class="wikitable" style="width:800px;" |-| <p>test@test:~$ '''cd H618-Android12-Src/longan'''</p>7<p>test@test:~/H618-Android12-Src/longan$ '''./build. perf3sh config'''</p>
8. qa
<p>Welcome to mkscript setup progress</p><p>All available platform:</p>:<p>0. android</p>:<p>1. linux</p><p>Choice [android]: '''<span style="color:#FF0000">0</span>'''</p><p>All available ic:</p>:<p>0. h618</p><p>Choice [h618]: '''<span style="color:#FF0000">0</span>'''</p><p>All available board:</p>:<p>0. ft</p>:<p>1. p1</p>:<p>2. p2</p>:<p>3. p7</p>:<p>4. p7l</p>:<p>5. perf1</p>:<p>6. perf2</p>:<p>7. perf3</p>:<p>8. qa</p><p>Choice [p2]: '''<span style="color:#FF0000">2</span>'''</p><p>All available flash:</p>:<p>0. default</p>:<p>1. nor</p><p>Choice [default]: '''<span style="color:#FF0000">0</span>'''</p><p>All available kern_ver:</p>:<p>0. linux-5.4</p><p>Choice [linux-5.4]: '''<span style="color:#FF0000">0</span>'''</p><p>All available arch:</p>:<p>0. arm</p>:<p>1. arm64</p><p>Choice [arm64]: '''<span style="color:#FF0000">1</span>'''</p><p>'''......'''</p><p>*** Default configuration is based on 'sun50iw9p1smp_h618_android_defconfig'</p><p>#</p><p># configuration written to .config</p><p>#</p><p>make[1]: Leaving directory '/home/test/H618-Android12-Src/longan/out/kernel/build'</p><p>make: Leaving directory '/home/test/H618-Android12-Src/longan/kernel/linux-5.4'</p><p>INFO: clean buildserver</p><p>INFO: prepare_buildserver</p>|}</ol><ol start="2" style="list-style-type: lower-alpha;"><li>Then run the '''./build.sh''' script to start compilation.</li>{| class="wikitable" style="width:800px;" |-| test@test:~/H618-Android12-Src/longan$ '''./build.sh'''|}</ol><ol start="3" style="list-style-type: lower-alpha;"><li>After compilation is completed, you will see the following output</li>{| class="wikitable" style="width:800px;" |-| sun50iw9p1 compile Kernel successful
All available flashINFO:Prepare toolchain ...
0'''. default.....'''
1INFO: build kernel OK. nor
Choice [default]INFO: '''0'''build rootfs ...
All available kern_verINFO:skip make rootfs for android
0. linuxINFO: ----------------------------------------5.4
Choice [linux-5INFO: build lichee OK.4]: '''0'''
All available archINFO:----------------------------------------|}</ol></li></ol><ol start="3" style="list-style-type: decimal;"><li>Then use the following command to compile the Android source code and generate the final Android image</li>{| class="wikitable" style="width:800px;" |-| test@test:~$ '''cd H618-Android12-Src'''
0test@test:~/H618-Android12-Src$ '''source build/envsetup. armsh'''
1. arm64test@test:~/H618-Android12-Src$ '''lunch apollo_p2-userdebug'''
Choice [arm64]test@test: ~/H618-Android12-Src$ '''1make -j8'''
test@test:~/H618-Android12-Src$ '''pack'''|}</ol><ol start="4" style="list-style-type: decimal;"><li><p>The storage path of the Android image generated by compilation is:</p>{| class="wikitable" style="width:800px;" |-| <p>'''longan/out/h618_android12_p2_uart0......img'''</p>|}</li></ol>
*** Default configuration is based on 'sun50iw9p1smp_h618_android_defconfig'<span id="appendix"></span>
#= '''Appendix''' =
# configuration written to .config<span id="user-manual-update-history"></span>== User manual update history ==
#{| class="wikitable" style="width:800px;text-align: center;"|-| '''Version'''| '''Date'''| '''Release Notes'''|-| v1.0| 2023-09-14| initial version|}
make[1]: Leaving directory '/home/test/H618<span id="image-Android12update-Src/longan/out/kernelhistory"></build'span>== Image update history ==
make{| class="wikitable" style="width: Leaving directory '/home/test/H618800px;"|-Android12| style="text-Src/longan/kernel/linux-5.4align: center;"| '''Date'''
INFO| style="text-align: clean buildservercenter;"| '''Release Notes'''|-| style="text-align: center;"| 2023-09-14| orangepizero2w_1.0.0_debian_bullseye_server_linux5.4.125.7z
INFO: prepare_buildserverorangepizero2w_1.0.0_ubuntu_focal_server_linux5.4.125.7z
<ol start="2" style="list-style-type: lower-alpha;"><li>Then run the '''orangepizero2w_1./build0.sh''' script to start compilation0_ubuntu_focal_desktop_xfce_linux5.</li></ol>4.125.7z
test@test:~/H618-Android12-Src/longan$ '''orangepizero2w_1./build0.sh'''0_debian_bullseye_desktop_xfce_linux5.4.125.7z
<ol start="3" style="list-style-type: lower-alpha;">
<li>After compilation is completed, you will see the following output</li></ol>
sun50iw9p1 compile Kernel successfulorangepizero2w_1.0.0_ubuntu_jammy_server_linux6.1.31.7z
INFO: Prepare toolchain orangepizero2w_1.0.0_debian_bookworm_server_linux6.1.31.7z
'''orangepizero2w_1.0.0_debian_bullseye_server_linux6.1.31..'''7z
INFO: build kernel OKorangepizero2w_1.0.0_ubuntu_jammy_desktop_xfce_linux6.1.31.7z
INFO: build rootfs orangepizero2w_1.0.0_debian_bookworm_desktop_xfce_linux6.1.31.7z
INFO: skip make rootfs for androidorangepizero2w_1.0.0_debian_bullseye_desktop_xfce_linux6.1.31.7z
INFO: ----------------------------------------
INFO: build lichee OKOrangePi_Zero2w_Android12_v1INFO: ---------------------------------------- <ol start="3" style="list-style-type: decimal;"><li>Then use the following command to compile the Android source code and generate the final Android image</li></ol> test@test:~$ '''cd H618-Android12-Src''' test@test:~/H618-Android12-Src$ '''source build/envsetup0.sh''' test@test:~/H618-Android12-Src$ '''lunch apollo_p2-userdebug''' test@test:~/H618-Android12-Src$ '''make -j8''' test@test:~/H618-Android12-Src$ '''pack''' <ol start="4" style="list-style-type: decimal;"><li><p>The storage path of the Android image generated by compilation is:</p><p>'''longan/out/h618_android12_p2_uart0tar.img'''</p></li></ol> <span id="appendix"></span>gz
= '''Appendix''' =
 
<span id="user-manual-update-history"></span>
== User manual update history ==
 
{| class="wikitable" style="width:800px;text-align: center;"
|-
| '''Version'''
| '''Date'''
| '''Release Notes'''
|-
| v1.0
| 2023-09-14
| initial version
|}
 
<span id="image-update-history"></span>
== Image update history ==
 
{| class="wikitable" style="width:800px;"
|-
| style="text-align: center;"| '''Date'''
 
| style="text-align: center;"| '''Release Notes'''
|-
| style="text-align: center;"| 2023-09-14
|
orangepizero2w_1.0.0_debian_bullseye_server_linux5.4.125.7z
 
orangepizero2w_1.0.0_ubuntu_focal_server_linux5.4.125.7z
 
orangepizero2w_1.0.0_ubuntu_focal_desktop_xfce_linux5.4.125.7z
 
orangepizero2w_1.0.0_debian_bullseye_desktop_xfce_linux5.4.125.7z
 
orangepizero2w_1.0.0_ubuntu_jammy_server_linux6.1.31.7z
 
orangepizero2w_1.0.0_debian_bookworm_server_linux6.1.31.7z
 
orangepizero2w_1.0.0_debian_bullseye_server_linux6.1.31.7z
 
orangepizero2w_1.0.0_ubuntu_jammy_desktop_xfce_linux6.1.31.7z
 
orangepizero2w_1.0.0_debian_bookworm_desktop_xfce_linux6.1.31.7z
 
orangepizero2w_1.0.0_debian_bullseye_desktop_xfce_linux6.1.31.7z
 
OrangePi_Zero2w_Android12_v1.0.tar.gz
Opios-arch-aarch64-xfce-opizero2w-23.09-linux6.1.31.img.xz

Navigation menu