Last edited 4 months ago

X-LINUX-AI Developer package



1. Developer package : build AI application from the X-LINUX-AI add-on SDK[edit | edit source]

In order to easily develop and build an AI application without using the Yocto build system, X-LINUX-AI comes with a SDK add-on extending the OpenSTLinux SDK with AI functionality. To install and use the X-LINUX-AI SDK Add-on please refer to the following steps.

2. Prerequisites[edit | edit source]

2.1. Install the OpenSTLinux SDK[edit | edit source]

First of all, you must download and install the OpenSTLinux SDK, which contains all the basis needed for the X-LINUX-AI add-on. To do this, follow instructions given in STM32MPU Developer Package : Installing the SDK chapter. Once this has been done, you should have a directory containing the OpenSTLinux SDK.

3. X-LINUX-AI SDK add-on installation[edit | edit source]

3.1. Download the X-LINUX-AI SDK add-on[edit | edit source]

To add the Artificial Intelligence part into the OpenSTLinux SDK, you must download and install the X-LINUX-AI SDK add-on. The add-on is delivered through a tarball file that can be downloaded here: X-LINUX-AI SDK add-on.

3.2. Install the X-LINUX-AI SDK add-on[edit | edit source]

Install add-on for STM32MP1 series

Install add-on for STM32MP25x lines More info.png


3.3. Start the SDK[edit | edit source]

The add-on is now installed into the OpenSTLinux SDK. You can start the SDK. Go to your OpenSTLinux SDK directory and source the environment:

  cd <working directory absolute path>/Developer-Package/SDK
  • On STM32MP2 series' boards More info green.png:
  source environment-setup-cortexa35-ostl-linux
  export SYSROOT="<working directory absolute path>/Developer-Package/SDK/sysroots/cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi"
  • On STM32MP1 series' boards More info green.png:
  source environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi
  export SYSROOT="<working directory absolute path>/Developer-Package/SDK/sysroots/cortexa35-ostl-linux"

Check that the SDK is properly installed:

  x-linux-ai -v
 X-LINUX-AI version: 5.1.0

4. Use the SDK[edit | edit source]

4.1. Build an application with the SDK[edit | edit source]

Once the SDK is correctly set up, the applications can be built easily. In this example, it is the image classification application that is built.

Download the github repository:

  git clone https://github.com/STMicroelectronics/meta-st-x-linux-ai

Go to the image classification directory:

  cd meta-st-x-linux-ai/recipes-samples/image-classification/files/stai-mpu

Then, use the make command to build the application:

  make

A new file is displayed, named stai_mpu_image_classification. This is a binary file, which has been generated using the make command. It is compiled for the architecture of the board corresponding to the chosen SDK. It must now be transferred to the board.

4.2. Use the application[edit | edit source]

Once the board is correctly set up and the X-LINUX-AI packages are installed with the right version, it is possible to send the application to the board.

To do it, use the following command using your own IP address:

  scp -r -p stai_mpu_image_classification root@<ip_address>:/usr/local/x-linux-ai/image-classification/stai_mpu

Then, use the ssh protocol to connect to the board:

  ssh root@<ip_address>

On the board, go to the right directory and use the image classification script to launch the application:

  cd /usr/local/x-linux-ai/image-classification/stai_mpu
  ./launch_bin_image_classification.sh

This script is using the stai_mpu_image_classification application that has been compiled before.