cancel
Showing results for 
Search instead for 
Did you mean: 

Can we integrate LSM6DSO16IS (IMU) with MCUs and application processors other than STM32 ?

Amith_lal
Associate III

Do we need to use stm32 ODE hardware every time fro programming the ISPU?. If no, how can i flash the program in to ISPU?. Since ISPU have 40 kB RAM do we need to write program every time in to RAM while booting ?

https://www.st.com/content/st_com/en/campaigns/ispu-ai-in-sensors.html

1 ACCEPTED SOLUTION

Accepted Solutions
Federica Bossi
ST Employee

Hi @Amith_lal ,

Yes, you can use another MCU and you can also not use Unicleo but use the .h file which is a C header file that can be included in any firmware, you have to scroll through the array contained in the header file and perform the operations described.

You can refer to the example on github, in particular to this snippet:

  // load device configuration
  for (uint32_t i = 0; i < sizeof(ispu_conf) / sizeof(ucf_line_ext_t); i++) {
    if (ispu_conf[i].op == MEMS_UCF_OP_WRITE)
      write(ispu_conf[i].address, ispu_conf[i].data); // write to device
    else if (ispu_conf[i].op == MEMS_UCF_OP_DELAY)
      delay(ispu_conf[i].data); // delay in ms
  }
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

3 REPLIES 3
Federica Bossi
ST Employee

Hi @Amith_lal ,

Welcome to ST Community!

ISPU has to be reprogrammed every time the power supply is switched off. programming, you can do with any microcontroller.
For testing, the fastest thing is to use a nucleo board with the firmware in the X-CUBE-ISPU package, then use Unicleo to load the ucf.

This getting started video could be helpful for you 🙂

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.

How can I program using other mcu is there any example for that and also what about flashing in to ISPU without software .

Federica Bossi
ST Employee

Hi @Amith_lal ,

Yes, you can use another MCU and you can also not use Unicleo but use the .h file which is a C header file that can be included in any firmware, you have to scroll through the array contained in the header file and perform the operations described.

You can refer to the example on github, in particular to this snippet:

  // load device configuration
  for (uint32_t i = 0; i < sizeof(ispu_conf) / sizeof(ucf_line_ext_t); i++) {
    if (ispu_conf[i].op == MEMS_UCF_OP_WRITE)
      write(ispu_conf[i].address, ispu_conf[i].data); // write to device
    else if (ispu_conf[i].op == MEMS_UCF_OP_DELAY)
      delay(ispu_conf[i].data); // delay in ms
  }
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.