boot_order
To boot HOFI, you need to configure your device to prioritize USB storage during startup. This ensures the board will attempt to boot from the HOFI USB drive before falling back to internal storage (e.g., microSD card, eMMC, or NVMe).
The method for setting USB boot priority depends on the target platform, eg.:
- Raspberry Pi
- x64-Based SBCs
- Jetson Orin Nano
- UP Board
Edit the bootloader configuration using:
sudo -E rpi-eeprom-config --edit
Set BOOT_ORDER
so that 4
(USB) comes first. For example:
BOOT_ORDER=0xf164
→ USB → NVMe → SD card (repeat)BOOT_ORDER=0xf14
→ USB → SD card (repeat)
Save the changes and reboot the Pi.
👉 Learn more in the Raspberry Pi bootloader configuration guide


During boot, press the key required to enter BIOS or UEFI settings — commonly ESC, F2, or F12 depending on the board. Then change the boot order to prefer USB devices.
USB boot is usually enabled by default. If HOFI doesn't boot:
- Connect an HDMI display and USB keyboard to the Jetson
- Power it on and press ESC during boot
- Select Boot Manager and set USB as the first boot device
⚠️ Jetson Orin Boot Firmware
Boot firmware
If you want to install and boot Husarion’s customized Ubuntu system images on a Jetson SBC using HOFI, you’ll first need to update the device’s firmware. This guide follows the steps outlined in the official Ubuntu installation instructions for NVIDIA Jetson.
Before flashing an OS image, you must update the boot firmware on the Jetson Orin Nano.
Preparing the Host Computer (Linux)
First, install required tools and download the Jetson Linux firmware package:
cd ~
sudo apt update
sudo apt install lbzip2
wget https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v4.3/release/Jetson_Linux_r36.4.3_aarch64.tbz2
tar -xf Jetson_Linux_r36.4.3_aarch64.tbz2
Install the required dependencies:
sudo apt install -y python3 mkbootimg bzip2 cpp device-tree-compiler
cd ~/Linux_for_Tegra/
sudo ./tools/l4t_flash_prerequisites.sh
Flashing the Boot Firmware
To flash the Jetson Orin Nano’s boot firmware:
-
Short the
FC REC
andGND
pins on the Jetson -
Connect the Jetson's USB-C port to your laptop using a USB-A to USB-C cable
-
Power on the Jetson
-
On your laptop, run the firmware flashing script:
cd ~/Linux_for_Tegra/
sudo ./flash.sh p3768-0000-p3767-0000-a0-qspi internal -
Wait ~8 minutes until you see a confirmation like:
[ 508.5119 ] Flashing completed
[ 508.5120 ] Coldbooting the device
[ 508.5125 ] tegrarcm_v2 --chip 0x23 0 --ismb2
[ 508.5130 ] MB2 version 01.00.0000
[ 508.6113 ] Coldbooting the device
[ 508.6121 ] tegrarcm_v2 --chip 0x23 0 --reboot coldboot
[ 508.6127 ] MB2 version 01.00.0000
*** The target generic has been flashed successfully. ***
Reset the board to boot from internal eMMC. -
Disconnect power from the Jetson, remove the jumper between
FC REC
andGND
, and unplug the USB cable.
-
Open bootloader
Press Delete or Esc during computer startup to access BIOS settings. When asked for a password, just press Enter (no password is set).
-
Change Boot Order Priorities
In
Boot
tab changeFIXED BOOT ORDER Priorities
to setUSB Device
as a first option:Boot Option #1 [USB Device]
Boot Option #2 [Hard Disc:ubuntu] -
Change
SCC eMMC Support
In
Chipset
tab, go toSouth bridge
setting and changeSCC eMMC Support
toPCI mode
. -
Save changes
Save & Exit
tab -Save Changes and Reset
- now the system will boot from the USB device.