Get ready for the STM32 Summit 2026 | Online, November 3
Ask questions and find answers on how to deploy, debug, and optimize AI models on ST microcontrollers, microprocessors, and smart sensors.
Most recent activity
The deploy.py script in stm32ai-modelzoo/image_classification/getting_started generates an extra file, ai_model_config.h which is convenient as it contains the class names and other usefull defines.Is there a way to generate this file from cubeMX?Moreover, at the end of this config.h file, there are some defines which are related to the specific board (a nucleo H743ZI2 in my case). Where do these come from and how can someone modify them?For example I would like to use an OV7670 camera in place of the one supported in the example.
I used a quantization tool called ppq to quantize my onnx model because the activation values in the middle layer of this model were too large and I needed to quantize it from float32 type to int8 type. By the way, this model was defined and trained by me using pytorch. I used STM32CUBEMX and CUBEAI version 8.1.0 to try to analyze the model and the progress bar would get stuck referring to the fact that it loaded from 0 percent to 100 percent and then went back to 0 percent, and if I didn't interrupt it he would keep going. Can anyone help me?
Hi all, I installed Unicleo-GUI on my Windows laptop, and was able to read sensor data from my NUCLEO-IKS01A3 board successfully. The board was automatically identified by the software as being connected to COM4 yesterday. For some reason today the software recognizes the COM connection but not the board and thus won't display the data being read by it on the screen. I have tried reinstalling Unicleo as well as the FP-SNS-DATALOG2 function pack with no success. Any advice or suggestions are appreciated!!
D:\stm32ai-modelzoo\object_detection\scripts\deployment> python .\deploy.py[INFO] : Successfully connected, starting the model validation on target ...[INFO] : Starting the benchmark on target STM32H747I-DISCO, other available boards ['STM32F469I-DISCO', 'STM32L4R9I-DISCO', 'STM32H573I-DK', 'STM32H7B3I-DK', 'NUCLEO-F401RE', 'NUCLEO-G474RE', 'B-U585I-IOT02A', 'NUCLEO-H743ZI2', 'STM32F769I-DISCO', 'STM32H735G-I2', 'STM32F769I-DISCO', 'STM32H735G-DK', 'STM32H747I-DISCO', 'STM32F746G-DISCO']I want to train and deploy an object detection model on my new purchased NUCLEO-H745ZI-Q board. I am reading the code line by line to see if I can adjust the code to train and deploy the model without getting into the STMCubeIDE.And I see there are other boards available for benchmarking, I am wondering if I can read model zoo repo line by line and see if I can change the code so that it could train and deploy object detection or image classification models on NUCLEO-H745ZI-Q board using c
Hello,I'm working on artificial intelligence on STM32H747. I started my work with projects on FP-AI-VISION. First, I solved the display problem caused by NT35510 and tried the project again. When I tried it, I got the look in the first photo. At first I couldn't understand what was happening because I thought the problem would be solved when I fixed the screen. Afterwards, I debugged the code and saw that the BSP_CAMERA_INIT function branched to Error Handler. I looked into what error message I was getting and saw that I was getting the BSP_ERROW_UNKNOWN_COMPONENT error. How can I solve this problem? I just unpacked the camera so I hardly find the risk of the camera getting a hardware fault. Do I need any extra action to operate the camera?Best Regards,Bedirhan Köksoy I
It can be analyzed normally in CUBEAI7.1 without error. Change to CUBEAI8.1 error, [AI:network] 'utf-8' codec can't decode byte 0xe5 in position 8: invalid continuation byte. Attached is my network model. Thank you very much
Hi, I am running a project on NanoEdge AI (anomaly detection), using STEVAL-STWINKT1B SensorTile Wireless Industrial Node and STLINK-V3MINI. I am following st's youtube turotial NanoEdge AI Studio V3 - Anomaly Detection demo. I would like to load data from serial (USB), but no data is flowing.What I did so far (mosty what is said in um2622) : - Connected USB to the board while keeping USR button pressed- Connected STLINK-V3MINI- Erased all sectors and loaded DataLogExtended.bin into the board ( path fp-sns-stbox1\STM32CubeFunctionPack_FP-SNS-STBOX1_V1.6.0\Projects\STM32L4R9ZI-SensorTile.box\Applications\DataLogExtended\Binary)- Loaded DataLogExtended.bin into STWIN-v3MINI ( path fp-sns-stbox1\STM32CubeFunctionPack_FP-SNS-STBOX1_V1.6.0\Projects\STM32L4R9ZI-SensorTile.box\Applications\DataLogExtended\Binary )- Disconnected the board and STLINK-V3MINI and long pressed RESET button - Reconnected the board first, and then STLINK-V3MINI- at this s
NanoEdge AI Studio v4.3 is now offered for free to all engineers, giving them the opportunity to create highly efficient TinyML libraries that can be deployed on Cortex-M based microcontrollers. In addition, other enhancements have been integrated to support users in project creation and model selection. You can download it here. What is new in NanoEdge AI Studio V4.3? During project creation, you can select from more than 140+ STM32 development boards but also one of the 1000+ production-ready ARM Cortex-M-based MCUs from other providers. Upgraded version adds a step-by-step assistant to seamlessly assist you in each phase of a project creation. It also includes an advanced validation tool that facilitates reaching production-grade algorithms. NanoEdge AI Studio can now estimate ML model execution time with a 98% precision score for pre-selected targets to enrich the model report and help make an informed choice for a model selection. Feel free to lear
Hello,I am currently working on a ML project for an STM MCU and am in a state where I have chosen an compatible board based on inference time and Flash/RAM consumption, but I don't yet have a physical board. Is it possible to get an estimate of power consumption for my model per inference without having to physically do it (I don't yet have the board) in either STM Developer Cloud STM Cube IDE or NanoEdgeAI? The MCU I chose is STM32H735G-DK.Thank you in advance
Hello,I am trying to explore the STWIN Starter Kit (SensorTile Wireless Industrial Mode) functionality. My OS is Windows 11. I plan to collect data and train models, so I am trying to use Unicleo GUI to define the sensors to be used, the full scale, the sampling frequency or ODR (Output Data Rate). However, Unicleo does not detect the board ("port not open"). What I have done so far :turned the board in DFU mode (by connecting the USB cable while keeping the USR button pressed)opened STM32CubeProgrammerin the Erasing & Programming tab, erased flash memory (erased all sectors)in the Erasing & Programming tab, flashed the binary "DataLogExtended.bin" from the FP-SNS-STBOX1 (folder STM32CubeFunctionPack_FP-SNS-STBOX1_V1.6.0\Projects\STM32L4R9ZI-SensorTile.box\Applications\DataLogExtended\Binary) into the boarddisconnected the board, unpluged and pluged the USB and long-pressed the RESET button at this step, I could see a new COM port (COM3) and a virt
Kindly provide a step-by-step procedure or tutorial on how to use generated C code from X-CUBE-AI 8.1.0.How to use embedded client API (generated by X-CUBE)?Minimal application is provided in Documentation section. If possible kindly provide any elaborate tutorial for working with X-Cube-AI 8.1.0.
Hi,I am using stm32 cube ai software pack on my stm32l476zg nucleo board. The same is working fine. But, along with that i want to use fft function available through cmsis dsp package.I have seen that even the cube ai software pack generates a middleware folder on code generation which has some cmsis function required by the ai modules, but does not contain the fft functions in it which is part of Transform Function directory which is missingKindly, provide some insight, how to use both packages together
Hello everyone,when I try to analyze my model (mynetwork.onnx) clicking on Analyze in the target selection window an error message occurs without any details. After the selection of the target in the configuration area, if I analyze the same model I receive this error: "NOT IMPLEMENTED: Convolution with multiple inputs not supported".The model mynetwork.onnx is obtained by converting a pytorch model obtained by running an algorithm downloaded from github. I use Windows 10 Home 64 bit (10.0, build 19045), STM32CubeIDE 1.13.1 and X-Cube-AI 8.1.0 (I've also tried 8.0.1).Could anyone please help me?
I've browsing around, and I could not find any documentation on how to code using the AI sub-module. I've see the- dm00570145-getting-started-with-x-cube-ai-expansion-package-for-artificial-intelligence-ai-stmicroelectronics.pdf- um2312-development-checklist-for-stm32cube-expansion-packages-stmicroelectronics.pdf- um2388-development-guidelines-for-stm32cube-firmware-packs-stmicroelectronics.pdf; and- um2526-getting-started-with-xcubeai-expansion-package-for-artificial-intelligence-ai-stmicroelectronics.pdfI could find any detailed explanation of how to use the C code.My current resources are https://www.youtube.com/results?search_query=middlewares+folder+stm32+not+being+created and just browsing the generated code, but I am lacking a more structured documentation.Am I missing some document out there?
..
Hello, I'm trying to validate a CNN model using X-CUBE-AI and the STM32H747I-DISCO board with the microcontroller STM32H747XIH6. The Flash memory size should be 2MB and 1MB of RAM. However, the memory limit is bellow the expected one. For instance, the Flash is limited to 1MB (please see the picture from the attachment).Can someone please help me with an explanation?Thank you very much!
Hi, I have generated n-classification library file from NanoEdgeAI. for NUCLEO-L476RG Development board. I have included the knowledge.h and NanoEdgeAI.h files in Inc folder as shown in the tutorials. I have added libneai.a file to Src folder. I am getting "undefined reference to `neai_classification_init'" error. Please help. Soumadeep De
I have a convolutional model with convolutional layers bach normalization layers and Dense layers at the end. The model is converted to a tflite model. The inferencing works perfect on computer using tflite but When I try to deploy it on the nucleo h743zi2 I get this error.The network layers ans its shape look like it is shown in the pic. Has anyone come across this problem?As far my understanding goes, I did not do wrong model creation. It is some bad interpretation from STM Cube library.Additional Info: I am using STM Cube AI version 7.1.0Thanks in advanceRick
Hi, I would like to use AI in STM32H7B3I-DK Discovery Board, I followed the steps in this web site (https://wiki.stmicroelectronics.cn/stm32mcu/wiki/AI:How_to_use_transfer_learning_to_perform_image_classification_on_STM32) and when I came to FP-AI-VISION1 part, I noticed that I need to have STM32H747 to use this application. Do I have a chance to use FP-AI-VISION1 with STM32H7B3I-DK Discovery Board? If not, how can do the person detection with this card?
Hi everyone, I'm currently working on a TinyML project and I'm using a STM32H745I-DISCO with X-CUBE-AI 8.1.0 version. I'm facing a problem when understanding how to change the input of a Mobilenet object detection TFlite model. I would like to modify the code for the input to be an image instead of those random numbers, and then see the predictions. How should I get the predictions when the input of the model is an image or a dataset? B.t.w. I tried to do a Validation on target but the console output would give me just "Invalid firmware COM19:115200 ...". Does anybody have the same problem?Thank you in advance.
I am trying to use the statistical features of CMSIS DSP Library on STM32L4 board using TensorFlow lite with X-Cube-Ai (version 7.2.0) in Cube IDE (version 1.10.1) for machine learning. I am not able to use the FFT function with this, other than FFT all the statistical feature are computable. There comes multiple errors when i try to attach files to overcome this problem. Is there any way to use the FFT Function in X-Cube-Ai with tensorflow lite in the same version?
When designing stm32 AI, the values come out, but the learned values don't seem to come out. This is training data using 12 variables. Please help me if there is a problem with the code. /* System headers */#include <stdint.h>#include <stdlib.h>#include <stdio.h>#include <inttypes.h>#include <string.h> #include "app_x-cube-ai.h"#include "main.h"#include "ai_datatypes_defines.h"#include "network.h"#include "network_data.h" /* USER CODE BEGIN includes *//* USER CODE END includes */ /* IO buffers ----------------------------------------------------------------*/#if !defined(AI_NETWORK_INPUTS_IN_ACTIVATIONS)AI_ALIGNED(4) ai_i8 data_in_1[AI_NETWORK_IN_1_SIZE_BYTES];ai_i8* data_ins[AI_NETWORK_IN_NUM] = {data_in_1};#elseai_float* data_ins[AI_NETWORK_IN_1_SIZE_BYTES] ;#endif #if !defined(AI_NETWORK_OUTPUTS_IN_ACTIVATIONS)AI_ALIGNED(4) ai_i8 data_out_1[AI_NETWORK_OUT_1_SIZE_BYTES];ai_i8* data_outs[AI_NETWORK_OUT_NUM] = {data_out_1};#e
Hello, I need assistance on an embedded AI project on NanoEdge AI Studio using the STEVAL-STWINBX-1 as target. After generating a binary file with NanoEdge AI Studio "Data Logger" utility for the STWINBX-1, then programming it on the board with STM32CubeProgrammer, I can't get any output on the serial. After investigating, I discovered the COM port wasn't even showing up on windows device manager. Therefore, my question is, how do I get the binary generated by NanoEdge AI Studio DataLogger to work for logging accelerometer data? Debugging steps taken:The datalogger was generated by selecting the STWINBX-1 in the NEAI Studio Datalogger tab. I tried generating for different sensors (IIS3DWB, ISM330DHCX), neither worked. I tried programming the datalogger code after cloning it from the github repo ( GitHub - stm32-hotspot/stm32ai-nanoedge-datalogger: STM32 Application for datalogging feature with NanoEdge AI Studio ), but that didn't solve the issue. This did h
This is training data that receives 12 inputs and outputs 1, but strange values appear, so please check and review the code. #ifdef __cplusplus extern "C" {#endif /* Includes ------------------------------------------------------------------*/ #if defined ( __ICCARM__ )#define AI_RAM _Pragma("location=\"AI_RAM\"")#elif defined ( __CC_ARM ) || ( __GNUC__ )#define AI_RAM __attribute__((section(".AI_RAM")))#endif /* System headers */#include <stdint.h>#include <stdlib.h>#include <stdio.h>#include <inttypes.h>#include <string.h> #include "network.h"#include "network_data.h" #include "app_x-cube-ai.h"#include "bsp_ai.h"#include "aiSystemPerformance.h"#include "ai_datatypes_defines.h" #include <string.h>#include "ai_datatypes_defines.h"/* USER CODE BEGIN includes *//* USER CODE END includes */ /* IO buffers ----------------------------------------------------------------*/ DEF_DATA_IN DEF_D
https://www.digikey.fr/en/maker/projects/tinyml-getting-started-with-stm32-x-cube-ai/f94e1c8bfc1e4b6291d0f672d780d2c0
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.