500C Thermistor Table for Repetier Firmware

734 views
Skip to first unread message

Shawn Walker

unread,
Nov 18, 2014, 12:07:01 PM11/18/14
to pico-s...@googlegroups.com
I just recently upgraded my Kossel Clear from Blue Eagle Labs to use the Repetier Firmware and Host and I also installed my Pico with the 500C thermistor again (tried before when using Marlin and had other issues so I removed the Pico).  I was able to use one of the more lengthy tables I found on this forum (it has 71 settings) but it only goes up to 300C.  Using this table I was able to get my temperature to read 35C instead of -45C but my heat bed thermistor was reading 25C so I don't think everything is working correctly.  If someone could help me out with the 500C thermistor table for the Repetier firmware I would greatly appreciate it!

Thanks!

Shawn

Shawn Walker

unread,
Nov 23, 2014, 5:46:38 PM11/23/14
to pico-s...@googlegroups.com
Bueller?

B3

unread,
Nov 24, 2014, 2:59:43 PM11/24/14
to pico-s...@googlegroups.com
Shawn,

The best table to use is our table from our website found here: http://www.b3innovations.com/?page_id=2264

You want to copy and paste that into Marlin over an existing temp table in the thermistortables.h tab. Then follow these directions found here: https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/pico-support/9YOlYglRTus/PwIxmgj5ZKcJ

Except instead of putting 1's for the sensors, change that number to the corresponding table number you pasted the new data into.

Let us know if you have any questions. We will be happy to help.

Mike
The B3 Team

Shawn Walker

unread,
Dec 2, 2014, 3:35:27 PM12/2/14
to pico-s...@googlegroups.com
For anyone else finding this with the same problem, I had to multiply the first number in the pair by 4 and the second number by 8 (I guess this is something Repetier needs) and it seems to be working moderately ok now.  Example {110.42567*4,150*8}.

I still think this isn't very accurate though as I am still having some problems (seems like the temp is too low).  I will try checking it with my multimeter thermocouple and if anyone has any tips for this it would be greatly appreciated!!  Specifically I need to know how to get the thermistor reading (first number in the pair above) while it is being heated. 


Thanks!

Shawn

Shawn Walker

unread,
Dec 9, 2014, 12:20:58 PM12/9/14
to pico-s...@googlegroups.com
Temperature issue seems to be (mostly) sorted out as I can get ABS and PLA to melt through the Pico, I just cant get it to not clog if the filament stops for any amount of time (even a one second stop can produce a clog).  I have tried everything that I have found in the forum from a fan to dropping the temp in increments to waving a magic wand over it and saying "abra-cadabra."  I would really like to be able to use this hot end on my printer. 



Would overheating the Pico to the point where the SS browns affect the operation?  My Pico is brown throughout the whole bottom portion, about halfway up the cooling fins.  The first time I hooked up the Pico using the Repetier Firmware (when I noticed the thermistor table issue) there was white smoke spewing out of the tip of Pico.  I have no idea just how hot it actually was as my reading was around 73C, which I know was wrong. 

B3

unread,
Dec 15, 2014, 1:49:33 AM12/15/14
to pico-s...@googlegroups.com
Shawn,

If there was plastic inside Pico when it overheated, then that may very well cause burnt plastic to coat the inner walls of Pico, making it harder to extrude. (Pico won't turn brown until reaching high temps of about 450C, only to be used with plastics capable of those temps.) I would remove/clean Pico (See user manual) and then look down through the bores to see if there are any obstructions. 

Are you attempting to print when it cloggs? What is your first layer height set at?...or are you trying to free air extrude?
What brand ABS and PLA are you using?
Have you measured the diameter of the filaments in many areas to ensure it does not exceed 1.9mm (for 1.75 Pico) or 3.2mm (for 3mm Pico)?
Can you post pictures of your fan setup?
Is the clogging evident via the extruder skipping, stripping or stalling? Or can you try and turn the Wades gear by hand (if you have a wades extruder)

Thanks,
Mike
The B3 Team

Shawn Walker

unread,
Dec 15, 2014, 5:24:55 PM12/15/14
to pico-s...@googlegroups.com
When Pico was blowing smoke I do not think I had any filament in there at that time, I think it was completely disconnected from the Bowden tube as well.  I have removed Pico and will attempt a cleaning probably this weekend if I do not finish the machining for my magnetic ball joints I am making.

It has clogged turning printing and free air extruding.  When printing, layer height is 0.2mm with the first layer set to 0.35mm and it normally prints through the first two or three layers before it clogs.

PLA and ABS are both Shaxon 1.75mm (Black PLA and Yellow ABS) purchased from FRYS electronics here in Southern California.

I have measured each filament several times in several places and the measurements are always between 1.73mm and 1.75mm.

The fan setup I had did not work with the mounting bracket for Pico so I just attached a blower fan with some magnets so that the exhaust was pointing on the upper most portion of the cold side; it did not blow on the melt zone and may have actually not been blowing on enough of the cold side.  Since the Pico has been removed I cannot take a picture of the actual setup but I will try to get something that demonstrates it.

I would say the extruder is stalling/stripping.  The filament will stall and then the gears will grind it up so there is a visible indentation in the filament.  I do not have a Wades gear setup; it is just a normal MK7 with a bearing/spring to keep tension.  I have verified the extruder operates as intended with the J-head.

Thanks!
Shawn

Christian L.

unread,
Jan 22, 2015, 10:48:44 AM1/22/15
to pico-s...@googlegroups.com
Hi Shawn,
Funny that you ask for the temperature table for Repetier firmware, but got an answer from the BI Team to copy and paste into Marlin.

Anyway, I'm trying to make this 500°C thermistor to operate with Repetier, too!

So far no luck, and doesn't get much support from the B3 Team.

Shawn Walker

unread,
Jan 22, 2015, 11:05:44 AM1/22/15
to pico-s...@googlegroups.com
Hi Christian,

I you take the Marlin 500C table and multiply the first number in the pair by 4 and the second number by 8 it should get you close enough to be able to print.  I haven't been able to mess around with mine in a while so I don't have any other advice.  I removed my Pico and went back to my stock J-head for now.  I will try to remember to get my thermistor table when I get home tonight and I will post it on here.  I do not guarantee that it will work, but it did seem to work for me and I don't think it was related my clogging issue.

B3

unread,
Jan 22, 2015, 12:26:06 PM1/22/15
to pico-s...@googlegroups.com
Christian,

I'm not sure if our emails have been reaching you, but we replied to your email request 2 days ago with this tailored guide below:

"Christian,

We have never used this firmware before and these instructions are our best guess:

To use the 500C thermistor with Repetier Firmware, we are guessing you must go to the Temperature tab in the setup page:




Then scroll down to the Extruder section. Under this section where it says: "Temperature Sensor", choose "User Defined Table 1"


Then scroll all the way down to the bottom to the section to where it  says: "User defined Thermistor table 1"

Keep the R1 value at 0 and the R2 value at 4700

At the bottom in this section you must add Temperature and Resistance values each time and then click "+Add Value". (In the picture, we already added the first three values as examples) 




Let us know how this works. If it does not read correct temperatures, please let us know. You may have to multiply each resistance value by 16

-
-

Christian, I just now saw your email response a few minutes ago while typing up this post. I hope you do not mind, but lets keep all communication open on this forum so that others can benefit from our support.

After reading your most recent email, it seems there was a problem with the 500C thermistor lead wires being twisted and shorting out. That can happen from over tightening the thermistor. We are aware of this from internal design testing and is possible that this may have shipped out with this issue, but we conduct a resistance test to each and every thermistor after each Pico is assembled to minimize the chance of an over tightened thermistor from the factory.

In the email you mentioned that the thermistor lead wires are crimped and not welded. The crimped thermistors are version 1 of our 500C design. Laser welded leads are version 2 of our 500 and 300C designs. Laser welding is a faster and automated process over crimping and this design change was made a few months ago. This hinted that your order was an older order and made me look into when your Pico order was placed, which was quite sometime ago during Kickstarter. Thank you for your Kickstarter support! The reason I mention this is I am curious if the Repetier Firmware temperature table issue has been an issue from the start? Or have you been able to print or heat up Pico previously using a different firmware?

Next you mentioned the room temperature reading is 25C which is good, but when heating Pico, it is erratically jumping around until it reaches 200C then jumping between 195C to 210C. This could be one of two issues, or both at the same time. One being the table is still incorrect and two, the PID tuning is off. Finally you just mentioned that the Marlin firmware seems to be working properly, but you need or want to use Repetier firmware. I would suggest approaching this one step at a time. Use Marlin to get rid of one of the possibilities by conducting a PID auto tune, then take those values and use them in Repetier Firmware to then tackle the temperature table.
Can you also provide more details on how Pico reacts to the 500C thermistor using Marlin? This will provide more insight as to what is happening. And the table values are indeed all in Celsius.

Thanks Christian. We have a considerable sum of customers printing with the 500C successfully. This tells me that the issues we are seeing today is solvable and we will help where we can and as much as we can with using Repetier firmware.

Regards,

Mike
The B3 Team
B3 Innovations, LLC

B3

unread,
Jan 22, 2015, 12:32:31 PM1/22/15
to pico-s...@googlegroups.com
Shawn,

Just letting you know we are still here for you after you have time to get back to it. Just keep us updated. And I owe you an apology, I was not familiar with Repetier Firmware enough at the time to be qualified to comment on it. You were the first to come to us with using the 500C with that firmware. Hopefully this new post can generate a new look to a solution.

Thanks,

Christian L.

unread,
Jan 22, 2015, 12:38:19 PM1/22/15
to pico-s...@googlegroups.com
@Shawn,
Thanks for the quick answer. I was using the Repetier tool to compute the thermistor data, but results are wrong. Did what you suggested (multiply factors) and put the result directly in Repetier. At least I now get temperature readings (have 2 Pico). Now I must determine if it's accurate.

Christian

Christian L.

unread,
Jan 22, 2015, 2:16:28 PM1/22/15
to pico-s...@googlegroups.com
@Mike,
Sorry, didn't see you post while typing mine.

Thanks for the info, I'm sure someone will eventually be a victim like me of a thermistor short circuit. These lead wires are so small, I had to use an exacto blade to straighten them back. Putting the small spring on the thermistor is also a challenge, you can't twist it.

So, I finally got these little gems to print with Repetier firmware. Here is the data I added in Configuration.h:

#define NUM_TEMPS_USERTHERMISTOR0 36  // This is thermisotor type 5
#define USER_THERMISTORTABLE0 {{443,2800},{505,2720},{576,2640},{658,2560},{752,2480},{859,2400},{982,2320},{1120,2240},{1275,2160},{1447,2080},{1635,2000},{1837,1920},{2050,1840},{2271,1760},{2495,1680},{2715,1600},{2926,1520},{3124,1440},{3304,1360},{3462,1280},{3598,1200},{3713,1120},{3806,1040},{3880,960},{3938,880},{3982,800},{4015,720},{4039,640},{4057,560},{4069,480},{4077,400},{4083,320},{4086,240},{4089,200},{4090,200},{4091,200}}

It's a 10 degrees incrementation from the original table.

Kris T

unread,
Mar 25, 2015, 12:49:18 PM3/25/15
to pico-s...@googlegroups.com
Thanks for posting that Christian. I was a little unsure about properly formatting the table with the multipliers in the Repetier example. 
Keep in mind that the tables are based on a V-ref of 5V from your standard Arduino, which might vary if you have an ARM-based board and a V-ref of 3.3V.

I found the official explanation for the x4 and x8 values in the Repetier support pages.
In the table, you see that the readings are multiplied with 4 and the temperatures with 8. I've taken this format, because most firmwares use a reading range from 0-1023 and full integer values for temperatures. Repetier-Firmware uses a higher resolution for input and temperature and these factors convert old tables you may have into the needed value range for Repetier-Firmware. If you don't have a matching table, you have to compute one.

Branden Coates

unread,
Mar 25, 2015, 1:58:21 PM3/25/15
to pico-s...@googlegroups.com
Hopefully come next week I can expand the thermistor table out to real world resistance measurements of the 500 degree thermistor up to around 550 degrees(we really should have temp tables overshoot the actual rated value a bit to ensure accuracy up to our rated temps).

I ordered a pid controller yesterday and expect it to show up this Friday. When I get that I am going to mill a heat block that holds the pid controllers thermocouple, a 24v heater cartridge, and a hole to retain a thermistor. Using this setup I should be able to drive temps upwards of 600c fairly easily and maintain steady temps for taking resistance measurements and averaging them.

In the long run I will end up hopefully with 3 good resistance measurements that correspond with a set temperature, one at the low end, one at mid range, and one at the high end of the 500 degree thermistors measuring range. I can use that to plug into a steinhart hart calculation to generate a quite accurate and dependable measured temp range thermistor table. The current ones all stop at around 350 and extrapolate from there which while it works introduces a lot of potential for inconsistencies at the top end of the range where no real world values have been established.

The stuff I would be using would mostly apply directly to Smoothie and Marlin firmware users, but it sounds like you guys have info for converting to Repetier compatible tables, Ill happily pass the info along if you guys want to expand out the table for Repetier.

Kris T

unread,
Mar 25, 2015, 3:13:54 PM3/25/15
to pico-s...@googlegroups.com
expanding the table to include more, real measurements in the mid 300's to mid 400's would be great for working with some of these engineering plastics like Ultem/PEI, Radel/PPSU, CF filled PEEK, and such.

Branden Coates

unread,
Mar 25, 2015, 3:44:50 PM3/25/15
to pico-s...@googlegroups.com
Thats my goal. It will be a lot of hurry up and wait to get all the measurements but I really am aiming for resistance measurements at every 10c increase from around 20/30c to 550c. I lack a peltier so pulling temps down to 0c for a starting point is probably going to not be an option(I dont want to deal with the mess of ice either). Though since we generally are not even close to printing at sub 50c temps starting at around 30c for measurements is likely plenty adequate.

Ill post a new support topic with a log of all my data when I get to that point. For the most part we should be able to pull 3 ranged measurements from the data and run it through the steinhart hart equation and be pretty well off for generating temp tables using that but someone may just want to go further and build a table directly from all the measured results. Ill try to remember to toss a link in here too for you guys. I dont expect it to take longer than around a week once I get the pid controller in the mail this Friday.

If anyone can think of a reason for doing measurements at 5c increments let me know. I really dont think its overly necessary but I know that I also will not want to run through the process twice with the amount of time it will take to set temp / heat / wait for temp normalization / take 10 resistance measurements / repeat, so best to do it all right the first time around.

dood...@gmail.com

unread,
Mar 26, 2015, 9:05:26 AM3/26/15
to pico-s...@googlegroups.com
Branden, I've taken a stab at doing something similar, but haven't finished due to many other distractions.

500 C is HOT, and spending a lot of time there may have impact on the thermistors. In my case, the shrink tubing tightened up around the softened wire insulation and formed ( molded ) essentially one wire. They didn't quite touch, but were very close to doing so. 550 C or 600 C may be ambitious, and kudos if you can. Might need to hack the thermistor and use teflon wire or fiberglass (like thermistors).

Not sure what kind of block you are milling, but I ended up using stainless as anything else corrodes pretty badly unless you plate it. I tapped 5-40 holes for the B3 thermistors and after cycling to 500 C, I couldn't get them out again without destroying them due to both the block and the strain relief spring oxidation.

Out at 500 C, the resistance you are dealing with is about 40 ohms. If you use a bridge, due to the wide range of resistance of a few meg to ~ 40 ohms, you can lose serious accuracy depending on how you set it up and how you measure it. I ended up measuring directly with a precision bench meter using a 4 wire setup. Even then, thermistor to thermistor I get many ohm variation (~ 7 ohms), though each individual thermistor repeats tightly.

I ran a data acquisition system and programmed it to record the thermocouple value and two thermistor resistances every 1 second from 25 C to 500 C and back down again. As there is a pretty strong thermal gradient upon heating, I ignored those values and looked only at the cool down. For every 5 degree increment, I took a selection of samples in the immediate neighborhood (5 total averaged) and generated a marlin table from that.

My plan was to load all this into a ramps setup and test it out, but have stopped short due to time.

I could share my data with you once you collect to compare if you like, the folks at B3 have it too.

My biggest concern was the variance between thermistors. One could build the best table in the world, but part to part variation needs to be addressed if you really want to be accurate up there. Down in the "useful" range it probably isn't an issue - someone needs to decide what is good enough ( my opinion ).

Enjoy,
Pete

dood...@gmail.com

unread,
Mar 26, 2015, 9:08:56 AM3/26/15
to pico-s...@googlegroups.com
In my comment about wire insulation, I meant fiberglass insulation like *thermocouples* not thermistors - typed too quickly...

Branden Coates

unread,
Mar 26, 2015, 9:45:19 AM3/26/15
to pico-s...@googlegroups.com
I have been dealing with some of those concerns just poking at the theoreticals in talking about hitting the actual 500c rating. These thermistors based on their beta is +/-3%, thats just within the 150 to 250 beta rated range which means there is a potential for less accuracy at the edges of the thermistors range. Just figuring 3% potential variance on 500c gives us a +/- 15c range to concern ourselves with. That assumes that the thermistor we get values from is dead nuts on too and suffers from none of the variance potentials.

Your testing methods sound like this is not your first rodeo with temp testing and likely well above what I have available as well. Most thermistors outside the beta range and closer to the thermistors extremes are in theory supposed to be individually calibrated particularly at the hot end of things(which is why we as reprappers usually see such a variance even with the 300c rated thermistors, most of their betas are 25 to 85 where we are never actually printing at).

It sounds like the process needed to build out a proper temp table it will require pulling repeat values from individiual thermistors and averaging that. The sample size of thermistors themselves would probably have to somewhere in the range of 50 to 100 units all having been tested and averaged. From there averaging the readings out should arguably provide a fairly tight temp table that would be the most dependable across a large breadth of thermistors, though that does not account for variations between thermistor production runs(betas can even change slightly between production runs).

You bring up a good point about the wire issues and corrosion problems. The wiring casing thing seems like an issue that should be fixable during manufacture for the glass fiber wire protection, primarily because advertising to hit 500c having the wire sheaths melt is probably not preferable particularly if its intended to print for periods of time near that temp. To an extent I can see both sides of the corrosion issue being mounted in the Pico. On one hand once its mounted it does not really need to come out unless it fails so damaging it taking it out is kinda moot yet on the other hand being able to swap between 300 and 500 degree thermistors seems like a sensible thing to expect being able to do, barring the concept that doing that frequently will likely break the thermistor wires anyway. Another point, the block its self is stainless steel, but are the strain relief springs? If they are not that could definitely be related to the corrosion issue and difficulty with removal. I dont know if adding some anti-sieze to the spring before screwing it in place would help here or not.

dood...@gmail.com

unread,
Mar 26, 2015, 11:52:54 AM3/26/15
to pico-s...@googlegroups.com
I wish I had saved the Thermistor after the "melt", but it was a victim of removal. It had not shorted yet, but the two wire insulations merged into one and a lot of the material extruded out the end of the heatshrink as it compressed ( or the latent compression just squeezed the material out ). It was very interesting. My curiosity got the better of me as I had to autopsy it to see.

The averaging seems to make sense, and the sample size shows a good grasp of DOE.

If we had a collection of samples, perhaps a shortcut might be to then calibrate at some known point that is easily acheivable for most folks and tolerate a certain error band at the extremes ( or something like that ). the errors involved in shaving a few degrees here and there need to be weighed against the project requirements, whatever they are.

I'm not a reprapper, I intended the pico to use for something else - for which it performs quite nicely. It is a great design for my needs and saved me a lot of effort to reproduce it. However, I might become one some day...

To be clear, in no way are my comments and experiences meant to cast any judgements + or -. If I can help in any way, don't hesitate to ask. My opinions are just that.

Branden Coates

unread,
May 1, 2015, 1:07:43 AM5/1/15
to pico-s...@googlegroups.com
Hey Guys,

I just posted a new thread covering the 500c thermistor temp tables. https://www.b3innovations.com/#!msg/pico-support/Z1A7PZblKns/0xdEsMu6ol0J

In case the link doesnt work the subject is Taming the 500c Pico Thermistor

Might be helpful, the temp table has the complete range from 25c to 510c.

Willem Reek

unread,
Apr 13, 2016, 7:35:59 AM4/13/16
to B3 Innovations - Pico Support
Branden Coates,

How should this table look if implemented in Repetier with and Arduino Due?
I would be grateful for a bit more Repetier oriented support.

Branden Coates

unread,
Apr 13, 2016, 11:10:18 AM4/13/16
to B3 Innovations - Pico Support
Hi Willem,

I actually wouldnt be able to tell you, I have never worked with Repetier before. If you can send me a copy of one of the existing Repetier temp tables to compare I may be able to build something out, however I have nothing to test against. If you do not mind being a guinea pig for that I will do my best to help out.

Branden

Kris T

unread,
Apr 13, 2016, 6:23:10 PM4/13/16
to B3 Innovations - Pico Support
in your configuration.h
under the extruder info
#define EXT0_TEMPSENSOR_TYPE 5


down in your temp tables
#define NUM_TEMPS_USERTHERMISTOR0 36  // This is thermistor type 5, 36 entries, 500c B3 Innovations thermistor

Kris T

unread,
Apr 13, 2016, 6:25:28 PM4/13/16
to B3 Innovations - Pico Support
I should mention that those values are for a typical arduino board (5V logic), your values might be shifted/compressed since you'll likely be working with 3.3V logic on an Arduino Due (ARM processor) based board.

Branden Coates

unread,
Apr 13, 2016, 7:46:00 PM4/13/16
to B3 Innovations - Pico Support
That is a good point, all the resistance measurements were based using an Arduino Mega so the 5v ADC range would be a bit different for resolution than the 3.3v ADC range on the Due. I do not have a Due to perform the testing on either to see if the ADC would be the same/close values or if a separate 3.3v compatible temp table would need to be created.
Reply all
Reply to author
Forward
0 new messages