Who is this for?

This is an advanced topic for embedded software developers interested in building neural network models for microcontrollers.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Build a convolution neural network(CNN) model for image classification.
  • Run the CNN model on an STM32 B-L475E-IOT01A2 board using STM Cube AI

Prerequisites

Before starting, you will need the following:

  • Familiarity with ML concepts
  • Familiarity with C programming on microcontrollers
  • STM32 B-L475E-IOT01A2 board

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll build a CIFAR-10 convolutional neural network in Jupyter and deploy it to an STM32 B-L475E-IOT01A2 board. First, you’ll prepare an Anaconda environment, train the model, and import it into STM32Cube.AI within STM32CubeMX. Then, you’ll deploy the generated project and use a Python utility to send images to the board and exercise the classifier.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
How do I launch the Jupyter Notebook used for training?
Open Anaconda Prompt and run jupyter notebook. In the browser, navigate to the extracted project files and open lab.ipynb.
How do I know a notebook cell has finished running?
Check the indicator to the left of the cell: In[] before running, In[*] while running, and In[N] (a number) when complete.
Which STM32Cube.AI version should I select in STM32CubeMX?
Select X-CUBE-AI 7.0.0. Later versions might not connect successfully.
What should I do before running the Python test tool against the board?
Activate the Conda environment with conda activate ml_lab and install opencv-python, protobuf==3.20, and tqdm==4.50.2. Then, go to the working folder’s Misc directory.
How do I start the test tool, and what if the board is not detected?
From the Misc folder, run python ui_python_ai_runner.py. If the board isn’t detected, press the black button on the board to reset and try again.
Next