Remove or replace Khadas boot logo

I have a VIM3L, a tone board and a TS050 touchscreen.
The VIM3L is running Android 9.0 (Pie).
I use a Windows 10 PC.

Task: Remove or replace the Khadas logo on boot-up

I found one post which mentioned these commands, as a solution to remove the logo:

$ su
$ dd if=/dev/zero of=/dev/logo bs=1M count=1

I have two questions:
Q1: Are these commands correct, when working with a VIM3L that is running Android 9.0?
Q2: Since I am using an external USB-C supply to power the VIM3L (my laptop will not provide enough power itself), how do I communicate with the VIM3L, since the USB-C is not available

  • Do I communicate with the VIM3L through another port?, or
  • Do I power the VIM3L in an alternate way (e.g. two pins on the board)?

The following is the document to replace the boot logo

Thank you for your response.
Two questions:
Q1: What interface am I using to communicate with the VIM3L? AM I to connect via the USB-C port and open a command window, and then type a command, e.g. “$ cp ~/Pictures/khadas.bmp device/khadas/kvim3/logo_img_files/bootup.bmp”? (remember: I am using a Windows PC)
Q2: Same as Q2 above - how do I power the VIM3L and communicate via USB-C at same time, or can I communicate via a different USB port and/or power the VIM3L another way - e.g. pins

Hello, if you want to communicate with the board, you can use adb, but if your PC cannot turn on the board, do you have a power bank? This can be used as power supply, and then use network adb to connect

From what I understand - the steps involved in setting up the device to use ADB over Wi-Fi still require some initial commands to be sent when the device is connected DIRECTLY to the PC, via USB.
However, when I do this, the device does not have enough power to run, so I cannot set it up for ADB over Wi–Fi.
Q: Are there any external pins that I can use to temporarily power the VIM3L, while I communicate with it via USB?

Not needed, the ADB commands are from your laptop/desktop computer, to configure it you run your VIM3L as is and enter the normal android settings, from there you can check the developer settings and enable the wifi debugging options.

please read through the document carefully and follow the steps described, the initial setup enabling the wifi debugging does not require you to connect to the PC.


I can now use ADB over Wi-Fi, thank you.

Now I am trying to update the boot logo.
So I used adb to open a shell.
This is the start of the instructions given in the link you gave me:

Build Logo on Android
1) Update a new logo picture as you want:
$ cp ~/Pictures/khadas.bmp device/khadas/kvim3/logo_img_files/bootup.bmp

So I created a new BMP file, placed in my Pictures folder, on my PC, and tried the following:

kvim3l:/ $ cp ~/Pictures/my_pic.bmp device/khadas/kvim3/logo_img_files/bootup.bmp

but got this:

cp: bad ‘// my_pic.bmp’: No such file or directory

I tried this:

1|kvim3l:/ $ cp C:/Users/me/Pictures/ my_pic.bmp device/khadas/kvim3/logo_img_files/bootup.bmp

but got his:

cp: bad ‘C:/Users/me/Pictures/ my_pic.bmp’: No such file or directory

So I am obviously making some kind of mistake.

@gar1234 the commands provided were for linux computer.

check the directory,
C:/Users/me/Pictures/ my_pic.bmp this is Unix directory format,

on windows you need to use




for escape characters.


I am still trying. I moved the bitmap to a simpler directory, but still no success.

@gar1234 You are following the instructions that relate to building the logo into the android image.
You need to recompile the bootloader logo as a whole.

Please read through all the provided steps, it has mentioned it needs to be recompiled with android source code, this is limitation of Android boot logo.

Ok, I am totally lost now.
I don’t understand the documentation, and I don’t understand your answer.

In the screenshot below, steps 1 and 2:
Are these performed using adb, so that the first image (khadas.bmp) is located on my Windows PC, and the second image (bootup.bmp) is located on the VIM3L device?

Also, are you saying that I need to geta copy of the Android source code, and then re-compile that source code with a new image, and then generate an image fo this Android and install it on to the VIM3L?

I appreciate your responses; however they are usually just one or two lines and a link to a document - and the documents do not have too many sentences / English / explanation in them - just commands etc.

So, when you are replying, I would really appreciate a bit more thorough explanation etc.

Thank you

No, these steps are not related to ADB, they are related to building the logo using android source code.

Yes, precisely. To build the Android firmware from the source code, you will need a Linux computer such as one running Ubuntu.

If you want to know more about how to get started with developing android images for the VIM3L, please check out the Android section from the development note

Please note, unless stated explicitly, these steps will not apply for running on a Windows computer.
you will require a Linux computer. We recommend running on Ubuntu 20.04 or 22.04.

For other Android related queries, I suggest waiting for the developers to return from vacation by next week, thank you for your patience.


Thank you for the reply.
Ok, that will be a whole new learning curve - working with a Linux.
Would Khadas be able to offer a paid service, to provide an Android image with a different logo and start up screen?


Hello, because the logo is placed in the logo.img image under Android, you must regenerate the logo.img you want and then replace the original one, so you must modify it based on the source code. Our document describes the steps to replace the logo and compile it into logo.img. This difference from Linux is a characteristic of Android.

Okay thanks.
Khadas built me an Android image a few weeks ago (‘vim3l-android-9-64bit-v230725.raw.img.xz’), when I was trying to get my VIM3L to work with the TS050 touchscreen.
Would Khadas be able to offer a paid service to rebuild the same image, but with a replacement logo and animation that we could provide?

Hello, if you just want to change the startup logo and animation, it is recommended that you pull the code yourself and replace it with what you want.

I will try to make a request for this feature
please wait I will replay to you by PM later


This is becoming an urgent matter for us.

Q1: Could you let me know very soon please if Khadas is able to provide us with an image for the VIM3L, rebuilt with a provided logo and animation?

More questions if the answer to question 1 is no:

Q2: Otherwise, can you recommend anyone who would do this for us?

When I was trying to get this VIM3L working with the TS050, Khadas sent me an image that was not available via OOWOW at the time: I was provided with a custom image: vim3l-android-9-64bit-v230725.raw.img.xz. This is just an image file, not the source code.

Q3: If I needed the source, where would I get the source code for this specific image?

Hello @gar1234 you can use this tool to do the conversion of the logo file

Note: this tool uses python2 not python3.
You need to follow the README instructions provided to convert the image to logo.img file.

Logo Image Requirements:

There are requirements however, This image should be of type 1920 x 1080px size, 16bit BMP file. with GIMP you can convert it so that it with this setting.

Remember the file name of the boot logo you want to convert should be bootup.bmp.

Uploading the logo.img file

After using the tool to pack bootup.bmp file to logo.img file, you need to upload to the board with adb fastboot.

connect your device to your laptop with the fastboot and ADB tools installed, note you must need Terminal with Adminstrator privilege/sudo

adb devices

If you do not see any ID, you need to check if ADB tools are installed correctly.
and see if devices ID is present, if so proceed with

fastboot reboot
fastboot flashing unlock
fastboot flash logo path/to/logo.img
fastboot flashing lock

On my linux pc I have tested this, it is working:

$ sudo fastboot flashing unlock
OKAY [  0.046s]
Finished. Total time: 0.046s
$ sudo fastboot flash logo logo.img
Sending 'logo' (4050 KB)                           OKAY [  0.240s]
Writing 'logo'                                     OKAY [  0.192s]
Finished. Total time: 0.559s
$ sudo fastboot flashing lock
OKAY [  0.047s]
Finished. Total time: 0.047s
$ sudo fastboot reboot
Rebooting                                          OKAY [  0.002s]
Finished. Total time: 0.103s

Then you can reset your device and your logo should appear.

@xiong.zhang please provide details of source/commit information of v230725 here.


1: Does this require a Linux PC to this work with the logo? I do not have a Linux PC
2. The Android image was provided by yourselves - see item 24/26 in this post here.
3. Am I to presume from your response that means Khadas will not be able to do this for me?
4. What about replacing the Animation?