cancel
Showing results for 
Search instead for 
Did you mean: 

ST SSD Mobilenet v1 return an IRQ error

Creator
Associate II

Hi,

 

When changing from a Tiny YOLOv2 model to ST SSD Mobilenet v1 I strangely got the following error:

Bus interface interrupt
BUSIF0 ERR: 0x10
BUSIF1 ERR: 0x0
ATON_STD_IRQHandler()@763: irqs=0xlx
assertion "0" failed: file "Y:/VM/stm-workspace/fall-guard-v2.0.0/Lib/AI_Runtime/Npu/ll_aton/ll_aton_runtime.c", line 767, function: __LL_ATON_RT_IrqErr

 

I tried other models but only Mobilenet v1 always returns this error. Is there a specific config required?

 

Thanks,

Gino

14 REPLIES 14

Hello

Thanks for the input, and the tests you did.

Thanks also for the full project.

  • It looks like the "network.c" in this project has been generated with version 2.0 (different from your github version) but you have updated the libs/runtime files: so this is also unlikely to work for the same reasons as above (this time, the "network.c" is too old vs. the libs & runtime that are too new) -> don't mix versions or expect issues.
  • This project provided is missing some files, could you please update and give a project that compiles so we can reproduce the issue ? (you can trash the STM32CubeIDE/Debug and Model\* (except the network.c), binary * (except the .bin) to make the archive smaller)
  • Is it possible to reduce your example to something that does not need a camera to be connected to the board ? but just runs an inference on the NPU (input = what's in the memory at the time of inference), so we can debug the AI part alone ? thanks.

Thanks.

GRATT.2
ST Employee

Hi @Creator

I successfully ran st_ssd_mobilenet_v1_025_192_int8.tflite on the people detection project. Please find attached the patch allowing for such support. 

Steps: 

  1. In the Model folder, launch the generate-n6-model.sh script. 
  2. Flash the weights (network_data.hex) using STM32CubeProgrammer. 
  3. Build the app by running make in the root folder. 
  4. Put the board in dev mode and load build/Project.elf using ST-LINK_gdbserver

Note: make sure to use the last stedgeai release (v2.1). 

Guillaume

Creator
Associate II

Hi @GRATT.2 ,

With this latest version of people dettection project I was also able to run my model and am able to detect a fall. 

I've uploaded a working version here: https://www.swisstransfer.com/d/5a548741-4d5a-43eb-9cf1-b3fc665dd493

I am still not sure what went wrong in my project because I kind of did everyting that was stated in the patch file. This version of people detect had extra buffer definitions

#define NN_OUT_NB 3

#define NN_OUT0_SIZE (6825 * 3 * 4)

#define NN_OUT1_SIZE (6825 * 4 * 4)

#define NN_OUT2_SIZE (6825 * 4 * 4)

==> Can this be related?

 

Thanks for the solution, from this point I can continue my fall detection project.

Grts,

Gino

Hi, @GRATT.2 , @Julian E. , @SlothGrill ,

Since the people detection project V2.0.0 is based on freertos and the nxduo library is not compatible with freertos, I've looked further into the bug.

The root cause seemed to be in the nn_thread_fct function and how the output buffer is managed.

Now I have a working version using threadx of my project. It's updated on github: ginodecock/fall-guard-od: Detect a fall by using object detection using the stm32n6570-dk board

Can you guys check within ST that the people detection project V1.0.0 also can get this fix?

 

Thanks,

Gino

 

 

 

 

Hello @Creator,

 

A patch was published in the last version of the people detection project V2.0.0 that should fix.

 

Have a good day,

Julian


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.