cancel
Showing results for 
Search instead for 
Did you mean: 

Developer Cloud network.c Version Test - STM32N6570-DK

Duckpaddle
Associate III

Yesterday I built a model from a 256x256x3 .tflite. The Cloud produced a zip file that included a  network_atonbuf.xSPI2.raw file. This file is about 27KB in size.  

What triggered the change from the network_data files?

The network.c knew about this .raw file and pointed at it 0x71000000.  That's all good. I just rename it to .bin and loadi it with CubeProgrammer.  But what I don't understand is the test for version: 

#if LL_ATON_VERSION_MAJOR != 1 || LL_ATON_VERSION_MINOR != 1 || LL_ATON_VERSION_MICRO != 3 || LL_ATON_VERSION_DEV != 262
#  error "Possible mismatch in ll_aton library used"
#endif

Working with the STM32N6-GettingStarted-ObjectDetection as my base this version test failed in Make.  I just commented it out. 

Am I going to have a problem?

 

1 ACCEPTED SOLUTION

Accepted Solutions
hamitiya
ST Employee

Hello @Duckpaddle 

By default, when using ST Neural-ART, weights are produced as "raw" (binary) files instead of .c files. They need to be loaded via STM32CubeProgrammer at the specified address (here, 0x7100_0000).

In order to change this behavior, you can do it by editing the memory pools description:

- in C:\ST\STEdgeAI\4.0\Utilities\windows\targets\stm32\resources\NPU\STM32N6xx

- For XSPI2, replace FORMAT_RAW with FORMAT_C

 

Code you are refering to is in order to prevent mismatch between Neural-ART Library in your project and the one used to generate the code.

If you have mismatch, it means you used a different version of ST Edge AI Core.

LL_ATON 1.1.3.262 refers to ST Edge AI Core 4.0.0-20500 (latest available)

 

Best regards,

Yanis


In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

View solution in original post

2 REPLIES 2
hamitiya
ST Employee

Hello @Duckpaddle 

By default, when using ST Neural-ART, weights are produced as "raw" (binary) files instead of .c files. They need to be loaded via STM32CubeProgrammer at the specified address (here, 0x7100_0000).

In order to change this behavior, you can do it by editing the memory pools description:

- in C:\ST\STEdgeAI\4.0\Utilities\windows\targets\stm32\resources\NPU\STM32N6xx

- For XSPI2, replace FORMAT_RAW with FORMAT_C

 

Code you are refering to is in order to prevent mismatch between Neural-ART Library in your project and the one used to generate the code.

If you have mismatch, it means you used a different version of ST Edge AI Core.

LL_ATON 1.1.3.262 refers to ST Edge AI Core 4.0.0-20500 (latest available)

 

Best regards,

Yanis


In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
Duckpaddle
Associate III

For the other people that might have this issue and me after I forget,

I removed the comment block around the version test in network.c

I deleted the ./Middlewares/stedgeai-lib/Npu, then I copied my new ST Cloud subdirectory  into the Npu subdirectory under ./Middlewares/stedgeai-lib/Npu 

After a clean and make it worked great.