VIM3L android source code

I have vim3 and vim3L
khadas homepage describe only VIM3 android source download.

Can I share VIM3 android source code with VIM3L?

I test vim3 binary in vim3L … not working…

VIM3 and VIM3L is the same SDK source code.

1 Like

Hello Terry
I compile VIM3 android source code. It is working welll in VIM3
but VIM3L not working…

is it really same… your code link separate VIM3 and VIM3L…
is this code working in VIM3L?

How did you build source code for VIM3L? Can you list the all steps for that?

I just compile same with VIM3…
following instruction… VIM3L is different? for example ./mk vim3l <-- like this?

Hi Guys,
Apologies if this isn’t the correct thread for this question, please feel free to move it to a more appropriate one.
Is there anybody that can tell me what configuration file is parsed by Android Pie, for it to recognise the IR remote control. I need this information so I can add the appropriate file and use the same mecool dvr IR remote in my Android setup as I’m using in my CoreELEC setup. Some have suggested different (USB) remotes that work, but I’m not interested in that, I’m trying to get my expensive, programmable IR remotes to work with Android (not replace them).
So far, I haven’t found anyone with the knowledge of what files are required to accomplish this :disappointed_relieved:

Yes, you are right :smiley:

What’s the device of you? VIM1 or VIM3/VIM3L?
You need to rebuild the kernel dts file

VIM3. From what I have been able to discover, the remote.conf needs to be in the etc folder in the recovery partition. My quest is now to find out how :thinking:
The remote that I need Android to recognise is a mecool kIII pro remote and I do have the remote.conf file, just finding capable tools to unpack/repack seems to be a bit of a headache :slightly_smiling_face:

Thanks for the info Terry, sorted it out now :+1:

Something looks wrong with device folder in Android 64 Sources for Vim3.

@Terry, could you please take a look ?

I downloaded this sources before and they worked pretty fine. This time the folder device is incomplete. I tried several times and everyone got this behavior.

Followed instructions as in VIM3/3L Build Android [Khadas Docs]

Hello, did your compilation fail or what? Can you describe it clearly so that I can judge what the problem is?

Looks like the sources are arriving incomplete.

  • One of the times it arrived missing the the devices/kvim3l folder. Other times it arrived with this folder but I’m getting errors when I try to compile, usually related to missing files.
  • I tried several times and from different machines (mainly running Ubuntu 18.04.6 LTS and 22) with plenty of free space
  • I’m using “Python3 repo” command line to init and sync (tried different repos but usually 3.32 the one that cames inside the .repo folder)
  • I already downloaded the code in the past with one of the 18.04 machines, which compiles the code

One of the erros was

Blockquote CC [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/src/driver/sensor/IMX224_drv.o
CC [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/src/driver/sensor/SC2232h_drv.o
CC [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/src/driver/sensor/Dummy_drv.o
CC [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/src/driver/sensor/IMX335_drv.o
CC [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/src/driver/sensor/SC8238CS_drv.o
CC [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/app/soc_sensor.o
LD [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/iv009_isp_sensor.o
Building modules, stage 2.
MODPOST 1 modules
CC /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/iv009_isp_sensor.mod.o
LD [M] /media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/arm_isp_modules/subdev/sensor/iv009_isp_sensor.ko
make: Leaving directory ‘/media/disk4/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_original10/out/target/product/kvim3/obj/KERNEL_OBJ’
ninja: build stopped: subcommand failed.
18:14:38 ninja failed with: exit status 1

failed to build some targets (33:38 (mm:ss))

As a plan B, I have a working code here for Android9 64bits for vim3 and vim3L. I made tons of modifications and it compiles and works fine except for the ‘Q’ key on a USB keyboard. On the virtual keyboard all keys works and on USB all keys, including special characters works fine. That’s the reason I’m trying to do a fresh start with the Android source as my backups aren’t old enough.
Do you have an idea of what could be causing this strange behavior ? Or how could I debug it ? I was wondering that maybe somekind of programm that uses function keys or something like this could be the issue.


According to your description, you mean that the code that you could compile before can’t be compiled now, right? Do you want to pull the old source code? Is the “repo sync -j10” you used correct? Is there an error in the process?

The source code of Android 9 64bit I had in the past I could compile then and can compile right now and runs.

This new Android Source (also Android 9 64bit) that I’m trying to download since last week is not compiling on the same machine. Yes, I use “python3 repo sync” (-j4, -j10 or -j20 sometimes)

You enter the git log under .repo/manifests in your root directory to see the latest commit and send it to me, if you haven’t modified it locally
You can execute the following command

repo forall -c git git reset --hard HEAD---------traverse all warehouses, clear local modifications
repo sync -d---------- will force HEAD to point to the manifest library, ignoring local changes

Thanks for you quick feedback !

I got an error, letś take a look.

I didn’t modify anything in these latest downloads and on .repo/manifests I can only see default.xml and .git folder, and nothing more

After executing your first suggested commands I got:

Blockquotepython3 repo forall -c git git reset --hard HEAD---------traverse all warehouses, clear local modifications
skipping prebuilts/deqp/
skipping prebuilts/devtools/
skipping prebuilts/gcc/darwin-x86/aarch64/aarch64-linux-android-4.9/
skipping prebuilts/gcc/darwin-x86/arm/arm-linux-androideabi-4.9/
skipping prebuilts/gcc/darwin-x86/host/i686-apple-darwin-4.2.1/
skipping prebuilts/gcc/darwin-x86/mips/mips64el-linux-android-4.9/
skipping prebuilts/gcc/darwin-x86/x86/x86_64-linux-android-4.9/
skipping prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/
skipping prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/
skipping prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/
skipping prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/
skipping prebuilts/gcc/linux-x86/mips/mips64el-linux-android-4.9/
skipping prebuilts/gcc/linux-x86/x86/x86_64-linux-android-4.9/
skipping prebuilts/gdb/darwin-x86/
skipping prebuilts/gdb/linux-x86/
skipping prebuilts/go/darwin-x86/
skipping prebuilts/go/linux-x86/
skipping prebuilts/gradle-plugin/
skipping prebuilts/jdk/jdk8/
skipping prebuilts/jdk/jdk9/
skipping prebuilts/ktlint/
skipping prebuilts/libs/libedit/
skipping prebuilts/maven_repo/android/
skipping prebuilts/maven_repo/bumptech/
skipping prebuilts/maven_repo/google-play-service-client-libraries-3p/
skipping prebuilts/vndk/v27/
skipping sdk/
skipping system/bt/
skipping system/ca-certificates/
skipping system/chre/
skipping system/connectivity/wificond/
skipping system/connectivity/wifilogd/
skipping system/core/
skipping system/extras/
skipping system/gatekeeper/
skipping system/hardware/interfaces/
skipping system/hwservicemanager/
skipping system/iot/attestation/
skipping system/keymaster/
skipping system/libfmq/
skipping system/libhidl/
skipping system/libhwbinder/
skipping system/libufdt/
skipping system/libvintf/
skipping system/media/
skipping system/netd/
skipping system/nfc/
skipping system/nvram/
skipping system/security/

On the second command however I got an error

Checking out: 77% (544/705) android_prebuilts_abi-dumps_ndkfatal: Unable to create ‘/media/disk1/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_15/prebuilts/gradle-plugin/.git/index.lock’: File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by ‘git commit’. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
error: prebuilts/gradle-plugin/: android_prebuilts_gradle-plugin checkout c6ab97b63e8265a620822f4d6bb144bee8e442e9
error: Cannot checkout android_prebuilts_gradle-plugin
error: Unable to fully sync the tree.
error: Checking out local projects failed.
Failing repos:
Try re-running with “-j1 --fail-fast” to exit at the first error.

I manually deleted the “prebuilts/gradle-plugin” folder and rereun the command (with the -j1 and failfast) ans lokks like it worked

Blockquotepython3 repo sync -d -j1 --fail-fast
Fetching: 0% (7/705) Last synced: platform/prebuilts/maven_repo/google-play-serFetching: 14% (105/705) Last synced: android_vendor_amlogic_apps_NativeImagePlayFetching: 19% (137/705) Last synced: android_vendor_amlogic_external_DTVKit_releFetching: 21% (153/705) Last synced: android_hardware_wifi_broadcom_drivers_ap6xFetching: 22% (159/705) Last synced: android_hardware_wifi_realtek_drivers_8723dFetching: 25% (180/705) Last synced: android_external_nos_test_system-test-harneFetching: 30% (214/705) Last synced: android_hardware_wifi_qualcomm_drivers_qca9Fetching: 31% (224/705) Last synced: android_hardware_wifi_qualcomm_drivers_qca9Fetching: 32% (230/705) Last synced: android_hardware_wifi_realtek_drivers_8723bFetching: 34% (243/705) Last synced: android_hardware_wifi_realtek_drivers_8192cFetching: 36% (259/705) Last synced: android_hardware_wifi_realtek_drivers_8723bFetching: 40% (286/705) Last synced: android_external_google-fonts_dancing-scripFetching: 40% (288/705) Last synced: android_external_python_gapic-google-cloud-Fetching: 41% (295/705) Last synced: android_packages_providers_ApplicationsProvFetching: 44% (315/705) Last synced: android_external_google-api-services-storagFetching: 45% (318/705) Last synced: android_external_subsampling-scale-image-viFetching: 46% (329/705) Last synced: android_hardware_wifi_realtek_drivers_8723dFetching: 48% (343/705) Last synced: android_packages_providers_BlockedNumberProFetching: 48% (344/705) Last synced: android_packages_providers_PartnerBookmarksFetching: 48% (345/705) Last synced: android_hardware_wifi_realtek_drivers_8188fFetching: 52% (369/705) Last synced: android_hardware_wifi_realtek_drivers_8189eFetching: 52% (373/705) Last synced: android_packages_providers_UserDictionaryPrFetching: 53% (376/705) Last synced: android_packages_services_NetworkRecommendaFetching: 56% (399/705) Last synced: android_hardware_wifi_realtek_drivers_8723aFetching: 59% (421/705) Last synced: android_hardware_wifi_realtek_drivers_8822cFetching: 60% (424/705) Last synced: android_hardware_wifi_qualcomm_drivers_qca6Fetching: 60% (430/705) Last synced: android_hardware_wifi_realtek_drivers_8822bFetching: 61% (432/705) Last synced: android_external_google-fonts_carrois-gothiFetching: 62% (440/705) Last synced: android_packages_services_BuiltInPrintServiFetching: 63% (450/705) Last synced: android_vendor_amlogic_external_DTVKit_andrFetching: 63% (451/705) Last synced: android_hardware_wifi_realtek_drivers_8192eFetching: 65% (459/705) Last synced: android_hardware_wifi_realtek_drivers_8821cFetching: 66% (468/705) Last synced: android_vendor_amlogic_external_libaudioeffFetching: 70% (494/705) Last synced: android_frameworks_opt_inputconnectioncommoFetching: 72% (509/705) Last synced: android_hardware_wifi_realtek_drivers_8812aFetching: 74% (524/705) Last synced: android_hardware_wifi_realtek_drivers_8189fFetching: 76% (540/705) Last synced: android_hardware_qcom_neuralnetworks_hvxserFetching: 78% (551/705) Last synced: android_prebuilts_gcc_linux-x86_host_x86_64Fetching: 80% (566/705) Last synced: android_hardware_wifi_realtek_drivers_8188eFetching: 80% (571/705) Last synced: android_hardware_wifi_realtek_drivers_8192eFetching: 81% (574/705) Last synced: android_hardware_wifi_realtek_drivers_8192dFetching: 81% (577/705) Last synced: android_external_python_google-api-python-cFetching: 82% (581/705) Last synced: android_prebuilts_gcc_darwin-x86_aarch64_aaFetching: 82% (585/705) Last synced: android_hardware_wifi_realtek_drivers_8811aFetching: 83% (587/705) Last synced: android_hardware_wifi_realtek_drivers_8822bFetching: 83% (588/705) Last synced: android_prebuilts_gcc_darwin-x86_host_i686-Fetching: 83% (591/705) Last synced: android_prebuilts_gcc_linux-x86_arm_arm-linFetching: 83% (592/705) Last synced: android_packages_providers_TelephonyProvideFetching: 86% (613/705) Last synced: android_hardware_wifi_realtek_drivers_8821cFetching: 87% (620/705) Last synced: android_prebuilts_gcc_linux-x86_host_x86_64Fetching: 88% (627/705) Last synced: android_prebuilts_gcc_linux-x86_mips_mips64Fetching: 89% (630/705) Last synced: android_external_python_proto-google-cloud-Fetching: 91% (642/705) Last synced: android_prebuilts_gcc_linux-x86_x86_x86_64-Fetching: 91% (645/705) Last synced: android_prebuilts_gcc_linux-x86_aarch64_aarFetching: 92% (653/705) Last synced: android_external_python_google-auth-httplibFetching: 93% (656/705) Last synced: android_prebuilts_gcc_darwin-x86_mips_mips6Fetching: 93% (659/705) Last synced: android_vendor_amlogic_prebuilt_libstagefriFetching: 94% (667/705) Last synced: android_prebuilts_gcc_darwin-x86_x86_x86_64Fetching: 96% (677/705) Last synced: android_prebuilts_gcc_darwin-x86_arm_arm-liFetching: 98% (696/705) Last synced: android_vendor_amlogic_common_prebuilt_libmFetching: 100% (705/705), done in 11.902s
Checking out: 78% (554/705) android_prebuilts_gcc_darwin-x86_aarch64_aarch64-linChecking out: 78% (555/705) android_prebuilts_gcc_darwin-x86_arm_arm-linux-androChecking out: 78% (556/705) android_prebuilts_gcc_darwin-x86_host_i686-apple-darChecking out: 79% (557/705) android_prebuilts_gcc_darwin-x86_mips_mips64el-linuxChecking out: 79% (558/705) android_prebuilts_gcc_darwin-x86_x86_x86_64-linux-anChecking out: 79% (559/705) android_prebuilts_gcc_linux-x86_aarch64_aarch64-linuChecking out: 79% (560/705) android_prebuilts_gcc_linux-x86_arm_arm-linux-androiChecking out: 79% (561/705) android_prebuilts_gcc_linux-x86_host_x86_64-linux-glChecking out: 79% (562/705) android_prebuilts_gcc_linux-x86_host_x86_64-w64-mingChecking out: 79% (563/705) android_prebuilts_gcc_linux-x86_mips_mips64el-linux-Checking out: 80% (564/705) android_prebuilts_gcc_linux-x86_x86_x86_64-linux-andChecking out: 80% (568/705) android_prebuilts_go_linux-x86Updating files: 3% (Updating files: 100% (33748/33748), done.
Checking out: 81% (576/705) platform/prebuilts/maven_repo/google-play-service-clChecking out: 94% (667/705) android_vendor_amlogic_external_DTVKit_android-inputChecking out: 98% (692/705) android_vendor_amlogic_common_prebuilt_libmediadrm_pChecking out: 100% (705/705), done in 59.745s
repo sync has finished successfully.

I’m trying to compile again to see if now it works.

This is because git is locked, you can delete it manually

Sure, I deleted it and then rerun the second command. Looks like it worked. Trying to recompile now.

Unfortunately didn’t work.

LD [M] /media/disk1/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_15/out/target/product/kvim3l/obj/npu_modules/galcore.o
Building modules, stage 2.
MODPOST 1 modules
CC /media/disk1/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_15/out/target/product/kvim3l/obj/npu_modules/galcore.mod.o
LD [M] /media/disk1/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_15/out/target/product/kvim3l/obj/npu_modules/galcore.ko
make: Leaving directory ‘/media/disk1/b902426d-e54f-4173-8929-c53e78222706/khadas9_64_15/out/target/product/kvim3l/obj/KERNEL_OBJ’
ninja: build stopped: subcommand failed.
00:19:49 ninja failed with: exit status 1

failed to build some targets (53:16 (mm:ss))

Btw this disk have 2.2tb free and it is Ubuntu 18.