Page 1 of 1
Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Thu Aug 22, 2024 8:53 am
by stefan.erni
Hi Ben
Would it be possible to create components for new IMU ISM330BX and LSM6DSV16BX.
Especially sensor fusion, FiFo and I2C to I3C would be interesting for me. Both IMUs support this.
ISM330BX
https://www.st.com/en/mems-and-sensors/ism330bx.html
https://www.st.com/en/evaluation-tools ... n_may2024
https://www.mouser.ch/ProductDetail/STM ... IuMC4wLjA.
LSM6DSV16BX
https://www.st.com/en/mems-and-sensors/lsm6dsv16bx.html
https://www.st.com/en/evaluation-tools/ ... 234ka.html

- 2024-08-22_09-30-10.PNG (294.69 KiB) Viewed 11290 times

- 2024-08-22_09-31-50.PNG (335.4 KiB) Viewed 11290 times
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Wed Aug 28, 2024 11:19 am
by stefan.erni
Hi Ben
Perhaps a FiFo to Uart or
FiFo to sc-card would be fast enough with an existing IMU component.
But how do I get this FiFo memory onto the uart or sd-card?
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Mon Sep 02, 2024 2:03 pm
by BenR
They look interesting.
Presumably the FIFO is seamless on the device and you can just do a stream of several reads in one go to forward onto your UART / Storage.
Still not sure I'm mentally geared up for I3C but nice to have some hardware to experiment with.
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Tue Sep 17, 2024 9:15 am
by stefan.erni
Hi Ben
I can do without I3C and FIFO.
I am interested in the fusion data yaw, pitch roll.
So I can send these values to the Appdeveloper with USB.
In this way I don't need to calculate fusion with Flowcode.
Fusion yaw, pitch roll

- 2024-09-17_10-01-35.PNG (31.97 KiB) Viewed 9598 times
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Mon Sep 30, 2024 10:40 am
by stefan.erni
Hi Ben
How are things progressing, is there anything to test?
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Wed Oct 16, 2024 10:54 am
by stefan.erni
Hi Ben
Would it be possible to create a new component LSM6 that works for different versions? Also with a name LSM6 .
There are over 40 boards with an LSM6
I found a component for the LSM6ds3 under:
FC_Comp_Source_AccelGyro_6-Axis_Grove.fcfx
I bought an LSM6ds3 and an LSM6DSV16BX board.
The LSM6ds3 works
but LSM6DSV16BX not yet.
I looked in the component source code and saw is tested on 0x69. The LSM6DSV16 has 0x71.
Can this be extended?

- 2024-10-16_11-31-28.PNG (148.39 KiB) Viewed 8103 times
from the LSM6DSV16BX.pdf

- 2024-10-16_11-06-35.PNG (47.28 KiB) Viewed 8103 times
There is also a read N register in the component, but the macro is missing in the finished component

- 2024-10-16_11-36-07.PNG (6.79 KiB) Viewed 8103 times

- 2024-10-16_11-20-15.PNG (23.7 KiB) Viewed 8103 times
Sensor both with LSM6DSV16BX and qwii:

- 2024-10-08_14-41-20.PNG (106.89 KiB) Viewed 8103 times
graphic part is nice an exist on component FC_Comp_Source_AccelGyro_6-Axis_Grove.fcfx:

- 2024-10-16_11-30-35.PNG (27.69 KiB) Viewed 8103 times
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Wed Oct 16, 2024 3:43 pm
by stefan.erni
Hi Ben
I have managed to make a component and the change it already
It works a little.
reading values with LSM6DSV16BX is working
When I'm done I'll post the component here.

- 2024-10-16_16-40-10.PNG (27.72 KiB) Viewed 8075 times
Re: Component for advanced 6-axis IMU ISM330BX and LSM6DSV16BX
Posted: Thu Oct 24, 2024 10:59 am
by stefan.erni
Hi Ben
Half precision floating-point ?
I have made progress with the LSM6
I can read and write register
This also works with read n times register.
Only there I should read an precision floating-point.
Can I do that in flowcode embedet or in App Developper?
Read fusion data:

- 2024-10-24_11-51-14.PNG (136.8 KiB) Viewed 7880 times