Contents

  1. Introduction
  2. Software Version List
  3. How to Startup
    1. Preparation of the software
      1. Quick preparation: download binary
      2. Normal preparation: build source code
    2. How to flash
      1. Flashing OS image into microSD card
      2. Flashing loader
    3. How to boot
  4. How to Check Functions
    1. Software support list
    2. CAN
    3. Audio
    4. GPIO
    5. I2C
    6. USB3.0
    7. UART
    8. Thermal
    9. NVMe M.2 SSD
    10. Pi Camera
    11. Pi Display
    12. Pi Active Cooler
  5. Tips
  6. Support

Introduction

This is the Debian based BSP page for Sparrow Hawk.

Software Version List

Software Version
Debian 13
Linux kernel 6.12.66
U-Boot 2026.01
Arm Trusted Firmware 2.14.0

How to Startup

If you want to quickly start, please start 3.1.1. Quick preparation: download binary.

If you want to normally start, please start 3.1.2. Normal preparation: build source code.

Preparation of the software

Quick preparation: download binary

Download binary from GitHub

Next, jump to 3.2. How to flash.

Normal preparation: build source code

# You need to prepare docker envrionment on your Host PC
./build_image/build_with_docker_sparrow-hawk.sh <DEBIAN_VERSION>
ex.) ./build_image/build_with_docker_sparrow-hawk.sh 13

or

# Note: Build requirements can be confirmed from build_image/Dockerfile.
sudo ./build_image/build_debian_13_for_sparrow-hawk.sh <DEBIAN_VERSION>
ex.) sudo ./build_image/build_debian_13_for_sparrow-hawk.sh 13

Next, jump to 3.2. How to flash.

How to flash

Flashing OS image into microSD card

Linux case

gzip -cd sparrow-hawk-debian-13-based-bsp.img.gz | sudo dd of=<device file> bs=1M status=progress && sync

Windows case

  1. Extract gzip image using 7zip or similer software.
  2. Flash extracted image into microSD card using Etcher, win disk imager, and so on.

Flashing loader

Please update the loader (u-boot) using the loader file (flash.bin) included in the Debian OS image (rootfs).

  1. Insert microSD card prepared in Section 3.2.1 into microSD card slot (CN1), then power on the Sparrow Hawk board
  2. Update the QSPI memory from U-Boot as shown below, then reboot the system.
    load mmc 0:1 ${loadaddr} flash.bin && sf probe && sf update ${loadaddr} 0 ${filesize} && reset
    

Note:

How to boot

  1. Insert the SD card into CN1 which is bottom of the board.
  2. Open terminal application and open serial device.
  3. Press SW1 to power on the board.
  4. After booting U-Boot, please press any key while showing “Hit any key to stop autoboot:” to enter U-Boot shell.
  5. Input the following command into U-Boot shell and press enter key. If you connect camera a nd/or display, please choice the following button and input command.
  1. If command and environment is correct, Linux kernel log will output.
  1. Log in to “sparrow-hawk login:” as rcar and at the “Password:” prompt, enter rcar.

 

To make the bootcmd set in 5 of 3.3. How to Boot persistent across reboots, run saveenv as shown below. After saving the environment, reboot the system once. From the next boot onward, this bootcm d will be used automatically, and you can skip 4 and 5 in 3.3. How to Boot.

saveenv
reset  # Execute this only the first time

How to Check Functions

Software support list

Function Status
CAN Supported
Ethernet Supported
Audio(Output/Input) Supported
Display Port Supported
GPIO Supported
I2C Supported
JTAG Supported
USB3.0 Supported
UART Supported
Thermal Supported
NVMe M.2 SSD Supported
Pi Camera Supported
Pi Display Supported
PCIe Endpoint Not supported
Pi Active Cooler Supported
GPU Not supported
AI Accelerator Not supported
Desktop(GUI) Not supported

Note:

CAN

Loop back

  1. Connect the following pins of CONN2: Connect Pin1(CAN1L) - Pin2(CAN0L) and Pin5(CAN1H) - Pin6(CAN0H)
  1. Execute following commands on Linux:
sudo ip link set can0 up type can restart-ms 100 bitrate 1000000 dbitrate 5000000 fd on
sudo ip link set can1 up type can restart-ms 100 bitrate 1000000 dbitrate 5000000 fd on
sudo candump can0 &
sudo cangen can1 -I i -L i -D i -f -n 16
sudo killall candump
sudo candump can1 &
sudo cangen can0 -I i -L i -D i -f -n 16
sudo killall candump

Audio

GPIO

Toggle GP2_12(Pin11 on Pin Header)

  1. Connect LED or Oscilloscope to the board
    • ex) LED
    • LED
      • Please install a resistor to prevent damage to the LED. In the Connection image, it i s used a 1kΩ resistor.
  2. Execute following command
    python3 /usr/bin/example-apps/toggle_gpio_GP2_12.py
    

For more examples, please see also https://github.com/brgl/libgpiod/raw/refs/heads/master/bindings/python/examples

I2C

USB3.0

UART

Loop back

  1. Connect UART TX and RX(pin 8 and pin 10) on PinHeader.
  1. Execute following commands:
    stty -F /dev/ttySC2 -echo
    cat /dev/ttySC2 &
    echo Hello > /dev/ttySC2 && sleep 1
    killall cat
    

Thermal

NVMe M.2 SSD

Note:

 

Pi Camera

Note:

Note:

 

  1. Connect Raspberry Pi Camera V2 and/or Raspberry Pi Camera V3 to J1 and/or J2 connector.
  2. Change bootcmd variable on U-Boot shell referring 5 of 3.3. How to boot.
  3. Test camera
    • On-board test(Need to connect Display)

Pi Display

Note:

Note:

 

  1. Setup
    • Connect Raspberry Pi Touch Display 2 cable to the J4 connector.
    • Connect the Power (red wire) to pin 2 of CN7 and the Ground (black wire) to pin 6 of CN7.
    • Pi Display
  2. Change bootcmd variable on U-Boot shell referring 5 of 3.3. How to boot.
  3. Display will work correctly after changing above.

Pi Active Cooler

Tips

  1. How to expand the rootfs
    • Please run the following command on your board. Rootfs is expanded to use whole storage.
      sudo expand-rootfs.sh
      sudo reboot
      

Support

FAQ: https://github.com/orgs/rcar-community/discussions/categories/faq

Q&A Forum: https://github.com/orgs/rcar-community/discussions/categories/q-a