WATCH ON-DEMAND | STM32 Summit 2026
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 everyone,I have a GRU-based model that I trained using PyTorch and then exported to ONNX. I'm trying to run it on various ST boards.According to this documentation: ST Neural-ART Operator Supportit seems that the Neural-ART accelerator does not support the GRU layer. However, from what I understand, other ST Edge AI boards should support it—with some limitations described here: ONNX Supported OpsThat said, when I try to compile the model using the ST Edge AI Developer Cloud, I get the following error:TOOL ERROR: operands could not be broadcast together with shapes (512,) (256,)This is the same issue I previously encountered here: Community Thread - GRU/LSTM Model IssueAt this point, I'm not sure whether GRU layers are simply not supported at all, or if there's a way to make them work under specific conditions.I'm attaching the ONNX model in case it helps.Thanks in advance for any support or suggestions!
Dear ST team,I have followed the official tutorial:How to deploy YOLOv8/YOLOv5 object detection modelsand successfully built the deployment pipeline using Ultralytics yolov8n.pt.However, I’ve noticed a significant performance gap between my converted model and the pre-optimized model provided by ST, in terms of inference speed under the same environment.Am I missing any optimization steps during the export process?Are there any recommended configurations or parameters to match the official model’s performance?Thank you for your support.
Hey,I'm using STEVAL-STWINKT1B to log data by inserting the SD card and pressing reset (I don't use BLE connection). It's powered by the battery.I was wondering if there's a way to set a specific logging frequency, like every 15 minutes? The reason I ask is that sometimes logging stops unexpectedly (e.g., when the battery dies), and I end up with empty (.dat) files.Is this feature already implemented, or would I need to develop the firmware myself? If so, how difficult do you think that would be?Best,Anthony
Hi, I am trying to deploy my fine tuned st_yolo .h5 model but I get this error when I run the stm32ai_main.py program:ValueError: Model provided has model identifier '→ ', should be 'TFL3' What am I doing wrong? thanks
1.I chose not to generate calls when generating code in cubemx, but it actually needs to be generated. Also, this cubemx is written in Java and always pretends to be dead. My computer is a high-end Intel i9, so it's impossible for the software to run slowly2.I chose high compression, but it didn't work
Hi, I previously successfully trained an st_yolo model for the stm32h7 board using VSCode. I now got the N6 disco board and cloned the new github page for modelzoo.After running the stm32ai_mai.py program and having pointed the .yaml file to the correct training path, I get the following error: ValueError: Could not find any .tfs labels files in directoryMy dataset is yolo formatted.I did not get this error previously and am a bit confused by it. Am I in the right road at least and what should I do next?thanks
Hello Community, I've been stuck at this now for some time. I created a datalogger using the tool in NEAI studio, got a .zip file containing the Metadata.json and the neai_logger.bin. The .bin i flashed to the BOXPRO and i get a output using a STLink like the DL tool suggested. When i try then try (Anomaly Detection) Add Signal -> Log Signal from Serial USB and connect to the port that worked in Putty/TeraTerm, i get a warning "No data detected, please check COM-Port and try again"Is there something i missed?all the best
Hello,I'm doing my machelor thesis, and I found a very interesting phenomenon. I deployed a Yolov8n from model zoo inside the N6 Nucleo Board NPU(by modifying the template project from the DK board and Input from the UART with CRC code to make sure the picture is send correctly.) the inference seems to be right. However, when I input the same data (same picture with same crc code), the output can be different!!???? Is this phenomenon right? or its because I messed up sth. when I change the project???????Also even if I deploy this Yolov8n inside CPU without NPU, the outcome is still different when giving the same input. (the reference seems also working correctly.) Is this also correct??? any explanation or documentation for this? (the mAP can have a 20% different when giving 10 same pictures) Also when using a mobilenet v2 the same phenomenon is also found both in CPU and NPU,( top 5 class is same ,but the confidence can have a difference up to about 20 %) please give me
Hello, I'm currently writing a bachelor thesis regarding the model deployment inside the NPU. I'm writing about the theorical part of the thesis. And I was reading the RM0486 Reference manual. But I found one thing unexpected, from the page 1023, this figure have a I-TCM and D-TCM above the CPU and seems to have a connection with the NPU and CPU. However, I never have any experience with these storage devices... I have the project to make right inference inside the NPU which is modified from the get started project of the DK Board, the CubeIDE project only activated the D and I cache explicitly in the code. (of course AXIRAM 3456 and XSPI...) but no codes regarding the I TCM and D TCM. from other documentations, I also have rare infos about them. So my question is: Are these I-TCM and D-TCM used inside the get started project of the DK Board ? or are they used in the runtime without any explicit code? Are there more documentation about what does they do for the NPU ref
Hi, Im working with the ST EDGE AI Developer Cloud and since the last monday Im having some problems with the benchmark, they got stuck into this infinite loading... Its still possible to download the final files, but the benchmark tools are really useful to know if the model is going to work "well" in the boards.
Hi,I have an STM32N6570-DK evaluation kit that I'm using to build a small ML demo. NanoEdge AI studio has the possibility to record a dataset using the Data Logger functionality. However that currently does not support my evaluation kit, or at least I am not able to find such option. I was hoping to use the inbuilt microphone to record sample data for my demo. Will the STM32N6570-DK be supported in the near future, or can I somehow make this work myself without official support?
Hey,I'm using the STEVAL-STWINKT1B sensor to log data, and I was wondering if there's a way to do it without connecting via BLE (through the ST BLE Sensor app on iOS). I know it's possible to log data using NanoEdgeAI — which I’ve successfully done — but I was hoping there might be a simpler method.Specifically, is there a way to just power the sensor with a battery, insert the SD card, and start logging data by pressing a combination of buttons (like holding down the reset button for a few seconds, etc.) — without needing any app or external interface?Best,Anthony
I am Working with the board NUCLEO-N657X0-Q, I need to generate a c code of the Ai model Run in the Board, for that I generated a c code for the STM32N6570-DK to run in my board from St developer zone. Unfortunately i cant build the project file in CUBE IDE i cant figure out what is the problem.
Hi everyone, I'm currently working with the STM32N6570-DK and facing challenges in two areas that I’d really appreciate help with: 1. Custom AI Model Deployment (ONNX) We’re experimenting with deploying a small, simple object detection model converted from an ONNX file for testing purposes on the STM32N6570-DK. I’ve managed to get the model analyzed and validated through STM32 tools (X-CUBE-AI), which generated the typical files like network.c, network.h, and low-level AIfiles such as activation buffers, weights, etc. Here’s what I’d like guidance on: How to integrate the generated AI files into a full working project How to feed live camera data into the model How to display the model output (e.g., bounding boxes or classification results) on the onboard RGB565 display We understand that both camera input and display output are necessary for the AI model to be functional in real-time, and we’re struggling to find STM32N6-specific examples covering this pipeline (camera
Hello,I’m working on a project based on the x-cube-n6-ai-h264-usb-uvc-v1.0.0 example, which originally used the network.c file generated by STedgeAI 2.0. However, I can now only download STedgeAI 2.1, and the code generated by both versions is not compatible. I’ve tried updating the network.c generated by STedgeAI 2.1 into my project, but I’m encountering the following errors during compilation: Description Resource Path Location Type cannot find -lNetworkRuntime1000_CM55_GCC: No such file or directory x-cube-n6-ai-h264-usb-uvc C/C++ Problem Description Resource Path Location Type make: *** [makefile:97: x-cube-n6-ai-h264-usb-uvc.elf] Error 1 x-cube-n6-ai-h264-usb-uvc C/C++ Problem I’ve tried updating the libraries and replacing the network.c file, but the issue persists. Given my project requirements, I need to integrate STedgeAI 2.1 generated code into the existing project.Could anyone suggest how to update the project so t
Hiiii!I installed NanoEdge AI Studio. try to upload some test data for training. As shown below, sanity check is not taking progress. I am not sure if is related to connection issue. I do encounter following issue as well My license is activated successfully. Really new to NEAI. Looking for help~~~
Hi, we found there an AED sample for stm32 n6 npu, but this example doesn't meet our needs. We want do streaming speech recognization on stm32n6 offline, do you have any advice or recommend model we can try on stm32n6. Thanks!
Hi,I'm trying to use the NPU of the STM32N6 to run a onnx model in attachment.The issue I try to fix is that stedgeai is not using the NPU for all operations. Some of them are run in SW instead of HW, like Conv and Gemm and I don't understand what is preventing the acceleration.Here is the stedgeai output:/home/doc/STM32Cube/Repository/Packs/STMicroelectronics/X-CUBE-AI/10.1.0/Utilities/linux/stedgeai generate --target stm32n6 --name network - m denoiser_LSTM_Valetini_nobatchsize_preprocess_simplified_q.onnx --st-neural-art "n6-noextmem@/home/doc/STM32Cube/Repository/Packs/STMicroelectronics/X-CUBE-AI/10.0.0/scripts/N6_scripts/user_neuralar t.json" --verbosity 1 ST Edge AI Core v2.1.0-20194 329b0e98d WARNING: Unsupported keys in the current profile n6-noextmem are ignored: memory_desc > memory_desc is not a valid key anymore, use machine_desc instead >>>> EXECUTING NEURAL ART COMPILER /home/doc/STM32Cube/Repository/Packs/STMicroelectronics/X-CUBE-AI/10.1.0/Utilitie
Hello.This problem has bothered me a lot.I generated an nbg modle form my tflite model:adam@Ubuntu22:~/STM32MPU_workspace/stedgeai/2.0/Utilities/linux$ ./stedgeai generate --model test.tflite --target stm32mp25ST Edge AI Core v2.0.0-20049PASS: 0%| | 0/2 [00:00<?, ?it/s]Galcore warning: MMU is disabled!Model was successfully compiled to NBG: /home/adam/STM32MPU_workspace/stedgeai/2.0/Utilities/linux/stm32ai_output/test.nbPASS: 100%elapsed time (generate): 39.985sI am not sure if the waring "MMU is disabled" meaning my model will works in low efficiency or not. But I definitely monitored the gpu load while inferenceing and the maximum occupancy rate is 2% only. Then I tried to changed batch size to 32 to improve gpu load. But the result is:[ 9143.030372] [galcore]: GPU[0] core0 hang, automatic recovery.[ 9143.030732] [galcore]: recovery doneI changed the batch size to 6, it's OK, and the up threshold is 6.I thinks that may be something wrong about my model or my environment settings.
Hi everyone,I'm having trouble generating a project to run an AI model on the Nucleo-N657X0-Q board.I open STM32CubeMX version 6.14.1, select the board, choose "Secured Application", and then when I select the X-CUBE-AI package, it asks for the ZIP file available here:https://www.st.com/en/development-tools/stedgeai-core.html?ecmp=tt9470_gl_link_feb2019&rt=db&id=DB4255I download it, choose to use X-CUBE-AI in the Application domain, and when I try to select the ONNX model, it asks whether I want to optimize peripherals and clock. At this point, whether I click "Yes" or "No", CubeMX freezes indefinitely.I’ve already tried using CubeMX version 6.13 as well, but it didn’t help.My suspicion is that the problem might be related to the version of ST Edge AI. Version 2.1 on the ST Edge AI Developer Cloud throws an error during optimization (although maybe it's unrelated). Also, when selecting the package ZIP file, the dialog only shows folders, not ZIP files. I have to manually naviga
Hi,Here is a picture when I run my app on the STM32N6570-DK in developer mode:It works just fineWhen signing and flashing the bin file, this is when I run the app in Flash mode:The result is a near 100% CPU usage and distorted screen.What could be the cause that gives this result?Thanks,
Hello everyone,I am encountering issues while using the X-Cube-AI tool to analyze two models that I recently resized and reduced. Despite thorough testing and troubleshooting, I cannot resolve the errors, and I hope someone here might provide insight.Issue Details:Model Behavior in Python:Both models run perfectly in Python.They work well when tested as .onnx models using other tools.Troubleshooting Steps Taken:Analyzed the .onnx models manually using Netron.app — no issues were identified.Attempted analysis using both my local IDE and the ST Developer Cloud Tool — both returned the same errors.Enabled maximum verbosity (level 3) during analysis, but the error messages provided no actionable information.Error Messages:anchornet.onnx: INTERNAL ERROR: 'NoneType' object is not subscriptable pointnet.onnx: INTERNAL ERROR: Mismatch in input shape of gemm: (BATCH: 1, CH: 512, H: 3) x (BATCH: 1, CH: 3, H: 3) While the second error provides slightly more detail, it remains unclear wh
Hello,I have a very similair problem as my last forum post, so here I go again. I tried the fix that worked last time (quantizing using ST AI Developer Cloud), but this didn't fix it this time. The problem:I have a large .onnx model which, untouched, I’m unable to analyze on the ST AI Developer Cloud. After quantizing this larger model using the online ST AI Developer Cloud tool, I now receive the following error when running the analyze command with X-CUBE-AI (I also get this when I try to "Optimize" this quantized model on the ST AI Dev Cloud):>> stedgeai analyze --model anchornet_PerChannel_quant_random_1.onnx --allocate-inputs --allocate-outputs --optimization balanced --target stm32f4 --name network --workspace workspace --output output ST Edge AI Core v1.0.0-19894TOOL ERROR: need more than 2 values to unpackStrangely, the original (unquantized) model can still be analyzed successfully, so it seems the quantization step introduced a change that X-CUBE-AI doesn’t handle corre
Following are my configuration in detailed. I have analyzed and validated network on MX. However, after compileing code by MDK and flashing .hex on board, i reset the board and do not see any print on virtual tyy.following are the set on MX:RCCSYSconnectivity packsprojcet managercompile in mdkflash hex file in boardfail because of sths: please help me to find problems
I have been using STM32N6 to conduct model training and deployment for the model zoo. Now, I want to transfer the generated code to my TouchGFX project for embedded use in the CubeIDE environment. However, when I am transferring several files, before the transfer, the original files did not have this error, but after the transfer, there is this error and it is particularly common, mostly for the official-generated code. As follows: When these files are transferred: After the transplantation was completed, an error occurred: ./../../Drivers/STM32N6xx_HAL_Driver/Inc/stm32n6xx_hal.h:893:1: error: unknown type name 'HAL_StatusTypeDef'; did you mean 'HAL_TIM_StateTypeDef'?893 | HAL_StatusTypeDef HAL_SYSCFG_GetWriteQosNP1(uint32_t *pQosValue);| ^~~~~~~~~~~~~~~~~| HAL_TIM_StateTypeDef../../../Drivers/STM32N6xx_HAL_Driver/Inc/stm32n6xx_hal.h:895:1: error: unknown type name 'HAL_StatusTypeDef'; did you mean 'HAL_TIM_StateTypeDef'?895 | HAL_StatusTypeDef HAL_SYSCFG_GetReadQo
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.