Boot Logo Customization on NVIDIA Jetson Modules

Boot Logo Customization on NVIDIA Jetson Modules

Jetson AGX Xavier | Jetson Nano | Jetson Xavier NX

17 February 2021

1- Generating the bmp.blob file 

2- Flashing the bmp.blob file 

3- Changing the login logo  


Hardware: DSBOARD-XV

OS: Ubuntu 16.04.1 LTS

Language: C++

In this tutorial we used NVIDIA Jetson Xavier (8GB) module on MILBOARD-XV, but you can use all types of Jetson module.


  • 24 bit BMP images (x3) (640x480, 1280x720, 1920x1080)
  • PNG image (1920x1080)
  • JetPack installer host PC
  • Jetson module with carrier board

In our host PC, SDK Manager creates nvidia folder in HOME directory (~). After booting image, SDK Manager saves flashing files. Your blob file generator's full path is:

  • ~/nvidia/nvidia_sdk/_Linux_/Linux_for_Tegra/tools/bmp-splash

Our Xavier (8GB) boards full path is (for JetPack 4.5):


Generate bmp.blob File
We copied bmp-splash folder into ~/Desktop. (It's up to you.)


(Hint: All details are in bmp-blob-README.txt file)


First of all, add 24 bit BMP images into bmp-splash folder.



Secondly, change config_file.example's name to config_file and change inside like that:



Install liblz4-tool and get its full path.


Next, learn Jetson module's chip in this table:

Now, open terminal and generate bmp.blob file with one of these commands:
For Xavier NX or Xavier series:
  • OUT=$PWD ./ t194 ./config_file ./ /usr/bin/lz4c bmp.blob

For Nano or TX1:

  • OUT=$PWD ./ t210 ./config_file ./ /usr/bin/lz4c bmp.blob
For TX2 series:
  • OUT=$PWD ./ t186 ./config_file ./ /usr/bin/lz4c bmp.blob

    Flash bmp.blob File

    Change original bmp.blob file with your custom file. The full path of this file is:

    • ~/nvidia/nvidia_sdk/_Linux_/Linux_for_Tegra/bootloader/bmp.blob

      Open your module in Recovery Mode. Change current directory and flash BMP file:
      • ~/nvidia/nvidia_sdk/_Linux_/Linux_for_Tegra
      • sudo ./ -r -k BMP --image ./bootloader/bmp.blob

        Change Login Logo
        Copy 1080p PNG login logo into module and move into /usr/share/backgrounds. Then, change two xsessionrc files with sed command:
        • sudo mv FORECR_Login_Logo.png /usr/share/backgrounds/FORECR_Login_Logo.png
        • sed -i 's/NVIDIA_Login_Logo/FORECR_Login_Logo/g' ~/.xsessionrc
        • sudo sed -i 's/NVIDIA_Login_Logo/FORECR_Login_Logo/g' /etc/skel/.xsessionrc
        • cat ~/.xsessionrc | grep logo_path
        • cat /etc/skel/.xsessionrc | grep logo_path


          [Optional] Disable Blinking Text Cursor

          Open /boot/extlinux/extlinux.conf file. Remove "console=tty0" and add "vt.global_cursor_default=0"



          Thank you for reading our blog post. 

          If you want to get updated on new blog posts, product launches and discounts, you can fill out the form and sign up for our newsletter. By signing up, you can reach various blog posts about AI, deep learning, machine vision, high-speed cameras, and industrial interfaces. 

          You will receive a "free shipping" code for next purchase immediately.