MAX31855 - 0.0F reading (but was working before)

For other supported Arduino products from Adafruit: Shields, accessories, etc.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
chmoufi
 
Posts: 5
Joined: Sun Oct 27, 2013 8:46 am

MAX31855 - 0.0F reading (but was working before)

Post by chmoufi »

Hi,

I have tried several tips found on the forum but without any results...

First I've connected the MAX31855-board to Arduino Uno, added the library,... And it was working fine.(tried with the code given in MAX31855 library as example)

then I tried to connect it to Raspberry but without good results. The reported temperature is -127.94°C (so 0.0F)...(I tried 2 different thermocouple with the same result)

I put it back on the Arduino to be sure that was not the board. It was not working anymore. temp reported :0.0F and error 7 was reported as well.

So I guess I did something wrong with the board when I put it on raspberry...

Do you have any idea or proposition to solve this issue?


Thanks a lot

User avatar
adafruit_support_bill
 
Posts: 88093
Joined: Sat Feb 07, 2009 10:11 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by adafruit_support_bill »

It could be an intermittent connection. Post photos showing your soldering on the board.

chmoufi
 
Posts: 5
Joined: Sun Oct 27, 2013 8:46 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by chmoufi »

hi!

thanks for your quick reply.

some pictures:
soldering:
soldering:
DSC_06892.jpg (489.81 KiB) Viewed 765 times
global connection to arduino:
global connection to arduino:
DSC_06852.jpg (551.38 KiB) Viewed 765 times

As you will observe, the connection of vcc is put on 3.3V, this was only my last try. In fact, I'm normally using Vin connected to 5V of Arduino.


thanks again,

User avatar
adafruit_support_bill
 
Posts: 88093
Joined: Sat Feb 07, 2009 10:11 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by adafruit_support_bill »

You soldering is about as good as it gets :) No problem there. Double check that your thermocouple connections are screwed down tight (although it would probably report a thermocouple error if that were the problem.) Check all your jumpers as well. Occasionally we come across a bad one with a poor connection to the pin.
It was not working anymore. temp reported :0.0F and error 7 was reported as well.
What code were you using that reported the error 7? Are you seeing reasonable internal (cold junction) temperatures?

chmoufi
 
Posts: 5
Joined: Sun Oct 27, 2013 8:46 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by chmoufi »

the thermocouple connections are ok.

the used code is the one given as example with the MAX31855 library:

Code: Select all

/*************************************************** 
  This is an example for the Adafruit Thermocouple Sensor w/MAX31855K

  Designed specifically to work with the Adafruit Thermocouple Sensor
  ----> https://www.adafruit.com/products/269

  These displays use SPI to communicate, 3 pins are required to  
  interface
  Adafruit invests time and resources providing this open source code, 
  please support Adafruit and open-source hardware by purchasing 
  products from Adafruit!

  Written by Limor Fried/Ladyada for Adafruit Industries.  
  BSD license, all text above must be included in any redistribution
 ****************************************************/

#include "Adafruit_MAX31855.h"

int thermoDO = 3;
int thermoCS = 4;
int thermoCLK = 5;

Adafruit_MAX31855 thermocouple(thermoCLK, thermoCS, thermoDO);
  
void setup() {
  Serial.begin(9600);
  
  Serial.println("MAX31855 test");
  // wait for MAX chip to stabilize
  delay(500);
}

void loop() {
  // basic readout test, just print the current temp
   Serial.print("Internal Temp = ");
   Serial.println(thermocouple.readInternal());

   double c = thermocouple.readCelsius();
   if (isnan(c)) {
     Serial.println("Something wrong with thermocouple!");
   } else {
     Serial.print("C = "); 
     Serial.println(c);
   }
   //Serial.print("F = ");
   //Serial.println(thermocouple.readFarenheit());
 
   delay(1000);
}
I've checked the internal temperature : 0.0F as well... Is there a problem with the chip itself?

I will check with the multimeter to be sure that I have good connections soon as I get my multimeter back from a friend ;) .
I let you know.

chmoufi
 
Posts: 5
Joined: Sun Oct 27, 2013 8:46 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by chmoufi »

sorry for the code: a mistake, I just added 2 lines (which report the error...) compared to the previous post...

Code: Select all

    // basic readout test, just print the current temp
   Serial.print("Internal Temp = ");
   Serial.println(thermocouple.readInternal());
   Serial.print("error = ");
   Serial.println(thermocouple.readError());
thanks

User avatar
adafruit_support_bill
 
Posts: 88093
Joined: Sat Feb 07, 2009 10:11 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by adafruit_support_bill »

Error 7 would imply that all 3 error bits are set: (see page 10: http://www.adafruit.com/datasheets/MAX31855.pdf )
BIT NAME DESCRIPTION
D2 SCV Fault This bit is a 1 when the thermocouple is short-circuited to VCC. Default value is 0.
D1 SCG Fault This bit is a 1 when the thermocouple is short-circuited to GND. Default value is 0.
D0 OC Fault This bit is a 1 when the thermocouple is open (no connections). Default value is 0.
Electrically, it is impossible for all three of those statements to be true. My guess is that the chip is damaged.

chmoufi
 
Posts: 5
Joined: Sun Oct 27, 2013 8:46 am

Re: MAX31855 - 0.0F reading (but was working before)

Post by chmoufi »

mmh... indeed...
that can be confirmed by the internal temp measurement which is 0.0... damn..

Locked
Please be positive and constructive with your questions and comments.

Return to “Other Arduino products from Adafruit”