Welcome! Log In Create A New Profile

Advanced

Min temp error

Posted by willdahthrill 
Min temp error
October 11, 2014 01:17AM
Ok I'm a bit new to this and have been lurking like crazy. I've been through a lot so far on my printer build. I'm finally at the point where I'm hooking up power and checking endstops and such. I watched a pretty decent youtube video on configuring Marlin V1 and proceeded to configure it. Upon powering up for the first time, I get the following:

echotongue sticking out smileyID settings:
echo: M301 P22.20 I1.08 D114.00
Error:0
[ERROR] Error:0

: Extruder switched off. MINTEMP triggered !
Errortongue sticking out smileyrinter stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)
[ERROR] Errortongue sticking out smileyrinter stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)

I read this post: [forums.reprap.org]

It looks like it was unresolved. I defined my temp sensor 0 as 5 based on having a j-head extruder and the following comment in the configuration.h file: // 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan & J-Head) (4.7k pullup)"

So i followed the suggestion of shorting the T0 pins. When I did this the printer connects fine and the graph in pronterface shows a flat line at 30. So I'm thinking I have the wrong thermistor called out and not all j heads are alike? I bought the j-head off ebay and it had the heater and thermistor already installed. Any idea how to figure this out? I measured the resistance and came up with 83kOhms on a pretty crappy DMM.

Any help here is greatly appreciated.
Re: Min temp error
October 12, 2014 01:24PM
I think you almost certainly have an open circuit. Your thermistor is not connected.
Re: Min temp error
October 13, 2014 12:44AM
If that were the case, shouldn't shorting the T0 pins produce a Max Temp fault. With the thermistor connected I get min temp fault, with T0 pins shorted I get 30C temp reported.
Re: Min temp error
October 13, 2014 01:14AM
Also, I just checked again, the thermistor reads 98kOhms, the T0 pins are have 5V on them (I'm guessing this is correct. I'm assuming the way it works is that the T0 pins supply a voltage and the thermistor resistance value changes with temperature and there is some current sensing capability on the board/in the firmware that uses ohms law V=I*R and uses a calibration factor to compute the temperature based on the current being regulated by whatever value the resistor is at.

With that in mind, is 5V the correct voltage for the T0 pins?

The selected thermistor is 100k, is 98k close enough? I bought a J-Head off of ebay which included the heater and thermistor already installed so I'm not totally sure which 100k thermistor is in it, but I have tried "1" and "5" with the same result.

Could there still be something related to the controller that is not sensing correctly?

Is there something deeper in the code, maybe thermistortables.h, that might be wrong or need tweaking?

From the configuration.h file:

#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 0

Please help....thanks in advance.
Re: Min temp error
October 13, 2014 06:59AM
One of the T0 pins should be at 0 volts as it is connected to ground.
If you put a variable resistor 10k across the T0 pins does the temperature reading change?
Does the voltage change on one of the T0 pins varying the resistor value?
Re: Min temp error
October 13, 2014 12:00PM
I head measured voltage from 1 pin to the other so that's why I got 5V.

I guess I can go to radio shack and pick up some resistors and try that out tonight. So should I expect a voltage drop or should it just reduce current?
Re: Min temp error
October 13, 2014 12:33PM
I would expect the voltage to drop if all is ok in that part of the circuit. If it does, and the temparature display doesn't change, then the fault has to be in the atmel chip analog input or the processing of it in code.

Edited 1 time(s). Last edit at 10/13/2014 12:35PM by Ralph.Hilton.
Re: Min temp error
October 13, 2014 03:41PM
ok, I will pick up a potentiometer or a couple resistors and report the results later tonight. Thank you for the suggestion.

If it's the Atmel Chip, the answer is buy a new arduino i'm guessing?

What do I look for in the code? I'm assuming in thermistortables.h the following section:

Quote

#ifndef THERMISTORTABLES_H_
#define THERMISTORTABLES_H_

#include "Marlin.h"

#define OVERSAMPLENR 16

#if (THERMISTORHEATER_0 == 1) || (THERMISTORHEATER_1 == 1)  || (THERMISTORHEATER_2 == 1) || (THERMISTORBED == 1) //100k bed thermistor

const short temptable_1[][2] PROGMEM = {
{       23*OVERSAMPLENR ,       300     },
{       25*OVERSAMPLENR ,       295     },
{       27*OVERSAMPLENR ,       290     },
{       28*OVERSAMPLENR ,       285     },
{       31*OVERSAMPLENR ,       280     },
{       33*OVERSAMPLENR ,       275     },
{       35*OVERSAMPLENR ,       270     },
{       38*OVERSAMPLENR ,       265     },
{       41*OVERSAMPLENR ,       260     },
{       44*OVERSAMPLENR ,       255     },
{       48*OVERSAMPLENR ,       250     },
{       52*OVERSAMPLENR ,       245     },
{       56*OVERSAMPLENR ,       240     },
{       61*OVERSAMPLENR ,       235     },
{       66*OVERSAMPLENR ,       230     },
{       71*OVERSAMPLENR ,       225     },
{       78*OVERSAMPLENR ,       220     },
{       84*OVERSAMPLENR ,       215     },
{       92*OVERSAMPLENR ,       210     },
{       100*OVERSAMPLENR        ,       205     },
{       109*OVERSAMPLENR        ,       200     },
{       120*OVERSAMPLENR        ,       195     },
{       131*OVERSAMPLENR        ,       190     },
{       143*OVERSAMPLENR        ,       185     },
{       156*OVERSAMPLENR        ,       180     },
{       171*OVERSAMPLENR        ,       175     },
{       187*OVERSAMPLENR        ,       170     },
{       205*OVERSAMPLENR        ,       165     },
{       224*OVERSAMPLENR        ,       160     },
{       245*OVERSAMPLENR        ,       155     },
{       268*OVERSAMPLENR        ,       150     },
{       293*OVERSAMPLENR        ,       145     },
{       320*OVERSAMPLENR        ,       140     },
{       348*OVERSAMPLENR        ,       135     },
{       379*OVERSAMPLENR        ,       130     },
{       411*OVERSAMPLENR        ,       125     },
{       445*OVERSAMPLENR        ,       120     },
{       480*OVERSAMPLENR        ,       115     },
{       516*OVERSAMPLENR        ,       110     },
{       553*OVERSAMPLENR        ,       105     },
{       591*OVERSAMPLENR        ,       100     },
{       628*OVERSAMPLENR        ,       95      },
{       665*OVERSAMPLENR        ,       90      },
{       702*OVERSAMPLENR        ,       85      },
{       737*OVERSAMPLENR        ,       80      },
{       770*OVERSAMPLENR        ,       75      },
{       801*OVERSAMPLENR        ,       70      },
{       830*OVERSAMPLENR        ,       65      },
{       857*OVERSAMPLENR        ,       60      },
{       881*OVERSAMPLENR        ,       55      },
{       903*OVERSAMPLENR        ,       50      },
{       922*OVERSAMPLENR        ,       45      },
{       939*OVERSAMPLENR        ,       40      },
{       954*OVERSAMPLENR        ,       35      },
{       966*OVERSAMPLENR        ,       30      },
{       977*OVERSAMPLENR        ,       25      },
{       985*OVERSAMPLENR        ,       20      },
{       993*OVERSAMPLENR        ,       15      },
{       999*OVERSAMPLENR        ,       10      },
{       1004*OVERSAMPLENR       ,       5       },
{       1008*OVERSAMPLENR       ,       0       } //safety
};
#endif

or for thermistor 5:

Quote

#if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2)
const short temptable_5[][2] PROGMEM = {
// ATC Semitec 104GT-2 (Used in ParCan)
// Verified by linagee. Source: [shop.arcol.hu]
// Calculated using 4.7kohm pullup, voltage divider math, and manufacturer provided temp/resistance
   {1*OVERSAMPLENR, 713},
   {17*OVERSAMPLENR, 300}, //top rating 300C
   {20*OVERSAMPLENR, 290},
   {23*OVERSAMPLENR, 280},
   {27*OVERSAMPLENR, 270},
   {31*OVERSAMPLENR, 260},
   {37*OVERSAMPLENR, 250},
   {43*OVERSAMPLENR, 240},
   {51*OVERSAMPLENR, 230},
   {61*OVERSAMPLENR, 220},
   {73*OVERSAMPLENR, 210},
   {87*OVERSAMPLENR, 200},
   {106*OVERSAMPLENR, 190},
   {128*OVERSAMPLENR, 180},
   {155*OVERSAMPLENR, 170},
   {189*OVERSAMPLENR, 160},
   {230*OVERSAMPLENR, 150},
   {278*OVERSAMPLENR, 140},
   {336*OVERSAMPLENR, 130},
   {402*OVERSAMPLENR, 120},
   {476*OVERSAMPLENR, 110},
   {554*OVERSAMPLENR, 100},
   {635*OVERSAMPLENR, 90},
   {713*OVERSAMPLENR, 80},
   {784*OVERSAMPLENR, 70},
   {846*OVERSAMPLENR, 60},
   {897*OVERSAMPLENR, 50},
   {937*OVERSAMPLENR, 40},
   {966*OVERSAMPLENR, 30},
   {986*OVERSAMPLENR, 20},
   {1000*OVERSAMPLENR, 10},
   {1010*OVERSAMPLENR, 0}
};
#endif
Re: Min temp error
October 14, 2014 01:18AM
OK I picked up a potentiometer and took some data. I took resistance measurements with the pot disconnected from the board since the board seemed to influence the measurement and then again with it connected but with the board unpowered. I then powered up and took the voltage measurement as well as ran the M105 command in pronterface and recorded the temperature value returned. Below are my results:


Pronterface temp  |	     voltage |	resistance in kOhms                            |    Resistance in kOhms
                                                   (across the pot while disconnected)   	 while connected to the board (unpowered)
======================================================================================
0	                         4.48	                    93.4	
0	                         4.47	                    75.2	                                 5.3
0	                         4.35	                    50	                                 4.7
0	                         4	                            24.9	                                 4.8
0	                         3.64	                    15.1	                                 4.1
4.3	                         3.26	                    10.1	                                 3.6
12.6	                         2.47	                     5	                                         2.6
19	                         1.67	                     2.5	                                 1.7 
29.8	                          0	                             3.2 Ohms	                         3.1 Ohms

I don't have current measurement, but to me these results are promising and things seem to be working correctly. So what do I do next?

I guess I'll look for explanations of thermistortables.h to see if there is an error in the code. Thanks in advance for additional help.

Edited 4 time(s). Last edit at 10/14/2014 01:20AM by willdahthrill.
Re: Min temp error
October 14, 2014 01:24PM
The voltages look fine. My next step would be to hook up the arduino in a simple circuit to check the functioning of the analog input circuitry
[arduino.cc]
Re: Min temp error
October 15, 2014 12:37AM
Thanks for the arduino suggestion. I did this first thinking that T0 on the RAMPS 1.4 mapped to analog input 1 and saw that the LED did not change frequency of flashing (maybe I didn't have the pot grounded properly, it was hooked to the 12V power supply ground). However, then I disconnected the RAMPS 1.4 and set it up exactly as on the arduino example and it works as expected so I guess that means the ADC is working properly.

I think I'm at the point where it is eaither something weird in Pronterface or something weird in the firmware. Any more suggestions?
Re: Min temp error
October 15, 2014 01:47AM
Also, I ran this one:

[www.arduino.cc]

The results are as follows. Also I plotted it and it is very linear. It would appear that the ADC works properly...agreed?

So what could be wrong with my code?:


Voltage     |   ADC value
===============================
0	              1023
0.29	               963
0.52	               914
0.75                866
1.01	               811
1.23	               765
1.5	               707
1.75	               657
2.04	               596
2.5	               498
3.03	               387
3.51	               285
4.01	               182
4.51	                76
4.88	                 0

Re: Min temp error
October 15, 2014 09:59AM
That seems to leave something in the firmware as the cause. I would find someone with the same machine as yours, get a copy of their complete firmware and try that.
Re: Min temp error
October 16, 2014 05:34PM
What machine do you have? It seems not many others are interested in piping up on this topic. I've since put my soldering iron on the hot end to heat it up and have seen the temperature rise to 2C. At that point the hot end was almost too hot to touch though.

Appreciate all your help. At the very least I've learned a lot so far,

Will
Re: Min temp error
October 17, 2014 01:29AM
Mine is a Mendel90.
Re: Min temp error
October 17, 2014 04:38AM
To measure thermistor resistance 4.7k pull up resistor is used make voltage divider. I did quick voltage calculations for different thermistor values and they seem close enough to your measured ones, so we could assume that voltage divider part is working fine too.
100k-4.77V
50k-4.57V
25k-4.2V
10k-3.4V
5k-2.57V

Also you could test other thermistor inputs and if they are also not working correctly then it is definitely software of firmware issue.
Re: Min temp error
October 19, 2014 03:02PM
Thanks, I actually swapped the sensor to T1 from T0 and it seems to work reasonably (i don't have anything to calibrate with). It reads 25.6C at room temp and gets hotter when I add heat. I also changed the firmware to both define the same thermistor. It's gotta be doing something different with the extruder thermistor than the bed thermistor...I think I'm going to configure repetier and see if that works? Not really sure what else to do here
Re: Min temp error
October 21, 2014 06:18PM
Update: I switched to Repetier and don't seem to have the problem anymore...that's odd. Wish I coulda figured out exactly what was wrong in Marlin, but at least it works.

I still suspect that temp readings aren't correct, but they are much more reasonable I plan to use a thermocouple readout to calibrate the temp correctly. I'll either figure out how to fix/adjust it in the firmware or just choose a diffferent target temp in the software which equates to the correct temp on the hot end. Thanks again for all your help, I truly learned a lot through this exercise so far. let me know if you still have an interest and would like me to try anything in Marlin.
Re: Min temp error
November 02, 2014 03:09PM
Udate: still having problems

I now have two honeywell thermistors (one for bed, one for extruder) I thought that this might reduce some variability since I had an unknown 100k thermistor previously.

at room temp the bed reads 20C and the Extruder reads 30C-this doesn't make sense since they are the same sensor type and were selected properly in the configurator.

i commanded extruder to 40C and bed to 30C and i read ~80C on the extruder and 30C on the bed as measured by an independent fluke thermocouple readout.

I then decided to turn off the bed and waited till it went back to room temp. bed cooled to room temp as indicated by both thermocouple and repetier host software. Extruder remained reporting ~40C and measured ~80C via thermocouple

I then decided to turn the bed back on to a temp higher than the extruder and commanded 50C to the bed. As bed temp increased the extruder temp also started to increase as reported by the repetier host software but remained ~80C as measured by thermocouple. The graph on repetier shows extruder temp at ~55C with bed temp at 50C and the graphs are parallel.

then I bumped the extruder to 70 C and read about 140C with the TC when the software showed 70C.

I then turned off extruder heater and watched the temp come down to ambient via the TC. However on Repetier it only came down to ~53C (bed is at 50C)

Why would the readout on one thermistor follow the other when it's not actually reading that temperature? Is my ADC possibly fried? Some kind of weird crosstalk? This is mind boggling to me and appears that it would be firmware related. I have checked the ADC with a potentiometer previously. Is there a way to report the ADC value in Repetier? I had previously tried Marlin and had found a line that I uncommented which wrote the ADC value to the Serial monitor when running the M105 command, but I haven't been able to locate a similar line in Repetier.

I agree that surely something is wrong I just have no idea what it could be at this point. Please help me with troubleshooting suggestions...I'm at a loss at this point. I have spent weeks at this point dealing with temperature issues.
Sorry, only registered users may post in this forum.

Click here to login