2025-11-15 3:05 AM
Dear ST
| Board | STM32N6570-DK |
| OS | Ubuntu 24.04 LTS |
| Python | Conda, Python 3.10 |
| STM32AI Model Zoo | stm32ai-modelzoo-services/object_detection |
| Operation mode | deployment |
| Model | yolov8n_256_quant_pc_uf_od_coco-person-st.tflite |
| STM32CubeIDE | 1.19.0 |
| ST Edge AI Core / STM32CubeAI | 10.2.0 |
| Local tool | /opt/ST/STEdgeAI/2.2/Utilities/linux/stedgeai |
I am using the STM32AI Model Zoo deployment workflow on Linux to deploy a YOLOv8 object detection model to the STM32N6570-DK.
The deployment pipeline reaches the final flashing stage and aborts because no ST-LINK device is connected, even though all previous steps (Neural-Art, code generation, project patching) completed successfully.
Even when the board is not connected, deployment should still:
Finish building the STM32CubeIDE project
Export the final firmware (network_data.hex / *.bin)
This is necessary for CI pipelines and automated batch deployments.
Because board programming fails due to no ST-LINK detected, the deployment pipeline terminates with an error, and no network_data.hex is produced, even though the Neural-Art and code-gen outputs are valid.
C-project patching is confirmed to be correct:
→ Deployment stops right before final firmware generation.
I manually generate a hex file from network_atonbuf.xSPI2.raw:
Flashing the resulting hex succeeds, but the display stays completely black (no UI, no bounding boxes, no inference output).
This suggests the manual hex only contains the model blob, not the complete firmware built by the deployment process.
Deployment performs more than just packing network_atonbuf.xSPI2.raw:
| AToN compiled blob | ✔ |
| application C patching | ✔ |
| app_config.h update | ✔ |
| complete CubeIDE project rebuild | ✔ |
| UI overlay + inference loop | ✔ |
| ST-LINK programming | should be optional |
Since the deployment aborts before the final firmware build, only the raw model blob is flashed, resulting in a black screen.
How can we complete the deployment and generate the final firmware (.hex/.bin) without connecting the STM32N6570-DK?
Is there a configuration flag available, e.g.:
skip_flasher: true
build_only: true
generate_hex_without_flashing: true
If the current toolchain does not support this yet, what is the recommended CI-friendly workflow for offline firmware generation?
If the intended solution is “build manually in CubeIDE”, could ST provide documentation on how to:
update the project after Neural-Art output
trigger a full firmware rebuild
avoid black-screen output after flashing