HummingBoard Pulse/Ripple/Pro & i.MX8M Plus - Basler Camera Quick Start Guide

HummingBoard Pulse/Ripple/Pro & i.MX8M Plus - Basler Camera Quick Start Guide

Revision and Notes

Date

Owner

Revision

Notes

Date

Owner

Revision

Notes

Feb 17, 2022

 

1.0

Initial release

Jun 8, 2025

 

1.1

Update for new BSP

Table of Contents

 

Introduction

The following provides a quick guide to start using the Camera Module on your HummingBoard Pulse and i.MX8M Plus SOM.

Software Setup

Cable setup and prerequisites

Here are the additional cables and prerequisites you will need for being able to get started with your Camera:

Image download and SD card preparation

1. Downloading the Yocto image:

Find the latest imx-image-full-*.wic.{zst,bmap} targeting the i.MX8M Plus SoM at images.solid-run.com - e.g. at the time of writing:

wget https://images.solid-run.com/IMX8/meta-solidrun-arm-imx8/scarthgap-lf-6.6.52-2.2.0/2025-06-08_24a365b/imx8mp-sr-som/imx-image-full-imx8mp-sr-som.rootfs.wic.zst wget https://images.solid-run.com/IMX8/meta-solidrun-arm-imx8/scarthgap-lf-6.6.52-2.2.0/2025-06-08_24a365b/imx8mp-sr-som/imx-image-full-imx8mp-sr-som.rootfs.wic.bmap

2. Writing the image to the SD card

Use the following commands for writing the image to an SD card:

# Either with bmaptool (faster) sudo bmaptool copy imx-image-full-imx8mp-sr-som.rootfs.wic.zst /dev/sdX # Or with dd (slower) zstdcat imx-image-full-imx8mp-sr-som.rootfs.wic.zst | sudo dd of=/dev/sdX bs=4M conv=fsync

Note: Plug a micro SD into your Linux PC, the following assumes that the micro SD is added as /dev/sdX and all it’s partitions are unmounted.

3. SD card insertion

Please Insert the SD card into your device.

4. Power connection

Connect your power adaptor to the DC jack, and then connect the adaptor to mains supply.

5. Serial Connection

Please insert the micro USB into your device, then you can refer to Serial Connection for installing necessary serial connection software in Linux/Windows.

Once you installed the necessary serial connection software, reboot your device and you should be able to see the following:

  • Please inset ‘root’ as a username for being able to log in as shown in the above picture.

Camera Test

  1. Enable Basler Cameras in Software:
    Edit file extlinux.conf on the first partition of the board adding the line starting with “FDTOVERLAYS” - either from a PC, or from the device serial console, then reboot. The resulting file should look similar to the example below (line 5 is the important addition):

    default Yocto label Yocto kernel /Image fdtdir / FDTOVERLAYS ../freescale/imx8mp-sr-som-basler.dtbo ../freescale/imx8mp-hummingboard-pulse-basler.dtbo append root=PARTUUID=076c4a2a-02 rootwait


    For editing on device can use nano text editor:

    mount /dev/mmcblk1p1 /boot nano /boot/extlinux/extlinux.conf # save with ctrl+o, exit with ctrl+x sync reboot
  2. Connect your HDMI cable.

Note: The camera preview only works when a monitor is connected to your Board.

  1. Connect your Camera to the CSI 2.0 of the carrier as shown in the picture below:

     

A green LED will light up at the back panel of your camera. This is an indication of Camera is operating. See the following figure:

  1. Check available devices by running the following on your monitor:

    v4l2-ctl --list-devices # Example Output: (): /dev/v4l-subdev0 /dev/v4l-subdev4 /dev/v4l-subdev5 (): /dev/v4l-subdev1 /dev/v4l-subdev6 /dev/v4l-subdev7 (csi0): /dev/v4l-subdev3 (csi1): /dev/v4l-subdev2 FSL Capture Media Device (platform:32c00000.bus:camera): /dev/media0 mxc-isi-m2m_v1 (platform:32e00000.isi:m2m_devic): /dev/video2 VIV (platform:viv0): /dev/video3 VIV (platform:viv1): /dev/video4 vsi_v4l2dec (platform:vsi_v4l2dec): /dev/video1 vsi_v4l2enc (platform:vsi_v4l2enc): /dev/video0 viv_media (platform:vvcam-video.0): /dev/media1

    The relevant capture devices associated with the cameras are the ones named “VIV (platform:vivX)”:
    - “VIV (platform:viv0)” (/dev/video3): Camera Connector on HummingBoard
    - “VIV (platform:viv1)” (/dev/video4): Camera Connector on System on Module
    If the numbering changed, substitute the video device numbers (3,4) accordingly in the following steps.

  2. Render from Camera to HDMI Display with gstreamer:

    # for HummingBoard Camera Connector gst-launch-1.0 -v v4l2src device=/dev/video3 ! "video/x-raw,format=YUY2,width=1920,height=1080" ! queue ! imxvideoconvert_g2d ! waylandsink # for System on Module Camera Connector gst-launch-1.0 -v v4l2src device=/dev/video4 ! "video/x-raw,format=YUY2,width=1920,height=1080" ! queue ! imxvideoconvert_g2d ! waylandsink
  3. Run NXP Video Demo to render from Camera to HDMI Display:

    systemctl stop weston weston.socket cd /opt/imx8-isp/bin # for HummingBoard Camera Connector ./video_test -w 1920 -h 1080 -f YUYV -t drm -m 0 -d 3 # for System on Module Camera Connector ./video_test -w 1920 -h 1080 -f YUYV -t drm -m 0 -d 4

Once you run the previous commands, you can direct your camera to an object and start monitoring as shown in the following figure:

 

The following is an implementation of what the camera displays on the monitor screen.

 

 

 

 

 

 

 

 

 

SolidRun Ltd.