07-22-2022 04:21 PM
Hello everyone,
Currently, I am working with the sensor BME 688 with the board Nucleo-WL55JC1.
I am reading and testing the code with the self-test (https://github.com/BoschSensortec/BME68x-Sensor-API/blob/master/examples/self_test/self_test.c) and the code did not work. I tracked the code and in the file bme68x.c line 156, the chip id was not equal to the constant BME68X_CHIP_ID which led to the error Device Not Found.
I have 2 assumptions:
I changed the code of I2C read and write based on the attached folder of this reference (In the comment) . Basically, I used the
07-24-2022 09:47 AM
Hi huytyskland,
As you haven't got correct Chip ID, you should check your I2C or SPI hardware communication.
In your another topic https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/Nucleo-WL55JC1-BME688-basic-communicatio... we had provide example code on STM32 fore your reference.
07-24-2022 05:03 PM
Hello,
Thank you for your response.
How about the way to check if the sensor still works or not?
07-25-2022 10:07 AM
Hi huytyskland,
You could capture I2C or SPI waveform and check the time sequence in data sheet.
For example, I2C tme sequence.
07-25-2022 10:27 AM
So, If I understand you correctly, I will execute the requesting-receiving process (such as the example in the I2C read in the datasheet).
If I receive some signal displayed in waveform, then I know the sensor still works. Am I right?
If that is the case, I assume this testing process is executed after the initialisation of the sensor. However, right now, the intialisation does not start as expected (my doubt is the software cannot read the chip ID leading to the error of "No Device Found" as I mentioned in the post). Thus, without initialisation, the testing process cannot be executed and I cannot know whether the sensor works or not.
Could you kindly clarify my doubt or I am thinking incorrectly?