Skip to main content

Source compilation OmniROM 12.1 for Orange Pi Zero 2W / Zero 3

This article is about OmniROM compilation for Orange Pi Zero 2W / Zero 3.


1. Follow this link to download source code:

https://github.com/YAJATapps/android_apollo-p2_local_manifest/blob/omni-12.1/README.md 


2. After syncing the source code, configure the build:

cd longan
./build config


Welcome to mkscript setup progress
All available platform:
0. android
1. linux
Choice [android]: 0
All available ic:
0. h618
Choice [h618]: 0
All available board:
0. ft
1. p1
2. p2
3. p3
4. p7
5. p7l
6. perf1
7. perf2
8. perf3
9. qa
Choice [p2 - Zero 2W OR p3 - Zero 3]: 2
All available flash:
0. default
1. nor
Choice [default]: 0
All available kern_ver:
0. linux-5.4
Choice [linux-5.4]: 0
All available arch:
0. arm
1. arm64
Choice [arm64]: 1
......
*** Default configuration is based on 'sun50iw9p1smp_h618_android_defconfig'
#
# configuration written to .config
#
make[1]: Leaving directory '/home/omni12/longan/out/kernel/build'
make: Leaving directory '/home/omni12/longan/kernel/linux-5.4'
INFO: clean buildserver

INFO: prepare_buildserver


3. Build the kernel:

    ./build.sh


4. Go back to root directory from longan directory:

    cd ..


5. Source build environment:

    source build/envsetup.sh


6. Lunch:

    If you are compiling for Zero 3 then edit device/allwinner/apollo-p2/omni_apollo_p2.mk

    Set PRODUCT_ORANGE_PI_ZERO_2W to false. No need to change anything for Zero 2W.


    lunch apollo_p2-userdebug


7. Make android:

    make


8. Packing the image into allwinner format:

    cd longan

 

    If you are compiling for Zero 3 then edit build/pack. 

    change the line 79 from "PACK_BOARD=${FLAGS_board} # p3"    to    "PACK_BOARD=p3".

    No need to change anything for Zero 2W.


    pack


The output image is generated at longan/out/h618_android12_p2_uart0.img

Burn it with PhoenixCard.



Comments

Popular posts from this blog

OmniROM 12.1 v1 for Orange Pi Zero 2W

I ported this build of OmniROM Android 12.1 for Orange Pi 2W. It is made for tablets, unlike the one that manufacturer provides for TV. The sources are available at my blog . It should be flashed to sd card using Phoenix card. Just like the oem image. Download: omni-12.1_20240901_apollo_p2.img Compressed version (unzip before using): omni-12.1_20240901_apollo_p2.zip

OmniROM 12.1 v0.1 for Orange Pi Zero 3

 This is a port of OmniROM Android 12.1 for Orange Pi Zero 3. UPDATE (09/12/2024): It is confirmed to boot. It is not tested to boot on Orange Pi Zero 3 but should most likely work. This article will be updated after enough confirmations. There were only few differences from 2W in oem sources so I am providing this build based on my pi 2w  port . Its made for tablets, not TV image like oem. The sources are available at my  blog . Notifications on pi 2w It should be flashed to sd card using Phoenix card. Just like the oem image. Download: omni-12.1_20240909_apollo_p2_zero3.img Compressed version (unzip before using): omni-12.1_20240909_apollo_p2_zero3.zip

OmniROM 12.1 v2 (ARM64) for Orange Pi Zero 2W / Zero 3

This is an update for my earlier port of OmniROM 12.1 for Orange Pi Zero 2W /  Zero 3 . This build is ARM64. It can run both 32 and 64 bit apks. Sources (64 bit differences are pending, 32 bit is available to compile): blog . There are some graphics libraries that don't have 64 bit versions. I have used the available 32 bit versions of them but the eventual goal will be to replace the proprietary  libraries  with open source GPU drivers like mesa3d panfrost .   Unzip the file before using in Phoenix card. It should be flashed to sd card using Phoenix card. Same as the OEM image instructions . DOWNLOAD: For Orange Pi Zero 2W: omni-12.1_20241018_arm64_zero2w.zip For Orange Pi  Zero 3: omni-12.1_20241018_arm64_zero3.zip