MX8 Basler Camera

From Variscite Wiki
Revision as of 12:53, 26 January 2020 by Eran (talk | contribs) (→‎Introduction)
DART-MX8M Basler Camera

Introduction

The following instructions will help you to integrate Basler MIPI camera support into Variscite Yocto images for i.MX8M and i.MX8MM platforms.
This will allow you to stream images/video from a Basler camera(s) connected to Variscite evaluation platforms.
You can save the camera ouput to storage device and process them using the Basler pylon SDK and the pylonViewer app.

Download Variscite Yocto BSP

Please follow Build Yocto from source code.
Execute steps 1-4.3 to download the BSP sources, but don't start bitbake yet.

Download and install Basler meta layers

$ wget ftp://customerv:Variscite1@ftp.variscite.com/Basler/basler-dart-bcon-mipi-imx8-cep_1.1.2.tar.gz
$ tar xf basler-dart-bcon-mipi-imx8-cep_1.1.2.tar.gz -C sources

Download and install Variscite kernel patches

$ wget ftp://customerv:Variscite1@ftp.variscite.com/Basler/sumo-fsl-4.14.98/recipes-kernel/linux.tar.gz
$ mv sources/meta-variscite-imx/recipes-kernel/linux sources/meta-variscite-imx/recipes-kernel/linux.orig
$ tar xf linux.tar.gz -C sources/meta-variscite-imx/recipes-kernel

Customize configuration files

Customize bblayers.conf

Add the following lines to conf/bblayers.conf

BBLAYERS += " ${BSPDIR}/sources/meta-basler-imx8 "
BBLAYERS += " ${BSPDIR}/sources/meta-basler-tools/meta-basler-common "

Customize local.conf

Add the following lines to conf/local.conf to add Basler software and driver

IMAGE_INSTALL_append = " \
        basler-camera-driver \
        pylon \
        python3-pypylon \
        gentl-producer \
"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-module-basler-camera-driver"

Add the following lines to add Basler DTB files

KERNEL_DEVICETREE_append_imx8mq-var-dart = " \
        freescale/fsl-imx8mq-var-dart-sd-hdmi-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-sd-lvds-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-sd-lvds-dp-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-sd-lvds-hdmi-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-wifi-dp-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-wifi-hdmi-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-wifi-lvds-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-wifi-lvds-dp-basler-camera.dtb \
        freescale/fsl-imx8mq-var-dart-wifi-lvds-hdmi-basler-camera.dtb \
"

Build Yocto image

Follow Variscite wiki to build and install Yocto image.

Running Basler camera application

Run the following commands at the shell prompt:

$ export DISPLAY=:0.0
$ GENICAM_GENTL64_PATH=/opt/dart-bcon-mipi/lib /opt/pylon6/bin/pylonviewer 2>/dev/null &