Arm Mbed OS support forum

Unable to read multiple registers from on board lsm6dsl sensor of B-L47E-IOT01A1 using mbed driver api


I am trying to read data from the lsm6dsl sensor on B-L475E-IOT01A board using i2c api of mbed-os
I write the register address first and then read it using the write and read functions of I2C.cpp in mbed-os.

I am able to read all the registers individually. But when I try to read multiple registers using multibyte read, I get the first register value repeated ( even though by default the auto increment register value is 1 for the sensor).

There is an mbed example to read on board sensors that uses the same sensor configurations but using a different HAL i2c function instead of the mbed api. There it is possible to read multiple registers from the same sensor.

I wanted to know if there is anything extra required to be taken care of while using mbed driver i2c apis to read multiple registers of the sensor with multibyte read
Kindly help me this.
Thanks in advance!