SparkFun Forums 

Where electronics enthusiasts find answers.

Have questions about a SparkFun product or board? This is the place to be.
By dbpp31
#199500
I have connected the sensor to an Arduino mega 2560 and Arduino UNO.
I added the library by using the Arduino 1.8.5 version.
Then I tried the example1 and example2 from the library, however, I have the following result:

-For Mega 2560
"MLX90632 Read Example
Object Temperature: 0.00 C
Object Temperature: 0.00 C"

-For UNO
"MLX90632 Read Example
Object Temperature: nan C
Object Temperature: nan C"


I have checked the "pull request" and then I modified the keywords on the library SparkFun_MLX90632_Arduino_Library. Now I have highlighted the word "MLX90632" on the example1.ino. Even that, my result is the same. I cannot read the temperature using the sensor.

In case of example 2, I have the same result.

-For Mega 2560
"MLX90632 Read Example
Object Temperature: 32.00 F Sensor Temperature: 0.00 C
Object Temperature: 32.00 F Sensor Temperature: 0.00 C"

Moreover, I have checked with a multimeter the voltage on the pines of the sensor. I have the correct voltage between 3.3V and GND. In case of SCL and SDA, I know it is not constant because of the transmission of data, so I measured just to see if there is any voltage related to the data, there was around 3.1V. in each pin. It means there is data on the pins and the welding between the pins and the sensor module is correct ( Also I verified the continuity on the board and the pins).

Therefore. I have no idea what can be the problem.
Help, please!!!!!!
By jremington
#199502
If you are using 5V Arduinos, how is it wired, and/or what are you using for the required logic level shifters with that 3.3V device?

If you are not using a logic level shifter, you have to be extremely careful to check that appropriate pullup resistors are used and connected to 3.3V ONLY. The Mega has them connected to 5V, which won't work, while the Uno (to my knowledge) has no pullups.

To test communications try the I2C address scanner. If that does not report the correct device address, communications are not working.
By dbpp31
#199578
Thank you for your reply @jremingyon

I am using a level shifter module for Arduino, similar to this https://www.amazon.co.jp/ILS-pieces-Bi- ... er+arduino.

It seems that the MLX90632 module (Infrared Non-contact Thermometer (Qwiic) - MLX90632, https://www.sparkfun.com/products/14569) has already the pulls up connected to the 3.3V *according to the schematic of the module). Anyway, I also added the 4.7K resistors between SDA and 3.3 and SCL3.3. Although there is a voltage on SDA and SCL, the measurement is still completely null.

When I run the example4. Debug printing, I have the following result:

I2C Error: No read response
I2C Error: End transmission

Then, I still have no idea what can be the problem. How can I know that the temperature sensor by itself is not damaged or is working correctly?