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
Hello,I am trying to implement a gesture recognition application.I am using 53L8A1 to collect data.And found out the model zoo supports Hand Posture using 2D CNN. In the model zoo is uses minimum distance, max_distance and background distance. Based on the normalization it follows:X1_norm[zheaders["distance_mm"]] = (X1[zheaders["distance_mm"]] - 295) / 196X1_norm[zheaders["signal_per_spad"]] = (X1[zheaders["signal_per_spad"]] - 281) / 452I would like to know how number 295, 196 for distance and 281, 452 is calculated.Since i am trying to detect dynamic gesture as well with motion.It possible to do it in 3DCNN with 8x8x2xNumber Of Frames. Where 2 are the distances and the signal per spad?
Hi all, I'm playing around with STM32H747I-DISCO eval board and the stm32ai-modelzoo demo. I've managed to train and evaluate a model with my custom dataset using the script in "image_classification\src\stm32ai_main.py" Now I'm struggling with the deployment of the model. I tried using the deploy script in "image_classification\deployment\deploy.py" but I get the following error: ModuleNotFoundError: No module named 'models_utils' Any ideas what's going wrong here? The error isn't very descriptive (to me at least) so I'm a bit stuck. Sorry if this is a simple question, coming from a Hardware and FPGA design background using VHDL where everything is very explicit and strongly typed, I really struggle with the layers of abstraction that Python libraries bring.
Hi,I'm trying the STAIoT Craft platform and I'm having issues trying out the IoT Systems.So far I've tried cloning and deploying two samples:Smart Asset TrackingHuman Activity RecognitionThis is my setup:Google Chrome Version 130.0.6723.1 18 (Official Build) (64-bit)SensorTileBox.Pro (with SD Card)Rapsberry Model 4B 8GB RAM (32 GB SD Card for OS)edge_gateway_production_20241107_1_2_0.imgWi-FiI cloned the sample projects from the STAIoT Craft Homepage and just tried them out. I followed the instructions for deployment (flashing the sensortile, downloading Raspberry OS and configurations...) as described by the step-by-step procedure. This is a screenshot of the issue with the Smart Asset Tracking sample:I tried clicking on "Apply Manifest" but it didn't change the results: Just to be sure, I tried the Human Activity Recognition sample, with the same result: The only thing that is not clear to me (but I tried both ways) is if SensorTile and Raspberry have to be ON before I
Hi, I am trying to build the 'Getting Started with Image Classification' project from STM Model Zoo on STMCube IDE. However, whenever I try to build the project I keep getting this error: "fatal error: ../Components/adv7533/adv7533.h: No such file or directory" There does not seem to be a directory for adv7533 anywhere in the project. Any idea where I can obtain the required files to build the project?
I have this working keras model: https://www.dropbox.com/scl/fi/544ma5tsndw3cjv8djem0/model.keras?rlkey=87845alu8vki9y81kb7tjgrab&dl=1 and I am trying to load it into X-CUBE-AI 8.1.0 When I hit Analyze I get this error: Neural Network Tools for STM32 family v1.7.0 (stm.ai v8.1.0-19520) E010(InvalidModelError): Couldn't load Keras model C:\[redacted]\model.keras, Error when deserializing class 'InputLayer' using config={'batch_shape': [None, 128, 173, 1], 'dtype': 'float32', 'sparse': False, 'name': 'input_layer_1'}. Exception encountered: Unrecognized keyword arguments: ['batch_shape']How can I solve this?
I'm trying to develop an AI model and integrate it into the STEVAL-STWINKT1B board to classify the noise of industrial engines. How do I implement the generated library in nano edge ai so that the board shows the classification by obtaining data from sensors in real time? I followed the steps in this documentation, but I was unsuccessful. https://wiki.st.com/stm32mcu/wiki/AI:How_to_perform_anomaly_detection_using_FP-AI-MONITOR1
Hi, I am in the process of trying out the image classification example in the STM32 Model Zoo package. I have trained the MobileNetV2 model and followed the steps for deployment on my STM32H747i-Disco Board. However, the code does not seem to be working on my board. Only static shows up on the LCD as shown in this image. Are there any possible fixes as to what is going wrong? I am following the deployment tutorial step by step and even tried to run the image classification code directly from STMCubeIDE but I still get the same result. Any help or advice would be greatly appreciated.
Hi there, I'm not sure if it's better to leave a post here, or on github. If there is a preffered place, please let me know!TL;DRI'd appreciate any guidance on how to correctly configure the pad-values for 1-bit conv operations within X-CUBE-AI.I appreciate those at ST may not be able to fully comment on the inner working of ST's kernel implementation, but I have a concern 1-bit convolutions may be implemented sub-optimally.Problem and SetupThe problem I'm working on is generating a Binary Nerual Network (BNN). I've decided to trial the X-CUBE-AI framework for my company.A terse description of my environment to replicate this is as follows (most of this should be irrelevant but just incase):OS: Mac OS 15.1Chip: M2 ProPython: 3.11.8TensorFlow: 2.15.0Larq: 0.13.3X-CUBE-AI: 9.1.0Simple Self-Contained ExampleI've got a very simple python script called "test.py" (see below). It imports tensorflow and larq, and creates a very simple model, with a single larq binary 2D convolution (weigh
I have created a tensorflow model for image classification. But during the optimization process using STM32 AI developer cloud, I am getting the following error:error: Error when deserializing class 'InputLayer' using config={'batch_shape': [None, 32, 32, 3], 'dtype': 'float32', 'sparse': False, 'name': 'input_layer'}. Exception encountered: Unrecognized keyword arguments: ['batch_shape'] model = models.Sequential([layers.Input(shape=(32, 32, 3)),layers.Conv2D(32, (3, 3), activation='relu'),layers.MaxPooling2D((2, 2)),layers.Conv2D(64, (3, 3), activation='relu'),layers.MaxPooling2D((2, 2)),layers.Conv2D(64, (3, 3), activation='relu'),layers.Flatten(),layers.Dense(64, activation='relu'),layers.Dense(10, activation='softmax') ]) Ritesh
Hi community members,I’m currently working on a project where I want to deploy a Convolutional Recurrent Neural Network (CRNN) on an STM32 MCU using X-Cube-AI. The network structure includes convolutional layers followed by GRU layers, with a reshape and permute in between to convert the 4D tensor output to a 3D input tensor for the recurrent layer. Initially, I implemented this in PyTorch (exported to ONNX), and then tried TensorFlow Keras (exported to TFLite). Unfortunately, I’ve run into errors with both approaches during the import process in X-Cube-AI.Error MessagesWhen importing the ONNX model from PyTorch, I received the following error message:TOOL ERROR: Shape and shape map lengths must be the same: [192] vs. (CH_IN, CH)I built the same architecture using TensorFlow Keras to see if this would work, then exported it as a TFLite model. However, importing this TFLite model into X-Cube-AI produced the following error:INTERNAL ERROR: Inconsistent in/out tensor shapes in transpose_6
I want to deploy a model I've trained on my STM processor using STM32 Cube AI, but I am encountering some issues. Could someone with experience in this area assist me? I don’t see any obvious issues in my model, but there could still be something wrong with it. Since I don’t have much experience in this area, any help would be greatly appreciated.I am encountering an error when trying to perform the 'validate on desktop' operation. The error message is as follows:E010(InvalidModelError): Couldn't load Keras model W:\BYS_Tez\LSTM\model_RNN.h5, Error when deserializing class 'InputLayer' using config={'batch_shape': [None, 10, 3], 'dtype': 'float32', 'sparse': False, 'name': 'input_layer_9'}. Exception encountered: Unrecognized keyword arguments: ['batch_shape']I have attached the model. I would greatly appreciate any help with resolving this issue.
How to check the classification accuracy of image classification models on STM32H7 ? Ritesh
Hi,I see the ST Edge AI Suite case studies People counting with a ranging sensor. Is there any demo project for that ?Regards
'ai_layer_conv2d' {aka 'struct ai_layer_conv2d_'} has no member named 'in_ch_format''ai_layer_conv2d' {aka 'struct ai_layer_conv2d_'} has no member named 'out_ch_format' Also i am trying to run a object detection model in which i want to glows LEDs based on the position of the object on the screen based on the coordinates of bounding box. Can anyone help in that.
Hi everyone,I'm currently working on a project that involves implementing Edge AI using the X-CUBE-AI software package within STM32CubeIDE. After adding the AI model, which requires 44 bytes of RAM and generating the necessary code, We encountered a problem: one of the peripherals, specifically I2C, starts hanging after a while when interfacing with a sensor to obtain readings.Here’s a summary of the steps we've taken so far:Isolated the Issue: To determine if the hanging issue was related to the AI initialization, we commented out the AI functions from the main file. However, the I2C communication still hangs when waiting for a response from the sensor after some time.Sensor Exemption: We tried excluding the specific sensor to see if other sensors would work correctly. Unfortunately, the other sensors are also exhibiting the same hanging behavior.Peripherals in Use: Our project involves multiple active peripherals, including I2C1-3 and UART4-5.Additional InformationWorkspace Vers
X-CUDE-AI 9.1.0 Win11Analysis & Validating on Desktop, Passed.Validating ONNX model on NUCLEO F767zi (automated), Failed.Since this automated validation process cannot be intervened or debugged, it seems I can't do anything. Why this appears?Error here:[AI:network] Building project[AI:network] Generating project[AI:network] Temporary project loaded[AI:network] Temporary AI configuration done[AI:network] Generating temporary project code[AI:network] Building project[AI:network] D:/STM32CubeIDE/STM32CubeIDE_1.13.2/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.12.3.rel1.win32_1.0.200.202406191623/tools/bin/arm-none-eabi-gcc -c -mcpu=cortex-m7 -mfpu=fpv5-d16 -mfloat-abi=hard -DDEBUG -DUSE_HAL_DRIVER -DSTM32F767xx -D -IDrivers/CMSIS/Device/ST/STM32F7xx/Include -IDrivers/CMSIS/Include -IDrivers/STM32F7xx_HAL_Driver/Inc/Legacy -IDrivers/STM32F7xx_HAL_Driver/Inc -IInc -IMiddlewares/ST/AI/Inc -O3 -Wall -fdata-sections -ffunction-sections Drivers/STM32F7xx_H
Dear Support As I am trying to get familiar with the NAnoEdge AI Sudio, I tried the followed steps to setup a demo project:1. New project -> select the EVB(NUCLEO-F401RE) and Sensor(Accelerometer - 3 Axes)2. Regular Signals : Create a datalogger -> Select the EVB(F401RE + X-NUCLEO-IKS02A1: 3 axis, 25 Hz, range-8, samples per axis - 16) -> generate Data logger.3. Regular Signals: Add signal-> From File -> Choose the neai_datalog.bin which is generated in STEP#2 -> continue but with followed capture's error: problem detected on line(s) 5.6.7.8,xxx. Could you please guide how to go to next step for benchmark? RegardsXiao Kang
i need some assistance with modelzoo . so first of all . i converted a dataset to darknet using converter.py than i trained it using train mode i had a 2.6mo .h5 file then i quatized it to 600kb .tflite file. but when i tried to deploy it i had an error saying just exception "wrong" from compile.py file. so is there any assistances about this error and second of all i realized that despite modelzoo say that he can only deploy tflite models . there are some tflite models that he cannot deploy . ( i tried 4 different tflite models 1 was deployed and 3 did not) so is there any parameters or configurations i should know about in builiding my model(conditions to be respected) so my model can be compatible with modelzoo
私はNANOEDGE AI STUDIO内のData Logger Generatorを参照しました。現在ここに私が所有するB-L475E-IOT01A2(開発ボード)がありません。そこでB-L475E-IOT01A2で温度・湿度・加速度のデータ・ログを取得し、NANOEDGE AI STUDIOにて機械学習を実行したいと思っています。なお温度は内部温度センサを使おうと思います。そこでB-L475E-IOT01A2で使えるおすすめの湿度センサ・加速度センサを教えてください。また、内部温度センサ・湿度センサ・加速度センサのデータを取得するサンプルプログラムがありましたら教えてください。Translated to English by Community team with DeepL.com (free version)I have referenced the Data Logger Generator in the NANOEDGE AI STUDIO.Currently, I do not have my B-L475E-IOT01A2 (development board) here.So I used B-L475E-IOT01A2 to get data logs of temperature, humidity, and acceleration,I would like to use B-L475E-IOT01A2 to acquire temperature, humidity, and acceleration data/logs, and execute machine learning with NANOEDGE AI STUDIO.For temperature, I would like to use an internal temperature sensor.So, please let me know the recommended humidity sensor and acceleration sensor that can be used with B-L475E-IOT01A2.Please let me know.Also, please let me know if there is a sample program to
Hello, everyone! I'm learning to deploy my target detection model using cubeai. My model is trained using pytorch and I found that cubeai doesn't support .pth file conversion so I'm trying to convert my model to onnx format. Since the size of my model did not match the requirements of the development board, I performed a quantization operation. Noting that cubeai officially recommends quantization in onnx format, I did so. However, when I analyze the model with cubeai, the following error occurs (the model before quantization can be analyzed normally). Can anyone help me to see what's going on?
Hi, I was working with NEAI and saw these constraints mentioned in the wiki:General considerations for input file format:.txt / .csv filesNumerical values only, no headersUniform separators (single space, tab, comma, or semicolon)Decimal values formatted with a period (.)Fewer than 16,384 values per lineConsistent number of numerical values on each lineMinimum of 20 lines per sensor axisFewer than ~100,000 total linesFile size less than ~1 GbitWhat is the reason for these constraints and are these strictly enforced? Is there any issue if I don't follow these?
The free online platform (formerly named STM32Cube.AI Developer Cloud) now supports MPUs and smart sensors in addition to MCUs. It also supports AI hardware acceleration (NPU) on compatible devices. Leveraging the ST Edge AI Core technology, the tool allows you to bring your own model or select one from our model zoo, optimize it, and run benchmarks remotely on real ST boards to identify the ideal platform for your project. This tool is also part of the recently introduced ST Edge AI Suite. Check it out here!
I am trying to integrate the a neural network machine learning model into the stm32h755 chip. I downloaded the stmCubeMx, installed X-Cube-Ai, selected the core, added the network using tflite file and then generated the code. I can't find the ai_model_data.c, ai_model_data.h, ai_model.h and some other important files. Could you please provide a detailed steps by step process to integrate the Neural Network in an ALREADY created/ EXISTING project?
I'm a senior student majored in AI before and recently bought an STM32H743VIT6 to experiment with Edge AI. I haven't had any experience with embedded systems before. My ports seem to be missing, but CubeProgrammer successfully found my device through USB and allowed me to flash it.How strange it is! My classmate mentioned that I need try an ST-Link, but I'm not entirely sure.It may be a very simple question but I don't know anything about Stm32H743VIT6 and how to start.By the way , there are lots of requires about models on stm32.Most of the ONNX models I used to developed during my four years of university even can't be analysed ,made me very upset because of these requires.I almost lost my confidence in embedded systems and AI. :(
Hi, I am using STM32F746G Discovery Board to deploy an object detection model to detect person in an image. The model size of the object detection model is less than 1Mb. The implementation would be like to make an inference in the microcontroller like access the jpg images in the sd card (since i dont have a camera module) and display it in the LCD together with its prediction like bounding boxes on the image in case there is a person in it. I used the STM32Cube MX and enabled XCUBE AI then upload the pre trained model which is the ssd mobile net v2 but I am having trouble making the configuration for displaying image, accessing files in sd card, decoding the jpg images from the sd card in STM32Cube MX land I also don't know how to use the XCUBE AI application template like the methods ai_run(), acquire_and_process_data(ai_i8* data[]) and others.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.