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 @everyone, I’m deploying an AI model on the STM32N6570-DK. The deployment process seems fine — in the command line I see the message:“Your model deployed. Turn both boot switches to the left and cycle the power.”However, the issue is that the model is not building in cmd and as well as on STM32CubeIDE. I’ve tried this with 5–10 different models, but every time I get a model build failed error, and the .bin file is not generated.Any help or suggestions would be greatly appreciated!Thanks in advance! Details:Board: STM32N6570-DKTools: STM32CubeIDE, STM32Cube.AI, STM32CubeProgrammer.
Hello,I am trying to deploy a yolov8n model on STM32N6570-DK. For that I tried to follow the instructions in https://github.com/STMicroelectronics/stm32ai-modelzoo-services/blob/main/object_detection/deployment/doc/tuto/How_to_deploy_yolov8_yolov5_object_detection.mdI managed to train the model using ultralytics yolo and I have a .pt project. However I was not able to execute the yolo export model=yolov8n.pt format=tflite imgsz=256 int8=Truecommand, it produced some errors. But I was able to get a .onnx model, which I quantized using the ST scripts in model zoo services. I was able to validate the model and also use prediction on actual images and get correct results.To do that I had to apply -inputs-ch-position chfirst in the prediction params. The prediction worked well in all modes, host, stedgeai_host and stedgeai_n6.Now I am trying to deploy the model on the board. I used the deployment operation mode in the scripts and it was done successfully. However the mod
I want to deploy a PyTorch AI model on the STM32N6570. I have already trained the model and converted it to an ONNX file. I’m looking for a quantization, compilation, and deployment example or tutorial. The speech enhancement example in the STM32 AI Model Zoo Services doesn't match my use case. Although the input shape is the same, my model does not require any pre-processing. I only want to feed input data into the model and observe the output. Also, I would like to know if it's possible to perform deployment without providing a dataset.
Hi everyone, I am trying to deploy a yolov8seg instance segmentation my STM32N6570-DK board, but I am facing some issues. I am getting this error.(st_zoo) kartikkhandewal@atl-hpzg14-99:~/stm32packages/stm32ai-modelzoo-services/instance_segmentation/src$ python3 stm32ai_main.py --config-name deployment_n6_yolov8n_seg_config-custom.yaml 2025-04-28 16:10:37.307414: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/local/cuda-12.6/lib64: 2025-04-28 16:10:37.307440: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine. [WARNING] The usable GPU memory is unlimited. Please consider setting the 'gpu_memory_limit' attribute in the 'general' section of your configuration file. [INFO] : Running `deployment` operation mode [INFO] : Found 80 classes i
Hello,im currently in the process of building an application on the STM32N6570-DK.Ive played around with the Image Classification example and also deployed a couple own models wich worked sometimes and sometimes not... :DHowever i wanted a "fresh" start after a couple failures with different models and thought the best way is to flash the prebuilt .hex files that come with the Application (ai_fsbl.hex, STM32N6570-DK_network_data.hex and STM32N6570-DK_GettingStarted_ImageClassification.hex). So i flashed the files as described in the README, set the BOOT pins to flash mode and did a power cycle.The result ist that the upper LED (of the two LEDs bottom left) is always red (which is correct i think) but the bottom LED varies from red (failure/error i suppose) to toggling green orange (which means loading the application?).In the case that the bottom LED is red the LCD never changes, but in the instance of the LED toggling the LCD lights up for a split second and turns off r
Hi - I'm attempting to run my first NN on an STM32H5. This is a low frame rate, low resolution vision application.When loading NN into CubeMX, the Analyze results and graph are always the same - just the final dense layer. In case it matters, I train the network using tensorflow/keras and have tried multiple variations with similar results. Also, I have updated all tools and libraries within the last few weeks.Below is my network_generated_report.txt. It shows the param/size and macc for all layers but the summary is just the final layer.Why might this be and how do I get the complete results? Perhaps I am deeply misunderstanding something! ST Edge AI Core v2.1.0-20194 329b0e98d Created date : 2025-06-05 12:55:47 Parameters : generate --target stm32h5 --name network -m C:/AI/line_intensity_model.h5 --compression none --verbosity 1 --workspace C:/Users/me/AppData/Local/Temp/mxAI_workspace1431250019060016128019384163178723 --output C:/Users/me/.stm32cubemx/network_output Exec/repor
Does this demo is open source? Where can I find the demo source code?
Hi everyone, I am trying to deploy a pose detection model on stm32n6570-dk board but I am getting the following error. (st_zoo) kartikkhandewal@ATL-HPZG14-99:~/stm32packages/stm32ai-modelzoo-services/pose_estimation/src$ python3 stm32ai_main.py --config-path ./config_file_examples --config-name deployment_n6_yolo_mpe_config.yaml WARNING: All log messages before absl::InitializeLog() is called are written to STDERR E0000 00:00:1740729082.336274 136562 cuda_dnn.cc:8310] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered E0000 00:00:1740729082.339482 136562 cuda_blas.cc:1418] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered [WARNING] The usable GPU memory is unlimited. Please consider setting the 'gpu_memory_limit' attribute in the 'general' section of your configuration file. [INFO] : Running `deployment` operation mode [INFO] : The random
Hello. I am a newbie who is experiencing embedded.I recently got the stm32h573i-dk board and I am trying to upload an AI inference model to the board. The inference model is a simple test model that predicts the XOR value.I created a project in STM32CubeIDE using ST Edge AI Developer Cloud and tested the basic user_led and UART communication. Then, I expanded x-cube-ai to create network.c and network.h files, but I confirmed that many errors occurred.I am not writing this article to find a way to solve the errors. I just wanted to check if the procedure for applying the AI model to the stm32h5 board is correct. I would like to get a simple comment if this is the right way to proceed or if there is something I missed.They say that you can see as much as you know, but I am a newbie, so I don't know what to ask. If there is any study material on how to apply the AI model to the stm32h5 board, please recommend it.This article was written with the help of a translator, so I'm not sure i
Hi, I have successfully uploaded a model onto my STM32N6 disco board and the detections seem to be correct. Where would the actual main code be located where for example the input of the model as well as the output of the model and the output to the screen be?I am using the modelzoo services github repo:https://github.com/STMicroelectronics/stm32ai-modelzoo-servicesSomething like:detections = model(jpeg);print(detections);extract_coordinates(detections);and so on...thanks
I am a newbie with STM32N6570-DK.My target is to deploy AI model on this board. Which software do I need to install to start with STM32N6570-DK? I means that all softwares.Thank you.
Hi everyone,I’m currently working on a project to detect and decode barcodes. So far, I’ve trained a st_yolox model and successfully deployed it on the board for detection.Now, for the decoding part, I have an algorithm that works perfectly on my PC. I would like to deploy this algorithm on the board and was wondering if it’s possible to use the NPU to accelerate the decoding process.Until now, I’ve only seen examples of deep learning models being accelerated using the NPU. Are there any examples or documentation showing how a general algorithm (non-DL based) can leverage the NPU?Thanks.
Hi everyone,I encountered problems when deploying the neural network using STM32N6570-DK.I was deploying my model to the STM32N6570-DK development board according to the routine, but found that the code file obtained by optimizing the model using the Stedg-AI web version did not contain the hex file, that is, network_data.hex under the Binary file of any routine folder. Without this file, I cannot complete the deployment of the neural network according to the steps of the routine.I attempted to solve this problem by downloading the ST EdgeAI software version, but for the downloaded ST EdgeAI Core 2.1.0, I couldn't find its shortcut to open it. I thought it was a version issue and tried to download ST EdgeAI Core 2.0.0, but got stuck at the step of ST Neural-ART package. I clicked on the download link of ST Neural-ART package on the installation interface. However, it returned to the download interface of ST EdgeAI Core. The download resources of the ST Neural-ART package could not be f
I wanted to import a trained onnx into cuba.AI, but an error occurred. I have no idea where the problem lies. After troubleshooting, it was initially determined that there was an issue with the lstm part, but I have no way of knowing exactly where the problem is. I'm looking forward to your explanation. Here is my model codeimport torchfrom torch import nnimport torch.nn.functional as F# from torchsummary import summaryfrom torchinfo import summary## cnn extract featuresclass mfcn(nn.Module):def __init__(self:(super(mfcn, self).__init__()self.stage1 = nn.Sequential(nn.Conv1d(in_channels=1, out_channels=16, kernel_size=3, stride=1, padding=1, groups=1),nn.BatchNorm1d(16),nn.Conv1d(16, 16, 3, 1, 1, 2),nn.BatchNorm1d(16),nn.ReLU(True),nn.MaxPool1d(kernel_size=2, stride=2), # 16*320nn.Conv1d(16, 32, 3, 1, 1, 4),nn.BatchNorm1d(32),nn.ReLU(True),nn.MaxPool1d(2, 2), # 32*160nn.Conv1d(32, 64, 3, 1, 1, 8),nn.BatchNorm1d(64),nn.ReLU(True),nn.MaxPool1d(2, 2), # 64*80nn.Conv1d(64, 128, 3, 1, 1, 8)
Hi All,The STM32N6 series is still very new to me. I have some experience with other low power NPU enabled devices, however the main problem faced is the support of ultra-low lux camera modules; gaining access to datasheets, register maps and application notes is pretty much impossible.I am really impressed with ST offering with the STM32N6 as well as the great libraries, etc.With the x-cube-n6-ai-h264-usb-uvc example, I see UVC is used for streaming images to a host PC. I want to do the opposite. The idea being that either frames from the stream or images are capture and stored in external RAM for inference.Is this possible? Thank you
Initially I was having issues in generating the project file for ai models because of CUBE AI withe the latest update it got fixed. But while trying to build an flash the code to the Board there was issue while flashing the code the debugger was giving output as target is not responding. for checking there was no issue with the connection or debugger I tried creating a sample example from CUBE MX and while running that one it was working fine.I have given below the screen shot of the error that i was getting.Thanks and Regards,Vinay
I was successfully programming my STM32N6 disco board until today when I got this error:Board programming failed: "Error: binary file does not exist: Debug/STM32N6570-DK_GettingStarted_ObjectDetection.bin"I am uploading quantized tflite models to the board and all the switches are correctly populated on the board. The same thing happens with on_cloud: False or TrueAny ideas?thanks
你好,近期我在使用NanoEdge AI Studio实现异常检测功能,基于三轴加速度计的数据实现。我出现了以下问题:1.我使用的最新版本5.0.2,在benchmark界面训练模型后,表格Best Library Result 中异常数据的结果为零,就是在表格的底部。但我生成代码需要的文件后运用到工程中其相似度一直输出为91%,即使我大幅度的改变加速度计的值也仍然时91%。2.在有一次训练时,表格Best Library Result 中异常数据的结果不为零了,大概为68%。我生成需要的额NanoEdge AI.h和library.a以及knowledge.h生成后运用到keil工程中发现能够正常进行学习,并且也可不学习使用knowledge.h的这个数据集进行检测相似度,结果较为明显。只是原本的异常数据其相似度对应的也为68%。3.我的疑惑在于,对应的模型训练不应该异常数据接近为零,正常数据接近一百吗,可我似乎于认为的不一样。并且同样的数据进行第一次训练的结果可能异常数据不为零,但后面几次训练后一直为零。导致的结果就是,训练结果异常数据为零的模型,在使用官方给的先进行学习一段时间,在进行异常检测运行效果是错误的,相似度一直输出为一个固定值,比如91%。并且运行不事先学习,利用knowledge这个数组作为学习数据,运行结果也是不正确的,但是训练结果异常数据不为零的就可正常运行。但这个结果也不是一直会出现的,偶尔出现。我的数据上传使用的是USB串口上传(USB转TTL、或者蓝牙串口) 以下为代码(省略了部分)#include “NanoEdgeAI.h”#include “knowledge.h”#define LEARNING_ITERATIONS 30浮点数 input_user_buffer[DATA_INPUT_USER * AXIS_NUMBER];输入值的缓冲区无效 SystemClock_Config(void);静态 void MPU_Config(void);void fill_buffer(float input_buffer[]){/* 用户开始 */float acc_mg[3]; // 临时存储单个样本的X/Y/Z数据uint16_t samples_collected = 0;uint32_t last_tick = HAL_
Hello,I am working on a NUCLEO-N657X0-Q and i'm trying to fill the runtime input buffer of an NPU accelerated miniresnet model with random data in order to verify that it is working, however, the buffer remains unaffected and filled with zeroes.Do I have to do something different before/after filling (like invalidate some kind of cache?)I am attaching a snippet of the code and the UART output aswell as the model analysis text.I am using the external flash to store the model @ 0x71000000 (n6-extflash profile). The npuRAM5 (0x342e0000) is also used and project is setup as LRun.The base code was generated by STM32CubeMX GUI ThanksTasos
Hi,I'm trying to test a model(Shallownet+LSTM) on the STM32F4, but the tool fails during analysis:ST Edge AI Core v2.1.0-20194TOOL ERROR: list index out of range I ran the tool with debug enabled: export DEBUG=2And I observed in the log:Created input transpose layer: _lstm_LSTM_output_0_forward_in_transposeError in execution of pass type(OPT_TRANSPOSE_LSTM) id(80) The model and code are included in the attachment.How can I fix the issue ?Thanks,Joker_Han
Hello, I'm writing my theorical part of my Bachelor Thesis. I'm interesed in whether two output ports from two Processing Unit (for example) the Convolution accelerators can be connected to one input port of the POOL, is it possible to do this through the Stream switch? So that we can have two CAxs to work together parallel for the pooling. From the documentation I cant find a specific answer.And what is the reason here to divide the convolution accelerators as CA0 and CA1?????????????????????????????????????????????????? is that because the can work parallel for one pooling as I mentioned before ????????????????????????Thanks a lot in advance, I really need an answer
i followed the instructions or steps listed out in below ticket Which software do I need to install to start with STM32N6570-DK?Currently I am struck at this error please help me.Regards,ASR
Hi everyone,I’m currently working with the MB1854 ST Camera module, which uses the Sony IMX335 CMOS sensor. I’ve managed to find the datasheet for this sensor.At this point, I’ve successfully changed the image resolution from the default 2592x1944 to 256x256 using the window cropping mode. However, I’m currently stuck on how to change the frame rate.On page 56 of the datasheet, it mentions:I know the value of V_TTL, but I’m confused about the value of the 1H period. There is no "Operating Mode" table in the datasheet. I did find the Read Drive Mode table, which includes values for the 1H period, but they do not apply to my mode (Window Cropping) and appear to be fixed.Additionally, there’s no mention of a formula for calculating this value.Also, this datasheet appears to be version 0.2, which was last updated in 2017. I'm not sure if this is even the latest version. I tried to find a forum specifically for Sony camera sensors but couldn't find one.Could someone please help clarify this
Hello, we encountered the following issues when deploying a binary classification model using the ll library. Do you have any solutions?1. The output data of the AI model deployed according to the example (without quantization) does not match the data calculated locally on the PC (before softmax).2. We compared the model calculation results on the PC with those on the STM32N6 layer by layer and found that the mismatch in the calculation results before and after reshape (in the underlying code module of DMA to NPU) led to the mismatch in the final output results. The calculation results of other layers such as conv, maxpool, and relu were all correct.3. How should we solve the model deployment?
Hello! I plan to use NanoEdge AI Studio for sound anomaly detection, but currently I have some confusion: the resources of embedded chips are limited, and the amount of sound signal sampling data is relatively large. Can online learning be implemented on hardware. If feasible, the chip should not be able to learn much sample size. Can this ensure high accuracy. Can you help me solve the problem.Thank you.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.