-
Notifications
You must be signed in to change notification settings - Fork 1
Description
There are already examples for reading/handling interrupts of the built-in accelerometer. However, when trying to utilize the MLC core functionality I have trouble in fully utilizing the writing, interrupt handling and reading MLC values (from registers like 0x70). For writing a MLC I use (for example): lsm6dsv16x_vibration_monitoring.h. I handle this by doing things such as:
ProgramPointer = (ucf_line_t *)lsm6dsv16x_vibration_monitoring;
TotalNumberOfLine = sizeof(lsm6dsv16x_vibration_monitoring) / sizeof(ucf_line_t);
for (LineCounter = 0; LineCounter < TotalNumberOfLine; LineCounter++) { myLSM.writeRegisterRegion(ProgramPointer[LineCounter].address, &ProgramPointer[LineCounter].data); }
Sadly, the problem for me is with the reading of the MLC_SRC. Using myLSM.readRegisterRegion(0x70, &mlc_out); does not work. Using the SparkFun_LSM6DSV16X module, I notice I have a hard time reading values such as lsm6dsv16x_mlc_status_mainpage_t and lsm6dsv16x_mlc_out_t. When checking the package for LSM6DSV16X from stm32duino, the use of the func: sensor.Get_MLC_Output(&mlc_out) is exactly something I need.
Are there any plans to implement and include examples for the MLC?