Skip to main content
MKaas.1
Associate II
December 16, 2021
Solved

Are there any application notes available for LSM9DS1 device? I would at least need information on running self test and calibration routines. These should preferally work with Linux IIO driver, but also raw I2C or SPI communication routines could be

  • December 16, 2021
  • 7 replies
  • 2564 views

..

This topic has been closed for replies.
Best answer by MKaas.1

Hi @Eleon BORLINI​ 

Thank you for your references, i'll have a look on them. Self test procedure seemed quite good as a start point. I just need to convert register writes to I2C or SPI transactions. I also found pretty nicely written tutorial for 9-Dof IMU calibration: https://makersportal.com/blog/calibration-of-an-inertial-measurement-unit-imu-with-raspberry-pi-part-ii#background

Thanks,

-Matti

7 replies

Peter BENSCH
ST Technical Moderator
December 17, 2021

Have you ever looked in the Github repository, where you can find Linux IIO drivers for MEMS sensors and other information?

Regards

/Peter

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.
MKaas.1
MKaas.1Author
Associate II
December 17, 2021

Ihave visited there and I have not found any application note there. In fact, IIO driver is for older kernel that I need to use (5.4.0). It does not matter as there seems to be IIO driver support for LSM9DS1-imu device int Linux 5.4.0. Everything seems there pretty clear apart from device tree set-up.

MKaas.1
MKaas.1Author
Associate II
December 17, 2021

So, I have not found any application notes for calibration.

Eleon BORLINI
ST Employee
December 20, 2021

Hi @MKaas.1​ ,

on top of Peter suggestions, you can check the lsm9ds1_self_test.c file on the Github repository of the C drivers, where the self test procedure is described (and implemented in C code).

Unfortunately, no app note for the LSM9DS1 is available, only the datasheet.

For the device calibration, I suggest you to take inspirations from the X-CUBE-MEMS1 libraries, especially the MotionGC gyroscope calibration and the MotionAC accelerometer calibration ones. They are designed to run on STM32, so not sure they can fit your needs, but it can be a starting point .

-Eleon

MKaas.1
MKaas.1AuthorBest answer
Associate II
December 20, 2021

Hi @Eleon BORLINI​ 

Thank you for your references, i'll have a look on them. Self test procedure seemed quite good as a start point. I just need to convert register writes to I2C or SPI transactions. I also found pretty nicely written tutorial for 9-Dof IMU calibration: https://makersportal.com/blog/calibration-of-an-inertial-measurement-unit-imu-with-raspberry-pi-part-ii#background

Thanks,

-Matti

Eleon BORLINI
ST Employee
December 20, 2021

Thank you Matti for sharing this tutorial! Not an ST sensor but very well done :)

-Eleon

MKaas.1
MKaas.1Author
Associate II
December 21, 2021

Eleon,

One more calibration story: https://ozzmaker.com/compass3/.

Now this is ST sensor. In fact, pretty close to LSM9DS1. Unfortunately only magnetometer is calibrated this time.

-Matti