⚠ WARNING ⚠
Follow the steps detailed in this guide exactly as they are described and in the correct order. Failure to do so may cause damage to your hardware.
Step 1: Downloading the Vision Processor Software Package
To download the "Vision Processor Software Package," please visit the following link: Hailo Software Downloads Note that you will need to create an account to proceed with the download. Once you have access, follow the guide presented in the image below to complete the download process:
Step 2: Extract the Downloaded File
1. Move the .tar.gz File
Make sure the downloaded .tar.gz
file is moved to the directory where you want to extract its contents.
2. Extract the .tar.gz File
- Open a terminal window.
- Navigate to the directory where the
.tar.gz
file is located using thecd
command. - Use the following command to extract the file:
tar -xzvf filename.tar.gz
- Note: Replace
filename.tar.gz
with the actual name of the downloaded file.
- Note: Replace
Step 3: Installing Required Tools
1. Install the Hailo Board Tools
Navigate to the directory where the .whl
file is located. This file is part of the Hailo Vision Processor Software Package under the tools folder. Use the following command to install the .whl
file:
python3 -m pip install hailo15_board_tools-<VERSION>.whl
Note: Replace <VERSION>
with the specific version of the .whl
file that was downloaded.
2. Install U-Boot Tools
Run the following command to install U-Boot tools:
sudo apt-get install u-boot-tools
Step 3: Set Up the Hailo with the UART-USB Bridge
1. Connect the UART-USB Bridge
Follow the instructions provided in the UART Connection Setup for Hailo-15 guide to properly connect the UART-USB bridge to the Hailo device. This tutorial will walk you through the physical connection steps and any necessary configuration to ensure successful communication between the devices.
2. Configure the DIP Switches
Refer to the image below for the correct DIP switch settings:
- Set DIP switch 1 to the ON position.
- Set DIP switch 2 to the OFF position.
Step 4: Load the Recovery Firmware to the SCU
1. Load the Firmware Using UART
- Open a terminal window.
- Use the following command to load the recovery firmware to the SCU via UART:
uart_boot_fw_loader \ --serial-device-name /dev/ttyUSB0 \ --firmware ./prebuilt/sbc/hailo15_uart_recovery_fw.bin
Note: The .bin file required for this step is part of the Hailo Vision Processor Software Package and can be found under the prebuilt/sbc folder.
Step 5: Load the SPI Flash Images
- Open a terminal window.
- Use the following command to load the SPI flash images via UART:
hailo15_spi_flash_program \ --scu-bootloader ./prebuilt/sbc/hailo15_scu_bl.bin \ --scu-bootloader-config ./prebuilt/sbc/scu_bl_cfg_a.bin \ --scu-firmware ./prebuilt/sbc/hailo15_scu_fw.bin \ --uboot-device-tree ./prebuilt/sbc/u-boot.dtb.signed \ --bootloader ./prebuilt/sbc/u-boot-spl.bin \ --bootloader-env ./prebuilt/sbc/u-boot-initial-env \ --customer-certificate ./prebuilt/sbc/customer_certificate.bin \ --uart-load --serial-device-name /dev/ttyUSB0
Step 6: Power Down and Reconfigure the Hailo-15
1. Turn Off the Hailo 15
Power down the Hailo 15 device.
2. Reconfigure the DIP Switches
- Set DIP switch 1 to the OFF position.
- Set DIP switch 2 to the OFF position.
- You can see the image present in the step 3 of Booting a Yocto Image on the Hailo-15 from an SD Card
Step 7: Insert the SD Card
1. Prepare the SD Card
- Ensure that the SD card contains the image you want to use.
2. Insert the SD Card
- Insert the SD card into the SD card slot of the Hailo 15 device.
3. Turn ON the Hailo-15
- Follow the steps in present in "Running an Image onto the Hailo 15 using an SD Card" in order to run your image.
Note: If you want to use the serial monitoring you must follow the Serial Monitoring of the Hailo-15 Using a UART-USB Bridge and Picocom wiki.
Note: Fixing Permission Issues
If you encounter an error such as Permission denied: '/dev/ttyUSB0', you can resolve it by adjusting the permissions with the following command:
sudo chmod 666 /dev/ttyUSB0
This command changes the permissions of the /dev/ttyUSB0 device file, allowing read and write access to all users.