Hi, thanks again. At the moment, I do not have a logic analyzer. However, I try to understood which is the problem in the function. The problem is during function bme68x_get_data, when it goes to function read_field_data. In function read_field_data this happens: - it enters in the while at line 1211 and does bme68x_get_regs correctly. It obtains the following values in buff. buff[0]: 12 buff[1]: 93 buff[2]: 236 buff[3]: 30 buff[4]: 134 buff[5]: 141 buff[6]: 0 buff[7]: 0 buff[8]: 0 buff[9]: 0 buff[10]: 0 buff[11]: 0 buff[12]: 0 buff[13]: 0 buff[14]: 0 buff[15]: 51 buff[16]: 0 - then it calculates data->status: data->status = buff[0] & BME68X_NEW_DATA_MSK; The result of this operation is zero, and so it does not enter in the following if at line 1243 (I have no modified the bme68x.c file)
... View more