VIM3/VIM3L AOSP Android 14.0 Upside Down Cake

Ok, installed magisk 27 app which I then ran and install magisk gapps module LiteGapps-arm64-14.0-20240223-official.zip. Btw, you can install magisk and then patch the boot.img from the link above (post #1 I believe) and then just flash the magisk patched boot.img via “fastboot flash boot path-to-your-patched-boot-img”. For me a14 booted right up.

Now for the next problem. When starting google play store app i’m constantly getting “this device isn’t play protected certifiied” which is strainge considering the vim3 is suppose to be a google certifified test board???

I installed and ran “device id app” found on play store and yes is was a bitch getting that apk installed on vim3 a14. What it showed was yes I have a android-id but NO GSFID? Any suggestions to resolve this problem would be greatly appreciated.

Wondering if you’re having any luck with wife/bluetooth problem. Also, shouldn’t there be some sort of windows mtp driver?

Btm, vim3 a14 file transfer (mtp) doesn’t work in either ubuntu 22.04 or Win 11. Doing any testing with this build would be a lot easier is it did work.

And also, thanks to everyone that help in getting a14 running!

Hi, yes today I could make Wi-Fi work – you need to change minor stuff in the kernel and in the AOSP build:

CONFIG_BCMDHD_FW_PATH="/vendor/firmware/brcm/fw_bcmdhd.bin"

to

CONFIG_BCMDHD_FW_PATH="/vendor/firmware/brcm/fw_bcm4359c0_ag.bin"

and rebuilt the kernel

  • In the AOSP source in device/amlogic/yukawa/device.mk, I changed the wifi firmware that is copied:
# BT and Wifi FW
# PRODUCT_PACKAGES += \
#     yukawa_brcmfmac4359-sdio.bin \
#     yukawa_brcmfmac4359-sdio.txt \
#     yukawa_brcmfmac4359_vim3l_bin \
#     yukawa_brcmfmac4359_vim3l_txt

PRODUCT_COPY_FILES += \
    $(LOCAL_PATH)/binaries/bt-wifi-firmware/BCM.hcd:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/BCM4359C0.hcd \
    $(LOCAL_PATH)/binaries/bt-wifi-firmware/fw_bcm4359c0_ag.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/fw_bcm4359c0_ag.bin \
    $(LOCAL_PATH)/binaries/bt-wifi-firmware/nvram_ap6359.txt:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/nvram.txt

Another update:
To make scrcpy work, add the following lines to device/amlogic/yukawa/manifest.xml:

    <hal format="hidl">
        <name>android.hardware.media.omx</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IOmx</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IOmxStore</name>
            <instance>default</instance>
        </interface>
    </hal>

To OP
If you’re going to compile a new build, PLEASE include gapps core at the very least. The version I installed via magisk is only 72mb.

Thanks in advance!

Ps. add byline on how to register “Device ID”. I’ve been trying for 2 days now an nothing is working so far. All Device ID Changers have failed an anything I’ve tried to register via
https://www.google.com/android/uncertified/?pli=1 is not working.

hi

Some how my Scrcpy is not working, I followed all the build and flashing steps mentioned above i am getting the following error on running the scrcpy

scrcpy
scrcpy 2.4 https://github.com/Genymobile/scrcpy
INFO: ADB device found:
INFO: → (usb) C8631471EE84 device ATV_on_yukawa
/usr/local/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 306.2 MB/s (69027 bytes in 0.000s)
[server] INFO: Device: [KHADAS] Android ATV on yukawa (Android 14)
[server] ERROR: Attempt to invoke virtual method ‘java.lang.Class java.lang.Object.getClass()’ on a null object reference
java.lang.NullPointerException: Attempt to invoke virtual method ‘java.lang.Class java.lang.Object.getClass()’ on a null object reference
at com.genymobile.scrcpy.wrappers.DisplayManager.getDisplayInfo(DisplayManager.java:89)
at com.genymobile.scrcpy.Device.(Device.java:73)
at com.genymobile.scrcpy.Server.scrcpy(Server.java:121)
at com.genymobile.scrcpy.Server.internalMain(Server.java:259)
at com.genymobile.scrcpy.Server.main(Server.java:214)
at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:359)
ERROR: Server connection failed

Also, I am interested to use WiFi P2P APIs in my application. But I am getting this “onFailure(): WifiP2pManager.BUSY” any particular setting needs to be done or any changes in the build for same??

Hello, some functions of Yukawa may not be fully supported yet. We will update the firmware again in May or June.

Hi, have you tried adding the android.hardware.media.omx driver to device/amlogic/yukawa/manifest.xml to make scrcpy work? (see post above)

yep i tried by adding that, but my device did not boot up. So i figured out by connecting an HDMI monitor my scrcpy worked.

The latest 20240613 version update notes are as follows

@xiong.zhang
hello, does 20240613 version support AB partition? I use the “bootctl set-active-boot-slot 1” command to switch to partition b, but the system won’t boot.

I’m sorry, but this does not support AB partition.

do you have any plan to support AB partition?

Sorry, we do not plan to use AB partition for any of our firmwares, sorry.

is there any chance for porting Android 14 to vim4 board ?

Hello, we are already working on this plan and will announce it to the public soon. Please stay tuned

2 Likes

Hi Xiong, I am using 20240613 build and following these instructions to update a VIM3 (no L, no Pro) from latest official Android image (Android 9).

I am able to follow all steps but it seems kernel init fails with following message:

100bdlr_step_size ps== 420
result report
boot times 0Enable ddr reg access
00000000
emmc switch 3 ok
Authentication key not yet programmed
get rpmb counter error 0x00000007
00000000
emmc switch 1 ok
Load FIP HDR from eMMC, src: 0x00010200, des: 0x01700000, size: 0x00004000, part: 1
Load BL3X from eMMC, src: 0x00078200, des: 0x01768000, size: 0x000c0c00, part: 1
0.0;M3 CHK:0;cm4_sp_mode 0
[Image: g12b_v1.1.3394-7d43064d5 2020-05-07 15:37:11 gongwei.chen@droid11-sz]
OPS=0x10
ring efuse init
chipver efuse init
29 0b 10 00 01 13 21 00 00 15 31 34 32 58 33 50
[0.016080 Inits done]
secure task start!
high task start!
low task start!
run into bl31
NOTICE: BL31: v1.3(release):d9e1bbe85
NOTICE: BL31: Built : 19:07:43, Sep 7 2020
NOTICE: BL31: G12A normal boot!
NOTICE: BL31: BL33 decompress pass
ERROR: Error initializing runtime service opteed_fast

Hello, could you please share with me the log of your burning process

Here is the output from cmd line:

C:\workspace\vim3-u-aosp-v240613
λ python boot-g12.py %BOOTLOADER_NAME%
Firmware Version :
ROM: 3.2 Stage: 0.0
Need Password: 0 Password OK: 1
Writing u-boot_kvim3_ab.bin at 0xfffa0000…
[DONE]
Running at 0xfffa0000…
[DONE]
AMLC dataSize=16384, offset=65536, seq=0…
[DONE]
AMLC dataSize=49152, offset=393216, seq=1…
[DONE]
AMLC dataSize=16384, offset=229376, seq=2…
[DONE]
AMLC dataSize=49152, offset=245760, seq=3…
[DONE]
AMLC dataSize=49152, offset=294912, seq=4…
[DONE]
AMLC dataSize=16384, offset=65536, seq=5…
[DONE]
AMLC dataSize=1198960, offset=81920, seq=6…
[DONE]
[BL2 END]

C:\workspace\vim3-u-aosp-v240613
λ fastboot devices
C86314724EE0 fastboot

C:\workspace\vim3-u-aosp-v240613
λ fastboot oem format
OKAY [ 0.293s]
Finished. Total time: 0.293s

C:\workspace\vim3-u-aosp-v240613
λ fastboot flash bootloader %BOOTLOADER_NAME%
Sending ‘bootloader’ (1250 KB) OKAY [ 0.047s]
Writing ‘bootloader’ OKAY [ 0.080s]
Finished. Total time: 0.190s

C:\workspace\vim3-u-aosp-v240613
λ fastboot erase bootenv && fastboot oem format && fastboot reboot bootloader
Erasing ‘bootenv’ OKAY [ 0.016s]
Finished. Total time: 0.077s
OKAY [ 0.013s]
Finished. Total time: 0.013s
Rebooting into bootloader OKAY [ 0.000s]
Finished. Total time: 0.016s

C:\workspace\vim3-u-aosp-v240613
λ fastboot devices
C86314724EE0 fastboot

C:\workspace\vim3-u-aosp-v240613
λ fastboot flash boot_a boot.img && fastboot flash boot_b boot.img && fastboot flash super super.img && fastboot flash userdata userdata.img && fastboot flash dtbo_a dtbo-unsigned.img && fastboot flash dtbo_b dtbo-unsigned.img && fastboot erase misc && fastboot erase frp && fastboot format metadata && fastboot flash vbmeta_a vbmeta.img && fastboot flash vbmeta_b vbmeta.img && fastboot reboot
Sending ‘boot_a’ (65536 KB) OKAY [ 2.901s]
Writing ‘boot_a’ OKAY [ 2.619s]
Finished. Total time: 5.553s
Sending ‘boot_b’ (65536 KB) OKAY [ 2.897s]
Writing ‘boot_b’ OKAY [ 2.195s]
Finished. Total time: 5.157s
Sending sparse ‘super’ 1/3 (765864 KB) OKAY [ 35.617s]
Writing ‘super’ OKAY [ 25.115s]
Sending sparse ‘super’ 2/3 (755552 KB) OKAY [ 35.401s]
Writing ‘super’ OKAY [ 28.158s]
Sending sparse ‘super’ 3/3 (28980 KB) OKAY [ 1.368s]
Writing ‘super’ OKAY [ 1.047s]
Finished. Total time: 127.212s
Sending ‘userdata’ (2260 KB) OKAY [ 0.094s]
Writing ‘userdata’ OKAY [ 0.623s]
Finished. Total time: 0.795s
Sending ‘dtbo_a’ (4 KB) OKAY [ 0.016s]
Writing ‘dtbo_a’ OKAY [ 0.016s]
Finished. Total time: 0.046s
Sending ‘dtbo_b’ (4 KB) OKAY [ 0.000s]
Writing ‘dtbo_b’ OKAY [ 0.016s]
Finished. Total time: 0.047s
Erasing ‘misc’ OKAY [ 0.009s]
Finished. Total time: 0.034s
Erasing ‘frp’ OKAY [ 0.000s]
Finished. Total time: 0.018s
mke2fs 1.46.2 (28-Feb-2021)
Creating filesystem with 4096 4k blocks and 4096 inodes

Allocating group tables: done
Writing inode tables: done
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done

Sending ‘metadata’ (44 KB) OKAY [ 0.019s]
Writing ‘metadata’ OKAY [ 0.017s]
Finished. Total time: 0.381s
Sending ‘vbmeta_a’ (4 KB) OKAY [ 0.000s]
Writing ‘vbmeta_a’ OKAY [ 0.000s]
Finished. Total time: 0.053s
Sending ‘vbmeta_b’ (4 KB) OKAY [ 0.000s]
Writing ‘vbmeta_b’ OKAY [ 0.000s]
Finished. Total time: 0.063s
Rebooting OKAY [ 0.001s]
Finished. Total time: 0.006s

Hello, did you execute this step too early? Here is the log I burned before. You can follow the command sequence below to execute it

root@mind:/home/xiong/pyamlboot# python3 boot-g12.py vim3_userdebug_u_aosp_v240613/u-boot_kvim3_ab.bin
Firmware Version :
ROM: 3.2 Stage: 0.0
Need Password: 0 Password OK: 1
Writing vim3_userdebug_u_aosp_v240613/u-boot_kvim3_ab.bin at 0xfffa0000...
[DONE]
Running at 0xfffa0000...
[DONE]
AMLC dataSize=16384, offset=65536, seq=0...
[DONE]
AMLC dataSize=49152, offset=393216, seq=1...
[DONE]
AMLC dataSize=16384, offset=229376, seq=2...
[DONE]
AMLC dataSize=49152, offset=245760, seq=3...
[DONE]
AMLC dataSize=16384, offset=65536, seq=4...
[DONE]
AMLC dataSize=49152, offset=393216, seq=5...
[DONE]
AMLC dataSize=16384, offset=229376, seq=6...
[DONE]
AMLC dataSize=49152, offset=245760, seq=7...
[DONE]
AMLC dataSize=49152, offset=294912, seq=8...
[DONE]
AMLC dataSize=16384, offset=65536, seq=9...
[DONE]
AMLC dataSize=1198960, offset=81920, seq=10...
[DONE]
[BL2 END]
root@mind:/home/xiong/pyamlboot# fastboot flash bootloader vim3_userdebug_u_aosp_v240613/u-boot_kvim3_ab.bin
< waiting for any device >
Sending 'bootloader' (1250 KB)                     OKAY [  0.061s]
Writing 'bootloader'                               OKAY [  0.063s]
Finished. Total time: 0.205s
root@mind:/home/xiong/pyamlboot# fastboot erase bootenv && fastboot oem format && fastboot reboot bootloader
Erasing 'bootenv'                                  OKAY [  0.007s]
Finished. Total time: 0.015s
OKAY [  0.009s]
Finished. Total time: 0.009s
Rebooting into bootloader                          OKAY [  0.004s]
Finished. Total time: 0.054s
root@mind:/home/xiong/pyamlboot# cd vim3_userdebug_u_aosp_v240613
root@mind:/home/xiong/pyamlboot/vim3_userdebug_u_aosp_v240613# fastboot devices
C8631471DA19     Android Fastboot

root@mind:/home/xiong/pyamlboot/vim3_userdebug_u_aosp_v240613# fastboot flash boot_a boot.img && fastboot flash boot_b boot.img && fastboot flash super super.img && fastboot flash userdata userdata.img && fastboot flash dtbo_a dtbo-unsigned.img && fastboot flash dtbo_b dtbo-unsigned.img && fastboot erase misc && fastboot erase frp && fastboot format metadata && fastboot flash vbmeta_a vbmeta.img && fastboot flash vbmeta_b vbmeta.img
Sending 'boot_a' (65536 KB)                        OKAY [  3.120s]
Writing 'boot_a'                                   OKAY [  2.248s]
Finished. Total time: 5.397s
Sending 'boot_b' (65536 KB)                        OKAY [  3.086s]
Writing 'boot_b'                                   OKAY [  2.244s]
Finished. Total time: 5.354s
Sending sparse 'super' 1/3 (765864 KB)             OKAY [ 37.087s]
Writing 'super'                                    OKAY [ 28.367s]
Sending sparse 'super' 2/3 (755552 KB)             OKAY [ 36.671s]
Writing 'super'                                    OKAY [ 30.240s]
Sending sparse 'super' 3/3 (28980 KB)              OKAY [  1.408s]
Writing 'super'                                    OKAY [  1.148s]
Finished. Total time: 135.025s
Sending 'userdata' (2260 KB)                       OKAY [  0.111s]
Writing 'userdata'                                 OKAY [  0.741s]
Finished. Total time: 0.894s
Sending 'dtbo_a' (4 KB)                            OKAY [  0.005s]
Writing 'dtbo_a'                                   OKAY [  0.006s]
Finished. Total time: 0.037s
Sending 'dtbo_b' (4 KB)                            OKAY [  0.005s]
Writing 'dtbo_b'                                   OKAY [  0.007s]
Finished. Total time: 0.032s
Erasing 'misc'                                     OKAY [  0.007s]
Finished. Total time: 0.024s
Erasing 'frp'                                      OKAY [  0.007s]
Finished. Total time: 0.025s
mke2fs 1.46.6 (1-Feb-2023)
Creating filesystem with 4096 4k blocks and 4096 inodes

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done

Sending 'metadata' (52 KB)                         OKAY [  0.007s]
Writing 'metadata'                                 OKAY [  0.035s]
Finished. Total time: 0.082s
Sending 'vbmeta_a' (4 KB)                          OKAY [  0.005s]
Writing 'vbmeta_a'                                 OKAY [  0.007s]
Finished. Total time: 0.036s
Sending 'vbmeta_b' (4 KB)                          OKAY [  0.005s]
Writing 'vbmeta_b'                                 OKAY [  0.007s]
Finished. Total time: 0.035s
root@mind:/home/xiong/pyamlboot/vim3_userdebug_u_aosp_v240613#