2025-08-16 1:48 AM - last edited on 2025-08-18 6:59 AM by Julian E.
Hi @Julian E.
While following along the tutorial:
How to build an AI application from scratch on the... - STMicroelectronics Community
after selecting the x-cube-ai package a described, I see that the default is enabled for fsbl and I cannot change that to application in the UI. Tried deselecting fsbl first, but it doesn't work.
Then I downloaded your ioc and there it is set to applciation - but this cannot be changed to anything else (for example to fsbl) - basically the checkboxes cannot be changed.
Have you seen this?
What am I doing wrong?
Also, I get this warning:
I have installed all the firmwares by first downloading as zip and then installing from local in CubeMX
I have downloaded v1.1.1, v1.1.0 and v1.2.0 as well as the patch file from ST website and still get the same warning
Update 17/08/25:
With the downloaded ioc file, I see some clock config errors as:
Is this okay?
Also - please explain what should be the input to validation dataset for the AI suite UI.
I went ahead and generated code anyway, even though there were some warning about wrong configurations
I also keep getting these from the AI window
- NPU not-selectable in the RIF tab (using the DK_tuto.ioc)
Best Regards
2025-08-18 7:01 AM
Hello @SM19X,
I see that you updated your message, what is your exact current status?
The last issue, NPU not selectable may not be blocking.
I will try to replicate the other things you describe.
In the meantime, can you tell me which version of each tool you are using. Thanks
Have a good day,
Julian
2025-08-19 1:18 AM
Hi @Julian E. ,
The current status is that there are several steps not matching with the demo and I don't know how to proceed.
I have tried to compile every step and all possible details into a single document for your easy reference.
Please see the attached document detailing this.
I am trying on a Linux Mint 22 OS.
Best Regards
2025-08-19 2:17 AM
Hello @SM19X,
Thank you for your detailed document.
I will look for a linux pc and replicate the process.
I'll keep you updated.
Have a good day,
Julian
2025-08-20 6:54 AM - edited 2025-08-20 6:54 AM
Hello @SM19X,
I replicated the tutorial from zero on a fresh linux install.
Here are my comments:
the first error just tells that the cube_FW_n6_v1.1.1 was not found. It is just that the path in my ioc and your pc are not compatible. By default, MX should find the correct path. You can edit it here:
I suggest using the version 1.1.1 as it was tested.
This seems to be an error due to linux:
please install tk using the following command:
sudo apt-get install tk
https://community.st.com/t5/edge-ai/error-no-quot-wish-quot-detected-with-x-cube-ai/td-p/291734
For this, it seems that MX on windows and Linux does not display the same thing.
The clock here is correcly configured.
You can try to ignore this an continue (let me know if it worked please)
I tested to click "resolve Clock issues" after configuring the clock as explained in the tutorial and the final code worked (it is probably slower as the MCU and NPU frequency were set lower in my case).
This RIF issue can be ignored. Depending on the MX/IDE version, and the cube_FW_N6 version, the behavior change, sometime it is checked, sometime no... I don't really know.
For this, if the clock is an issue, try to click resolve clock issue as I said previously.
For the RCC issue, the Power Regulator Voltage can be set back to 1 automatically by MX. Change it back to 0
And finally, the wish error should have been fixed with the install of tk.
Please first try all this and tell me what you get. The code difference you pointed in your report are probably the result of the previously discussed errors.
Have a good day,
Julian
2025-08-28 8:01 AM
Hi @Julian E. ,
Thanks for the help.
Some issues I observe outright:
1) The project name cannot be changed - there is a cursor but does not allow changing the name
2) The firmware version reverts back to v1.2.0 automatically on Ctrl + S to save. I tried changing the Firmware Package Name and Version but this does not allow any change as well.
2025-08-28 8:08 AM
Hello @SM19X,
I have no idea, you may try to ask the forum board for embedded tools.
As long as you select the Firmaware package and click generate, I think this should do. Even if you cannot save.
Have a good day,
Julian
2025-08-28 8:28 AM - edited 2025-08-28 8:45 AM
I tried editing the ioc directly:
Generated code and tried building the FSBL and application. Get this error:
../X-CUBE-AI/App/app_x-cube-ai.c:59:10: fatal error: .h: No such file or directory
59 | #include ".h"
| ^~~~
compilation terminated.
make: *** [X-CUBE-AI/App/subdir.mk:28: X-CUBE-AI/App/app_x-cube-ai.o] Error 1
make: *** Waiting for unfinished jobs....
"make -j4 all" terminated with exit code 2. Build might be incomplete.
Will now try using reverting the manual ioc edit and just use the v1.2.0 firmware
---------------
Even more build error:
17:40:19 **** Clean-only build of configuration Debug for project DK_tuto_Appli ****
make -j4 clean
rm -rf ./X-CUBE-AI/App/app_x-cube-ai.cyclo ./X-CUBE-AI/App/app_x-cube-ai.d ./X-CUBE-AI/App/app_x-cube-ai.o ./X-CUBE-AI/App/app_x-cube-ai.su ./X-CUBE-AI/App/network.cyclo ./X-CUBE-AI/App/network.d ./X-CUBE-AI/App/network.o ./X-CUBE-AI/App/network.su ./X-CUBE-AI/App/network_data.cyclo ./X-CUBE-AI/App/network_data.d ./X-CUBE-AI/App/network_data.o ./X-CUBE-AI/App/network_data.su ./X-CUBE-AI/App/network_data_params.cyclo ./X-CUBE-AI/App/network_data_params.d ./X-CUBE-AI/App/network_data_params.o ./X-CUBE-AI/App/network_data_params.su
rm -rf ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma_ex.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma_ex.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma_ex.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma_ex.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_exti.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_exti.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_exti.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_exti.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_gpio.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_gpio.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_gpio.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_gpio.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_icache.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_icache.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_icache.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_icache.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr_ex.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr_ex.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr_ex.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_pwr_ex.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_ramcfg.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_ramcfg.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_ramcfg.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_ramcfg.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc_ex.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc_ex.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc_ex.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rcc_ex.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rif.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rif.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rif.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_rif.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart_ex.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart_ex.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart_ex.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_uart_ex.su ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_xspi.cyclo ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_xspi.d ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_xspi.o ./Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_xspi.su
rm -rf ./Core/Startup/startup_stm32n657x0hxq.d ./Core/Startup/startup_stm32n657x0hxq.o
rm -rf ./Core/Src/main.cyclo ./Core/Src/main.d ./Core/Src/main.o ./Core/Src/main.su ./Core/Src/secure_nsc.cyclo ./Core/Src/secure_nsc.d ./Core/Src/secure_nsc.o ./Core/Src/secure_nsc.su ./Core/Src/stm32n6xx_hal_msp.cyclo ./Core/Src/stm32n6xx_hal_msp.d ./Core/Src/stm32n6xx_hal_msp.o ./Core/Src/stm32n6xx_hal_msp.su ./Core/Src/stm32n6xx_it.cyclo ./Core/Src/stm32n6xx_it.d ./Core/Src/stm32n6xx_it.o ./Core/Src/stm32n6xx_it.su ./Core/Src/syscalls.cyclo ./Core/Src/syscalls.d ./Core/Src/syscalls.o ./Core/Src/syscalls.su ./Core/Src/sysmem.cyclo ./Core/Src/sysmem.d ./Core/Src/sysmem.o ./Core/Src/sysmem.su ./Core/Src/system_stm32n6xx_s.cyclo ./Core/Src/system_stm32n6xx_s.d ./Core/Src/system_stm32n6xx_s.o ./Core/Src/system_stm32n6xx_s.su
rm -rf DK_tuto_Appli.bin DK_tuto_Appli.elf DK_tuto_Appli.list DK_tuto_Appli.map default.size.stdout
17:40:19 Build Finished. 0 errors, 0 warnings. (took 89ms)
17:40:19 **** Build of configuration Debug for project DK_tuto_Appli ****
make -j4 all
arm-none-eabi-gcc "../X-CUBE-AI/App/app_x-cube-ai.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"X-CUBE-AI/App/app_x-cube-ai.d" -MT"X-CUBE-AI/App/app_x-cube-ai.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "X-CUBE-AI/App/app_x-cube-ai.o"
arm-none-eabi-gcc "../X-CUBE-AI/App/network.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"X-CUBE-AI/App/network.d" -MT"X-CUBE-AI/App/network.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "X-CUBE-AI/App/network.o"
arm-none-eabi-gcc "../X-CUBE-AI/App/network_data.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"X-CUBE-AI/App/network_data.d" -MT"X-CUBE-AI/App/network_data.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "X-CUBE-AI/App/network_data.o"
arm-none-eabi-gcc "../X-CUBE-AI/App/network_data_params.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"X-CUBE-AI/App/network_data_params.d" -MT"X-CUBE-AI/App/network_data_params.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "X-CUBE-AI/App/network_data_params.o"
arm-none-eabi-gcc "/home/sambit/Documents/cube_mx_ws2/Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.d" -MT"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal.o"
arm-none-eabi-gcc "/home/sambit/Documents/cube_mx_ws2/Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.d" -MT"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_bsec.o"
arm-none-eabi-gcc "/home/sambit/Documents/cube_mx_ws2/Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.d" -MT"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cacheaxi.o"
../X-CUBE-AI/App/app_x-cube-ai.c:68:31: error: 'AI__IN_1_SIZE_BYTES' undeclared here (not in a function); did you mean 'AI_NETWORK_IN_1_SIZE_BYTES'?
68 | AI_ALIGNED(4) ai_i8 data_in_1[AI__IN_1_SIZE_BYTES];
| ^~~~~~~~~~~~~~~~~~~
| AI_NETWORK_IN_1_SIZE_BYTES
../X-CUBE-AI/App/app_x-cube-ai.c:69:17: error: 'AI__IN_NUM' undeclared here (not in a function)
69 | ai_i8* data_ins[AI__IN_NUM] = {
| ^~~~~~~~~~
../X-CUBE-AI/App/app_x-cube-ai.c:79:32: error: 'AI__OUT_1_SIZE_BYTES' undeclared here (not in a function); did you mean 'AI_NETWORK_OUT_1_SIZE_BYTES'?
79 | AI_ALIGNED(4) ai_i8 data_out_1[AI__OUT_1_SIZE_BYTES];
| ^~~~~~~~~~~~~~~~~~~~
| AI_NETWORK_OUT_1_SIZE_BYTES
../X-CUBE-AI/App/app_x-cube-ai.c:80:18: error: 'AI__OUT_NUM' undeclared here (not in a function)
80 | ai_i8* data_outs[AI__OUT_NUM] = {
| ^~~~~~~~~~~
../X-CUBE-AI/App/app_x-cube-ai.c:99:19: error: expected identifier or '(' before '=' token
99 | static ai_handle = AI_HANDLE_NULL;
| ^
../X-CUBE-AI/App/app_x-cube-ai.c: In function 'ai_boostrap':
../X-CUBE-AI/App/app_x-cube-ai.c:122:9: warning: implicit declaration of function 'ai__create_and_init'; did you mean 'ai_network_create_and_init'? [-Wimplicit-function-declaration]
122 | err = ai__create_and_init(&, act_addr, NULL);
| ^~~~~~~~~~~~~~~~~~~
| ai_network_create_and_init
../X-CUBE-AI/App/app_x-cube-ai.c:122:30: error: expected expression before ',' token
122 | err = ai__create_and_init(&, act_addr, NULL);
| ^
../X-CUBE-AI/App/app_x-cube-ai.c:128:14: warning: implicit declaration of function 'ai__inputs_get'; did you mean 'ai_network_inputs_get'? [-Wimplicit-function-declaration]
128 | ai_input = ai__inputs_get(, NULL);
| ^~~~~~~~~~~~~~
| ai_network_inputs_get
arm-none-eabi-gcc "/home/sambit/Documents/cube_mx_ws2/Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.d" -MT"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_cortex.o"
../X-CUBE-AI/App/app_x-cube-ai.c:128:29: error: expected expression before ',' token
128 | ai_input = ai__inputs_get(, NULL);
| ^
arm-none-eabi-gcc "/home/sambit/Documents/cube_mx_ws2/Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.c" -mcpu=cortex-m55 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32N657xx -c -I../X-CUBE-AI/App -I../X-CUBE-AI -I../Core/Inc -I../../Secure_nsclib -I../../Middlewares/ST/AI/Inc -I../../Drivers/STM32N6xx_HAL_Driver/Inc -I../../Drivers/CMSIS/Device/ST/STM32N6xx/Include -I../../Drivers/STM32N6xx_HAL_Driver/Inc/Legacy -I../../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -mcmse -MMD -MP -MF"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.d" -MT"Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.o" --specs=nano.specs -mfpu=fpv5-d16 -mfloat-abi=hard -mthumb -o "Drivers/STM32N6xx_HAL_Driver/Src/stm32n6xx_hal_dma.o"
../X-CUBE-AI/App/app_x-cube-ai.c:129:15: warning: implicit declaration of function 'ai__outputs_get'; did you mean 'ai_network_outputs_get'? [-Wimplicit-function-declaration]
129 | ai_output = ai__outputs_get(, NULL);
| ^~~~~~~~~~~~~~~
| ai_network_outputs_get
../X-CUBE-AI/App/app_x-cube-ai.c:129:31: error: expected expression before ',' token
129 | ai_output = ai__outputs_get(, NULL);
| ^
../X-CUBE-AI/App/app_x-cube-ai.c: In function 'ai_run':
../X-CUBE-AI/App/app_x-cube-ai.c:164:11: warning: implicit declaration of function 'ai__run'; did you mean 'ai_run'? [-Wimplicit-function-declaration]
164 | batch = ai__run(, ai_input, ai_output);
| ^~~~~~~
| ai_run
../X-CUBE-AI/App/app_x-cube-ai.c:164:19: error: expected expression before ',' token
164 | batch = ai__run(, ai_input, ai_output);
| ^
../X-CUBE-AI/App/app_x-cube-ai.c:166:16: warning: implicit declaration of function 'ai__get_error' [-Wimplicit-function-declaration]
166 | ai_log_err(ai__get_error(),
| ^~~~~~~~~~~~~
../X-CUBE-AI/App/app_x-cube-ai.c:166:16: error: incompatible type for argument 1 of 'ai_log_err'
166 | ai_log_err(ai__get_error(),
| ^~~~~~~~~~~~~~~
| |
| int
../X-CUBE-AI/App/app_x-cube-ai.c:104:39: note: expected 'ai_error' {aka 'const struct ai_error_'} but argument is of type 'int'
104 | static void ai_log_err(const ai_error err, const char *fct)
| ~~~~~~~~~~~~~~~^~~
../X-CUBE-AI/App/app_x-cube-ai.c: In function 'MX_X_CUBE_AI_Process':
../X-CUBE-AI/App/app_x-cube-ai.c:228:7: error: expected expression before ')' token
228 | if () {
| ^
make: *** [X-CUBE-AI/App/subdir.mk:28: X-CUBE-AI/App/app_x-cube-ai.o] Error 1
make: *** Waiting for unfinished jobs....
"make -j4 all" terminated with exit code 2. Build might be incomplete.
17:40:19 Build Failed. 13 errors, 5 warnings. (took 787ms)
-------------------------------
I have attached my cube ide project as a zip. Please take a look.
Please also share your cube ide project. I will also try on a windows system.
2025-09-04 7:19 AM
Hi @Julian E. ,
I can confirm that in STM32CubeMX 6.15.0 on Windows OS, at some point the clock configuration is considered invalid, and the tool insists on lowering the clocks — CPU from 800 MHz to 600 MHz, and NPU from 1000 MHz to 800 MHz.
What is the reason for this behavior? It is very very undesirable in real applications.
2025-09-04 8:15 AM
Hi all,
>I can confirm that in STM32CubeMX 6.15.0 on Windows OS, at some point the clock configuration is considered invalid, and the tool insists on lowering the clocks — CPU from 800 MHz to 600 MHz, and NPU from 1000 MHz to 800 MHz.
STM32CubeMX somehow disables the overdrive mode. The manual recovery is required.