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
ENVIRONMENT

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.


Generating the bmp.blob file 


• 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):

~/nvidia/nvidia_sdk/JetPack_4.5_Linux_JETSON_AGX_XAVIER_8GB/Linux_for_Tegra/tools/bmp-splash

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 ./genbmpblob_L4T.sh t194 ./config_file ./BMP_generator_L4T.py /usr/bin/lz4c bmp.blob


For Nano or TX1:

• OUT=$PWD ./genbmpblob_L4T.sh t210 ./config_file ./BMP_generator_L4T.py /usr/bin/lz4c bmp.blob


For TX2 series:

• OUT=$PWD ./genbmpblob_L4T.sh t186 ./config_file ./BMP_generator_L4T.py /usr/bin/lz4c bmp.blob





Flashing the 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 ./flash.sh -r -k BMP --image ./bootloader/bmp.blob





Changing the 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. 


Türkçe