![AI Expansion Package inserted in the STM32MPU Embedded software distribution AI Expansion Package inserted in the STM32MPU Embedded software distribution](/stm32mpu-ecosystem-v3/nsfr_img_auth.php/c/c1/AI_Expansion_Package_In_STM32MPU_Embedded_Software.png)
X-LINUX-AI is the STM32 MPU OpenSTLinux Expansion Package that targets artificial intelligence for STM32MP1 Series devices.
This package contains Linux AI frameworks, as well as application examples to get started with some basic use cases such as computer vision (CV).
It is composed of an OpenEmbedded meta layer, named meta-st-stm32mpu-ai, to be added on top of the STM32MP1 Distribution Package.
It brings a complete and coherent easy-to-build / install environment to take advantage of AI on the STM32MP1 Series.
1. Version[edit source]
1.1. v2.0.0[edit source]
1.1.1. Contents[edit source]
- TensorFlow Lite[1] 2.2.0
- Native support of the Google Edge TPU[2]
- armNN[3] 20.05
- OpenCV[4] 4.1.x
- Python[5] 3.8.x
- Support STM32MP15xF[6] devices operating at up to 800MHz
- Python and C++ application samples
- Image classification example using TensorFlow Lite based on MobileNet v1 model
- Object detection example using TensorFlow Lite based on COCO SSD MobileNet v1 model
- Image classification example using Google Edge TPU based on MobileNet v1 model
- Object detection example using Google Edge TPU based on COCO SSD MobileNet v1 model
- Image classification example using armNN TensorFlow Lite parser based on MobileNet v1 model
- Object detection example using armNN TensorFlow Lite parser based on COCO SSD MobileNet v1 model
1.1.2. Software structure[edit source]
1.1.3. Validated hardware[edit source]
As any software expansion package, the X-LINUX-AI is supported on all STM32MP1 Series and has been validated on the following boards:
1.1.4. Build and flash the X-LINUX-AI expansion package[edit source]
The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA). The detailed content licenses can be found here.
- Clone following git repositories into <Distribution Package installation directory>/layers/meta-st
cd <Distribution Package installation directory>/layers git clone https://github.com/kraj/meta-clang -b thud cd <Distribution Package installation directory>/layers/meta-st git clone https://github.com/STMicroelectronics/meta-st-stm32mpu-ai.git -b thud
- Set up the build environment
cd ../.. DISTRO=openstlinux-weston MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh
- Add the new layers in that order
bitbake-layers add-layer ../layers/meta-clang bitbake-layers add-layer ../layers/meta-st/meta-st-stm32mpu-ai
- Build the image
bitbake st-image-ai-cv
- Flash the built image
- Follow this link to know how to flash the built image.
1.2. v1.0.0[edit source]
1.2.1. Contents[edit source]
1.2.2. BuilSTM32MP1 DK2 or EV1 boards[edit source]
The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA). The detailed content licenses can be found here.
- Clone following git repositories into <Distribution Package installation directory>/layers/meta-st
cd <Distribution Package installation directory>/layers git clone https://github.com/kraj/meta-clang -b thud cd <Distribution Package installation directory>/layers/meta-st git clone https://github.com/STMicroelectronics/meta-st-stm32mpu-ai.git -b thud
- Set up the build environment
cd ../.. DISTRO=openstlinux-weston MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh
- Add the new layers in that order
bitbake-layers add-layer ../layers/meta-clang bitbake-layers add-layer ../layers/meta-st/meta-st-stm32mpu-ai
- Build the image
bitbake st-image-ai-cv
1.3. Installation of the meta layer[edit source]
1.3.1. STM32MP1 DK2 or EV1 boards[edit source]
The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA). The detailed content licenses can be found here.
- Clone following git repositories into <Distribution Package installation directory>/layers/meta-st
cd <Distribution Package installation directory>/layers git clone https://github.com/kraj/meta-clang -b thud cd <Distribution Package installation directory>/layers/meta-st git clone https://github.com/STMicroelectronics/meta-st-stm32mpu-ai.git -b thud
- Set up the build environment
cd ../.. DISTRO=openstlinux-weston MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh
- Add the new layers in that order
bitbake-layers add-layer ../layers/meta-clang bitbake-layers add-layer ../layers/meta-st/meta-st-stm32mpu-ai
1.3.2. STM32MP1 Avenger96 board[edit source]
The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA). The detailed content licenses can be found here.
- Clone following git repositories into <Distribution Package installation directory>/layers/meta-st
cd <Distribution Package installation directory>/layers git clone https://github.com/kraj/meta-clang -b thud git clone https://github.com/vinceab/meta-av96.git -b thud cd <Distribution Package installation directory>/layers/meta-st git clone https://github.com/STMicroelectronics/meta-st-stm32mpu-ai.git -b thud
- Set up the build environment
cd ../.. META_LAYER_ROOT=layers DISTRO=openstlinux-weston MACHINE=stm32mp1-av96 source layers/meta-st/scripts/envsetup.sh
- Add the new layers in that order
bitbake-layers add-layer ../layers/meta-av96 bitbake-layers add-layer ../layers/meta-clang bitbake-layers add-layer ../layers/meta-st/meta-st-stm32mpu-ai