Welcome! Log In Create A New Profile

Advanced

Can anyone help with my Repetier Thermistor table please

Posted by Flackster 
Can anyone help with my Repetier Thermistor table please
November 01, 2013 06:28AM
Hi,

I'm in the process of trying to move from Marlin firmware to Repetier firmware. Things are looking OK but I have a problem with my user defined thermistor table.

I have a Thermistor NTC-100KOhm from German Reprap Foundation
// (https://shop.grrf.de/thermistor-ntc100kohm-p-310.html?zenid=6e2bfbd4439d9009360d547ef2f37e81)

with the following values describing it's characteristics
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 3974
// max adc: 1023

In Marlin firmware I have a thermistor table which works just fine.

#define OVERSAMPLENR 16
const short temptable_8[][2] PROGMEM = {
{1*OVERSAMPLENR, 916},
{54*OVERSAMPLENR, 265},
{107*OVERSAMPLENR, 216},
{160*OVERSAMPLENR, 189},
{213*OVERSAMPLENR, 171},
{266*OVERSAMPLENR, 157},
{319*OVERSAMPLENR, 146},
{372*OVERSAMPLENR, 136},
{425*OVERSAMPLENR, 127},
{478*OVERSAMPLENR, 118},
{531*OVERSAMPLENR, 110},
{584*OVERSAMPLENR, 103},
{637*OVERSAMPLENR, 95},
{690*OVERSAMPLENR, 88},
{743*OVERSAMPLENR, 80},
{796*OVERSAMPLENR, 71},
{849*OVERSAMPLENR, 62},
{902*OVERSAMPLENR, 50},
{955*OVERSAMPLENR, 34},
{1008*OVERSAMPLENR, 2}
};

Here's what I thought the Repetier version should look like.
#define NUM_TEMPS_USERTHERMISTOR0 20
#define OVERSAMPLENR 16
#define USER_THERMISTORTABLE0 {\
{1*OVERSAMPLENR, 916},\
{54*OVERSAMPLENR, 265},\
{107*OVERSAMPLENR, 216},\
{160*OVERSAMPLENR, 189},\
{213*OVERSAMPLENR, 171},\
{266*OVERSAMPLENR, 157},\
{319*OVERSAMPLENR, 146},\
{372*OVERSAMPLENR, 136},\
{425*OVERSAMPLENR, 127},\
{478*OVERSAMPLENR, 118},\
{531*OVERSAMPLENR, 110},\
{584*OVERSAMPLENR, 103},\
{637*OVERSAMPLENR, 95},\
{690*OVERSAMPLENR, 88},\
{743*OVERSAMPLENR, 80},\
{796*OVERSAMPLENR, 71},\
{849*OVERSAMPLENR, 62},\
{902*OVERSAMPLENR, 50},\
{955*OVERSAMPLENR, 34},\
{1008*OVERSAMPLENR, 2}\
}

I entered that for the user defined table in Repetier (and have set "#define EXT0_TEMPSENSOR_TYPE 5" so it uses that table)

However, the reported temperature is steady at "116.04". Even if when the hotend is at room temperature. If I turn on the heater the hotend does start to heat up but the reported temp stays steady at 116.04 (I suppose it might go upwards if I left the heater on long enough but I thought best to avoid that)

Anyone have any ideas what I'm doing wrong?

Thanks

Pete
Re: Can anyone help with my Repetier Thermistor table please
November 01, 2013 09:15AM
From the configuration comment:

If you have a sprinter temperature table, you have to multiply the first value with 4 and the second with 8.
This firmware works with increased precision, so the value reads go from 0 to 4095 and the temperature is
temperature*8.


You need OVERSAMPLENR 4 and the temperature should be *8.
If you adjust that the readings should be more meaningfull.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: Can anyone help with my Repetier Thermistor table please
November 04, 2013 08:18AM
Thanks for that. Tried it and had variable results. I eventually swapped my Arduino Mega 2560 board for a Arduino ATMega 1280.

Using the same thermistor table as above (multipliers of 16 & 1 respectively) I get the correct temperature (at room temp) but when I heat the extruder it stays steady (19.96 degrees C). However, I can the extruder is clearly heating up

So, they I tried your suggested values instead (4 and 8 respectively) and I get a start temperature of 2 degrees C (and no rise in temp when I turn the heater on)

sad smiley(

Does that give any clues to what I'm doing wrong?

Thanks again

Pete
Re: Can anyone help with my Repetier Thermistor table please
November 04, 2013 08:58AM
Here you see a table for the predefined types:

#define NUMTEMPS_4 20
const short temptable_4[NUMTEMPS_4][2] PROGMEM =
{
    {1*4, 430*8},{54*4, 137*8},{107*4, 107*8},{160*4, 91*8},{213*4, 80*8},{266*4, 71*8},{319*4, 64*8},{372*4, 57*8},{425*4, 51*8},
    {478*4, 46*8},{531*4, 41*8},{584*4, 35*8},{637*4, 30*8},{690*4, 25*8},{743*4, 20*8},{796*4, 14*8},{849*4, 7*8},{902*4, 0*8},
    {955*4, -11*8},{1008*4, -35*8}
};

if you used the factor similar to that the table should be right. First you could try one of the predefined thermistors to see it is working at least. Then if it works go back to your table and double check all configurations are set right - not onl ythe table - so the table gets used.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Re: Can anyone help with my Repetier Thermistor table please
November 06, 2013 12:34PM
Hi,

I tried a 100K thermister & had same problem. I'm thinking I may have something else set in the firmware that causes problems. Could you post/email me a working example of firmware (Marlin or Repetier - but have the same problem). Keep getting that MINTEMP has been triggered.

Everything checks out fine on my Gen6 (marlin) board so I'm assuming this is RAMPS1.4 specific.

Also, I have no heated bed so T1 has no thermister connected to measure bed temperature. Could that be causing a MINTEMP trigger?

Cheers

Pete
Re: Can anyone help with my Repetier Thermistor table please
November 06, 2013 12:47PM
Quote
Flackster
Hi,

I tried a 100K thermister & had same problem. I'm thinking I may have something else set in the firmware that causes problems. Could you post/email me a working example of firmware (Marlin or Repetier - but have the same problem). Keep getting that MINTEMP has been triggered.

Everything checks out fine on my Gen6 (marlin) board so I'm assuming this is RAMPS1.4 specific.

Also, I have no heated bed so T1 has no thermister connected to measure bed temperature. Could that be causing a MINTEMP trigger?

Cheers

Pete

You really should look into the log. If mintemp is triggered it writes exactly which device malfunctions. If you see there a heated bed you should disable the bed in the configuration, so the firmware does not expect it to work. If you see a second extruder and you only have one, set NUM_EXTRUDER to 1.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
SOLVED - Can anyone help with my Repetier Thermistor table please
November 14, 2013 09:47AM
Hi,

I got this to work in the end.
I needed to change the *16 multiplier in the first value to 4, and add in a *8 multiplier for the second value. It was the fact I originally had a multiplication factor of 16 for the first value (but no multiplier for the second value) combined with the comment "If you have a sprinter temperature table, you have to multiply the first value with 4 and the second with 8." that confused me.

The correct Thermistor table looks like this:

//PF: I have defined this table (option 5 when selected which to use above)
//PF: Added new thermistor option 8:NTC-100KOhm
// Thermister table added by Flackster
// for the Thermistor NTC-100KOhm from German Reprap Foundation
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 3974
// max adc: 1023

#define NUM_TEMPS_USERTHERMISTOR0 20
#define OVERSAMPLENR 4
#define TEMPFIDDLE 8
#define USER_THERMISTORTABLE0 {\
{1*OVERSAMPLENR, 916*TEMPFIDDLE},\
{54*OVERSAMPLENR, 265*TEMPFIDDLE},\
{107*OVERSAMPLENR, 216*TEMPFIDDLE},\
{160*OVERSAMPLENR, 189*TEMPFIDDLE},\
{213*OVERSAMPLENR, 171*TEMPFIDDLE},\
{266*OVERSAMPLENR, 157*TEMPFIDDLE},\
{319*OVERSAMPLENR, 146*TEMPFIDDLE},\
{372*OVERSAMPLENR, 136*TEMPFIDDLE},\
{425*OVERSAMPLENR, 127*TEMPFIDDLE},\
{478*OVERSAMPLENR, 118*TEMPFIDDLE},\
{531*OVERSAMPLENR, 110*TEMPFIDDLE},\
{584*OVERSAMPLENR, 103*TEMPFIDDLE},\
{637*OVERSAMPLENR, 95*TEMPFIDDLE},\
{690*OVERSAMPLENR, 88*TEMPFIDDLE},\
{743*OVERSAMPLENR, 80*TEMPFIDDLE},\
{796*OVERSAMPLENR, 71*TEMPFIDDLE},\
{849*OVERSAMPLENR, 62*TEMPFIDDLE},\
{902*OVERSAMPLENR, 50*TEMPFIDDLE},\
{955*OVERSAMPLENR, 34*TEMPFIDDLE},\
{1008*OVERSAMPLENR, 2*TEMPFIDDLE}\
}

Thanks for the help smiling smiley

Pete
Sorry, only registered users may post in this forum.

Click here to login