Surfing the internet to find out how to wire our new MAX6675 amplifier with RAMPS and Marlin when we decided to use thermocouples instead of thermistors for more precise temperature control during printing, we didn't found any complete documentation about how to do that. so we decided to write this instructable .
At first you can get this module form adafruit or you can get a chinese full kit of this module with K-type thermocouple included for less than 10$. They are all differ in shape but works in the same way.
Step 1: Wiring MAX6675 to Your Electronics
MAX6675 works under SPI communication protocol so you need to connect it at AUX-3 on the RAMP (the same connector for the SD-Card)
Note: you still can connect your SD-Card module while using MAX6675 and the controller (MEGA) will choose which one to communicate with, but you have to figure out how to wire both modules together on the same connector.
- GND on MAX6675 goes to GND ( pin 7 ) on RAMPSAUX-3
- VCC on MAX6675 goes to VCC ( pin 1 ) on RAMPSAUX-3
- DO on MAX6675 goes to MISO ( pin 3 ) on RAMPSAUX-3
- CS on MAX6675 goes to D53 (pin 6 ) on RAMPSAUX-3
- CLK on MAX6675 goes to CK ( pin 5 ) on RAMPSAUX-3
-some times you can find pin DO named SO and pin CS named SS and pin CLK named SCK in different MAX6675 modules.
-If your connection doesn't work, connect CS pin on MAX6675 to D49 ( pin 2 ) instead of D53 ( pin 6 ) on RAMPS AUX-3
After connecting your electronics, now the next step is ? yes you are right :D :D :D
Step 2: Configuring Marlin Firmware to Work With Thermocouple.
Marlin is a great firmware and it is designed to work with MAX6675. All you need is to open it with arduino IDE and go to configuration.h tab
In Thermal settings define TEMP_SENSOR_0 -2 and it can only works with Sensor 0 .
Now hit upload and let the magic begin.
while compiling the firmware you will find a bug declared before in the previous screenshot and it all goes around this line.
long max6675_previous_millis = -HEAT_INTERVAL;
you need to change "-HEAT_INTERVAL" to "MAX6675_HEAT_INTERVAL" and the final soultion should be like
long max6675_previous_millis = MAX6675_HEAT_INTERVAL;
now hit upload and enjoy your MAX6675 thermocouple module.
**if you found the temperature reading goes down while heating, reverse the thermocouple terminals connected to the MAX6675 module.
**some modules need to solder the -ve terminal connector of the thermocouple with the ground and you have to do this step to make it works.
please if you found any information were missed kindly inform us.
if you want to ask about any thing you can leave a comment.
you can follow our facebook page for more posts or visit our website to download ATOM complete source file.