Pages: [1]   Go Down
Author Topic: MAX31855 Breakout Board for Thermocouple  (Read 2847 times)
0 Members and 2 Guests are viewing this topic.
Sonora, Ca
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi everyone a little back story I was wanting to play around with the MAX31855 TC chip and ordered samples from Maxim then realized I didn't have a breakout board for it and the only one I could find online was Adafruits and it only had screw terminals on it and all of my thermocouples have the mini connector on them and I didn't really want to cut them off. so I designed a board in Diptrace and found a place that would make 108 of them for pretty cheep they worked great and I even went to the Arduino Labview community and worked on making sketches to run the MAX31855 in labview as well. now I have alot of boards lol not sure what I should do with them was thinking of selling them on ebay no one has them with the mini connector from Omega in the states unless you buy the kit from Maxim. I used there circuit for this board. What does everyone think is a fair price to ask for these boards I spent a bit of time getting them as compact as posible and making sure the chip was close to the connector for the onboard cold junction compensation of the chip.





* 20121010_225504.jpg (583.65 KB, 2048x1536 - viewed 255 times.)
« Last Edit: January 24, 2013, 05:39:25 pm by LeXLuther422 » Logged

Sonora, Ca
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

next I am designing a board for the MAX31865 RTD SPI chip it is in progress thou I already have 2 sample chips for it.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 5
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

If this would work with MAX31865 RTD-to-Digital Converter I would buy a couple.
Logged

Sonora, Ca
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I had alot come up after that last post (new baby, work etc...) so I have not done more work on the design but I will pick it back up here is what it looks like right now I am making sure I can sorce the surface mount precision resistors for the load side it needs to have a 400 Ohm and 4k Ohm resistor to be universal


* MAXRTD.jpg (198.63 KB, 1162x770 - viewed 270 times.)
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 5
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

How are you reading this from the arduino? The eval board just came in and it works fine with their software but i havnt had any luck getting it to work with arduino.  Max31865
Logged

Global Moderator
Boston area, metrowest
Offline Offline
Brattain Member
*****
Karma: 549
Posts: 27418
Author of "Arduino for Teens". Available for Design & Build services. Now with Unlimited Eagle board sizes!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Have you gotten code to work with MAX31865? I think I have it coded up correctly, yet am not getting good results back.
Code:
//got some addresses defined, not using most of them tho
// registers
byte config_read = 0x00;
byte config_write = 0x80;
byte RTD_MSBs = 0x01;
byte RTD_LSBs = 0x02;
byte High_Fault_Threshold_MSB_read = 0x03; // 83h FFh R/W
byte High_Fault_Threshold_MSB_write = 0x83;
byte High_Fault_Threshold_LSB_read = 0x04; // 84h FFh R/W
byte High_Fault_Threshold_LSB_write = 0x84;
byte Low_Fault_Threshold_MSB_read = 0x05; // 85h 00h R/
byte Low_Fault_Threshold_MSB_write = 0x85;
byte Low_Fault_Threshold_LSB_read = 0x06; // 86h 00h R/W
byte Low_Fault_Threshold_LSB_write = 0x86;
byte Fault_Status_read = 0x07; // 00h R

// send out conversion command, slave select pin selected from an array of pins
      digitalWrite (SSarray[x], LOW);
      SPI.transfer(config_write);  // send out configuration address, then configuration data
      SPI.transfer(B10000100); // try B11100100 also  B10000100
      // 100X010Xb From Table 3: Fault detection with automatic delay
      // D7, 1 = bias on
      // D6, 1 = conversions normally off
      // D5, 1 = start 1-shot conversion, conversion takes ~52mS
      // D4, 0 = 2-wire mode
      // D3, Fault Detection Cycle Control, use 0
      // D2, Fault Detection Cycle Control, use 1
      // D1, 0 = do not clear Fault register bits
      // D0, 0 = 60 Hz filter mode
      digitalWrite (SSarray[x], HIGH);

// some time later, read it back and store it into an array
      // send write address, followed by 8 reads - multibyte transfer
      digitalWrite (SSarray[x], LOW);
      SPI.transfer(0);  // send out y = register #
      for (y=0; y<8; y=y+1){
        Readarray[(x*8)+y] = SPI.transfer(0); // read register contents back
      } // next register
      digitalWrite(SSarray[x], HIGH);

// and read the array results out
      Serial.print (" Device ");
      Serial.print (x);
      for (y=0; y<8; y=y+1){
        Serial.print (" R");
        Serial.print (y);
        Serial.print (" ");
        Serial.print (Readarray[(x*8)+y]);
      } // next register
      Serial.println("");  // end line
Logged

Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

Pages: [1]   Go Up
Jump to: