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
Hi, When ST will release more information about the STM32N6? Will it use the new cortex-m55? Can it be used in motor control applications?
Hello everyone, I am trying to use the ST Edge AI Developer Tool and I am encountering the following error when I try to quantize my model (a RNN with an input layer, 3 GRU layers and a Fully Connected layer): 2024-12-11 07:25:35.451880: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`. 2024-12-11 07:25:35.479788: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations. To enable the following instructions: AVX2 AVX512F AVX512_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags. ONNX Runtime Model Optimization Failed! Consider rerun with option `--skip_optimization'. Traceback (most recent call last): File "/usr/local/lib/pytho
Good afternoon,I want to upload a Machine Learning algorithm on the ISPU part of the LSM6DSO16IS. My alghoritm has to identify is the subject is stationary, walking or running. I used NanoEdgeAI Studio to develop the classification algorithm. By doing this I obtain these files, but don't the .ucf file, which is the file that I have to upload on the ISPU part of the sensor. By uploading this files on the Nucleo, it performs the classification correctly, but I want the classification to be done by the sensor. Which is the easyest way to obtain it starting from the files that I obtained?
Dear Sir/Madam,I am trying to deploy a trained AI model (CNN+LSTM) to STM32F767. When I tried to analyse the TFlite file with the STM32CubeMX, it stopped and gave the following message: Could you please help me sorting out this issue?Thanks QS
/* ============= Copyright (c) 2023, STMicroelectronics All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. *THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
Hi,I'm working with X-CUBE AI.The code seems working but I have a doubt:status_init = ai_network_create_and_init(&network_handle, act_addr, NULL);Is NULL parameter correct ?Why souldn't I need to pass a pointer also for weigths like 'act_addr' ?If it is required how am I supposed to achieve this point without occcupy other RAM space ? (Note that inference output is actually weird, but it could be correct cause I used mockup input data to feed the network)Please, take a look to code and log below: ....network_data_params.h.... #ifndef NETWORK_DATA_PARAMS_H #define NETWORK_DATA_PARAMS_H #include "ai_platform.h" /* #define AI_NETWORK_DATA_WEIGHTS_PARAMS \ (AI_HANDLE_PTR(&ai_network_data_weights_params[1])) */ #define AI_NETWORK_DATA_CONFIG (NULL) #define AI_NETWORK_DATA_ACTIVATIONS_SIZES \ { 306432, } #define AI_NETWORK_DATA_ACTIVATIONS_SIZE (306432) #define AI_NETWORK_DATA_ACTIVATIONS_COUNT (1) #define AI_NETWORK_DATA_ACTIVATION_1_SIZE (306432) #define
I am trying to validate a CNN on STM32CubeMX with X-Cube-AI 9.1.0. I provided a datainput.CSV and a dataoutput.csv files to "Validation inputs: & Validation outputs: " respectively. When ran Validate on desktop or Validate on target, they all failed >> "E204(ValParamError): number of data files is not enough, 4 are expected."Could you please help me sort out this problem?Do data files in .csv correct?Only have 2 boxes for 2 files providing, why expected 4? QS
First , the github project is thishttps://github.com/Xiaobin-Rong/gtcrn/tree/main It has converted to onnx and tensorRT for ppl to usebut when i load the onnx model into stm32 for optimize/import (setting , compression : none , optimization : balance)it just jumps out an error X-cube-AI version is 9.1.0 ST Edge AI Core v1.0.0-19894 INTERNAL ERROR: Trying to remove node_339 which has multiple inputs is it because the multi input and output network limitation or something else?and if i success to import this modelhow to deal with the multi dimensional tensor arrays that the github author demo ? if you want to test on the modelthere is the link for the onnx and tensorRT modelhttps://github.com/Xiaobin-Rong/TRT-SE/tree/main/online/models Thanks in advance Uveuvenouve
Hi everyone, I have a STWIN.BOX (STEVAL-STWINBX1) and I have played around with the code examples in Python provided on the tfp-sns-datalog2 repository. The idea is to use this device to provide readings to a Raspberry Pi board and make some decisions based on the data. I am not an expert in Python, but I coded a simple script to read the sensors using the repository, getting the hsdatalog_cli.py as an example, and using this data as input to the Raspberry Pi board. The thing is, I can read the sensors only if I start logging (using the start_log method provided by the script hsdatalog_cli.py), and since the log has started, it will generate .dat files. So, every time I run the algorithm inside the Raspberry Pi, new .dat files are generated, and the file sizes depend on how long the board is running the algorithm. I have tried to get data from the sensors without starting logging, but I have failed. Is there any way of getting data from the sensors without generating the dat fil
I am encountering an issue when deploying a classification model generated with NanoEdge AI Studio 4.6.0 to my STM32H7 development board. Below are the details:Issue: When calling neai_classification_init(knowledge), the function returns NEAI_COMPILER_ERROR. Debugging further, I found the following comment in the generated NanoEdgeAI.h file: enum neai_state { NEAI_OK = 0, NEAI_INIT_FCT_NOT_CALLED = 123, NEAI_BOARD_ERROR, NEAI_KNOWLEDGE_BUFFER_ERROR, NEAI_NOT_ENOUGH_CALL_TO_LEARNING, //This is a fail-safe to prevent users from learning one or even no signals. NEAI_MINIMAL_RECOMMENDED_LEARNING_DONE, NEAI_UNKNOWN_ERROR, /* Error due to a potential compatibility issue affecting user of the ARMCC toolchain. * Contact our support for further details or consider using a different toolchain */ NEAI_COMPILER_ERROR }; Setup:Toolchain: Keil MDK 5.37 with ARMCC (AC5) compiler.Initialization Code: Generated with STM32CubeMX.NanoEdge Versions:Models generated with N
When I select the library in the [Validation] tab of NANOEDGE AI STUDIO and run [Serial emulator], I get the error message "No data are being received. Please ensure the correct COM port is selected."However, I am able to obtain data if I select the same COM port using TeraTerm (terminal emulator).Incidentally, the same error occurs whether the baud rate is 9600 or 115200.The board I am using is B-L475E-IOT01A2.Does anyone have any information on the cause of this?
Hi community,I'm working on deploying an object detection project using Edge Impulse on STM32H747i-DISCO with CAMS OMV. I successfully deployed the TFLite model, but I would like to add camera and board configuration to detect objects in real time. How can I integrate this into the project?Thanks in advance for your help!
Hi, I am getting this error in the Colab note book. please see attached. Any idea what is wrong? Also, it seems this is the only Colab note book that could work. any place for a prject that will work with the pre-trained model? Thank you.
Is my camera module working fine (all 3 LEDs light up)? I am working with the model zoo image classification project, and facing issue.I have
Hi Community,Is there a pre-trained model for object detection, other than for people counting?
Dear Sir or Madam,I'm trying to import a ONNX network with X-Cube-AI(9.1)/ST Edge AI Cloud which was generated and exported using Matlab/Simulink. When trying to work with the model I always receive the following error:[... ST Edge AI Core v1.0.0-19894 INTERNAL ERROR: Your model ir_version is higher than the checker's....] - same error in X-Cube-AI(9.1) and ST Edge AI Cloud.The intermediate representation version of the Matlab/Simulink generated ONNX Model is 9 and I choose OpsetVersion to be 13 (recommendation somewhere in the docs). Attached is an example of the file I would like to import.Now it would be interesting for me to know which intermediate representation version is required by X-Cube-AI(9.1)/ST Edge AI Cloud? Then I can convert the onnx file to the correct ir version.Which ONNX version is the basis for X-Cube-AI(9.1)/ST Edge AI Cloud? Have a nice day and best regards,MoCo STM32Cu
Hi Community, I’m working on deploying my custom tiny ISSIMO-V8 model for object detection onto the STM32H747I-DISCO board with the OMV CAMS camera. Can I use the FP-AI-Vision 1 project, which is based on object detection for people counting, and modify it to adapt to my model (detecting kitchen utensils and multiple objects)? Thank you in advance for your guidance! Best regards,
Hi,I'm facing a weird problem: I correctly deployed a network using x-cube-ai but now I have to add a new one.The configuration option does not open, when I click on x-cube-ai (see screenshot attacched) it stucks on waiting puntator...How can I fix it ? I tried restarting STM32CUBE IDE and also restarting PC, problem persists...IDE version 6.12.1Regards
Hello,I am interested in implementing a static version of the NanoEdge AI Anomaly Detection for the ISM330ISNTR. That means I would like to us the trained knowledge from NanoEdge AI Studio for the library and not have to run a learning cycle after each power up, because my application requires many short uses, where a learning sequence each time would be very hindering. Is this at all possible?Many thanks in advance :)
Hi everyone,I'm trying to integrate st_yolo_lc_v1_192 pretrained model to my project on STM32H750 MCU.I'm new to the framework and AI tech.I see the output shape is 12x12x30 which I know the 12x12 means there are 12x12 grids. What I don't know is the '30', does that mean 5 * [x, y, w, h, confidence, class] ? and do I need to apply an activation function to these values? Thanks!
Hi, I have successfully ran and trained the models in modelzoo but I would like to use a larger model with yolov8 for higher resolution. It was mentioned in another post that yolov5 and above is not compatible with ST chips at the moment. In any case can how can I use a previous model let's say v4? The available models seem to be: st_ssd_mobilenet_v1 ssd_mobilenet_v2_fpnlite st_yolo_lc_v1 tiny_yolo_v2 What would the .yaml file look like. Can I just use the .tflite file from yolov4 and use one of the yolo derivatives from the above list? Alternatively, can I increase the input matrix on the available models to be larger than 416x416? I am using the h747 disco board. thanks
Hi all, I am trying to benchmark a TCN (causal cnn)-model on an STM32u5, however, when using any of the AI-Tools (online, CubeIDE or CLI), the analysis step fails with the output: ST Edge AI Core v1.0.0-19894 INTERNAL ERROR: 'numpy.ndarray' object has no attribute 'get_shape_map' Which is sadly not helpful. The model is attached, it was converted to onnx from pytorch (or rather fastai) using opset 13. It should take an input of 1x500x1 (bs x 1DSample x channels) and give an output of the same shape.I would be happy to get any pointers on what I can do to fix this, thank you!
Hello,I have a large .onnx model which, untouched, I am unable to run on my STM32 board. To tackle this problem, I wanted to quantize the model in order to decrease its size. I followed the official STM wiki (https://wiki.st.com/stm32mcu/wiki/AI:X-CUBE-AI_support_of_ONNX_and_TensorFlow_quantized_models). First, I preprocess the model using onnxruntime as described in the wiki, and then I change the opset version of the preprocessed model to 13. Finally, using almost identical code to the wiki, I apply static quantization to the model, drastically reducing its size. (As in the wiki, I also tried quantizing with and without the per_channel=true option, but both attempts failed.)When trying to analyze this model using X-CUBE-AI, I get the following error:ST Edge AI Core v1.0.0-19894TOOL ERROR: list index out of rangeHow can I fix this? The strange part is that the original, larger model can be analyzed successfully, so the quantization process must have introduced a change that made
Hi, https://www.youtube.com/watch?v=yuSVz3x9LzE&list=PLnMKNibPkDnG9IC5Nl9vJg1CKMAO1kODW&index=3Here in this demo, the training is done using train.py. And also if you run image_classification\src>python stm32ai_main.py config_file_examples\training_config.yaml", the following error is encountered:in <module>from tabulate import tabulateModuleNotFoundError: No module named 'tabulate'Is there any update regarding this?Thanks
Hello,I'm working with SensorTile (STEVAL-STLKT01V1) and using the AI-SENSING1 firmware. I would like to replicate the energy saving behavior I observed in the ALLMEMS1 firmware: it goes into shutdown mode after a period of no connection and can be reactivated by a double tap event. In ALLMEMS1, this behavior happens automatically, but in AI-SENSING1, I am facing difficulties implementing this logic.My question is: what specific steps should I follow to replicate the behavior of ALLMEMS1 in AI-SENSING1, or is there any example of implementing this shutdown with wake-up via double tap for AI-SENSING1? I would also need guidance on how to configure the timer so that the shutdown occurs automatically after a pre-determined time without connection.Thanks in advance for any help or guidance.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.