Introduction: Up Plus 2 Temperature Control
There is a software solution to set both the nozzle and heatbed temperature. This is explained in the final step.
For about two years I own an Up Plus 2 3D printer. I've won this printer in the Instructable 3D printing contest, after building a LEGO 3d printer. The UP plus 2 3D printer is a so called "plug and play" type. It's easy to use, and has a low failure rate. And I have to say I am very pleased with this printer.
But this printer also comes with some disadvantages. It only works with the supplied software. Although the software works well, it limits the possibilities of this printer. In particular the temperature can't be adjusted. The temperature is set at 200 (PLA) or 270 (ABS) degrees celcius. The intention is to use the printer manufacturer's filament. Which is made to be used at these temperatures.
For other filament brands the default temperature is too high. These have to be used between 220 and 240 degrees celcius (ABS). I've tried other filament, with reasonable result. But these filaments really require a lower temperature for a better result.
Another disadvantage of a single supplier is the limited amount of colors. The available colors are limited to black, blue, green, yellow, red and white. Also, the filament is slightly more expensive. Two years ago, the sale price was almost the same (about $30) as regular filament. But there was a difference in weight: 700 gram instead of 1000 gram. And with a fail rate of almost zero, I can live with this.
But now I have to order new filament. And I noticed two things. First, the availability of the filament (in the Netherlands) is a lot less. I can choose between two colors which I don't want (green and yellow). Secondly, the price has risen to $45 for 700 gram. While I can buy about 2000 grams of regular filament for the same price! And in almost any color.
It appears that the manufacturer has placed new filament on the market. There are now 11 additional colors (with fancy names like Spring Sun Beige, Crystal Sea and Bridesmaid Pink) in stead of 6 colors. But there is also only 500 gram filament on a roll, instead of 700 gram. And the total price for 2 pieces is $40, without shipment.
Due to the poor availability (in the Netherlands) of the original filament, and the price increase, it is time to find a replacement for the original filament.
Fortunately I have experience with building 3d printers. And with some adjustment it is possible to use other filament. And that is where this Instructable is about.
Step 1: 3D Printer Extruder Basics
The image above is an 3d printer Extruder. This is a Geeetech MK8 extruder and is not used in the UP Plus 2 printer. The upper part provides feeding the filament. It contains a stepper motor, a feeder part and a cooling fan.
The lower part is used to melt the filament. After which it's extruded through the nozzle. The heating takes place using a heat block. This is the aluminium part at the lower part. This heat block houses 3 parts: The nozzle, a heat element and a temperature sensor. The heat element and temperature sensor are connected to the red wires.
The heat element is turned on until the temperature sensor returns a certain value (270 degreed celcius). At this point the heat element is turned off. And will be turned on when the temperature is below a certain value.
The temperature sensor used in the UP plus 2 is a resistance thermometer of the type PT100. This means that it's a platinum resistor, with a resistance of 100 Ohm at 0 degrees celsius. Platinum is used due to its very linear resistance–temperature relationship. Platinum has a temperature coefficient of 0.00385 Ohms/Ohm/C. This translates to an increased resistance of 0.385 Ohms per degree (for a PT100).
According the PT100 resistance table a temperature of 270 degrees celsius equals 201.31 Ohm. The Up plus 2 printer main board stops heating after reading this value.
To stop heating at 240 degrees celcius requires the main board to stop heating at a lower value: 190.47 Ohms. This requires an additional resistor of about 11 Ohm in series with the resistance of the temperature sensor.
This way the main board receives a value of 201 Ohm, consisting of 190 Ohm (resistance at 240 degrees) and the added 11 Ohm. The Up-software will display a 'measured' value of 270 degrees, but the actual nozzle temperature is 240 degrees!
Step 2: Required Materials
This instructable requires only cheap electronic parts:
- 1 x Prototype board
- 1 x 10 Ohm resistor
- 10 x 1 Ohm resistor
- 1 x JST Connector set
- 1 x Dupont wire
- 11 x Pin Headers (or Dip Switches)
Most parts aren't sold separately. But even then prices are low:
- Prototype board (5 pieces, $3.17) or Prototype board (€2.00)
- Resistor set (600 pieces from 10Ohm to 1 MOhm, $3.07)
- 1 Ohm resistors (100 pieces, $0.85)
- JST - XH 3S Balance Wire Extension Adapter (10 pieces, $1.74)
- Long pin headers (4)
- Dupont wire
- Pin headers ($1.17) or Dip Switches (4 and 8 positions, €1.10)
Those who work with Arduinos might have certain parts in stock.
Step 3: JST Connector
After removing the protective cover, the extruders connector becomes visible. It's located at the left side, with red an blue marked wires.
Measuring the resistance between the wires gives 6.7 Ohm for the red wires and 107.7 Ohm for the blue wires. The value of 6.7 ohm translates to below minus 200 degrees celcius. And the value of 107.7 Ohm translates to 20 degrees celcius.
The red wires are connected to the heat element. We have to add an resistor to the blue wires, to 'alter' the resistance of the temperature sensor.
Placing the JST PH 4-Pin cable to the connector, shows the wire which need an additional resistor (grey, most right).
Step 4: Multiple Resistors
It is possible to place a single resistor (10 Ohm) between the grey wire (most right in the previous step). This will reduce the temperature with 28 degrees to 242 degrees celcius. But this makes it impossible to alter the temperature.
The image shows 10 resistors placed in series. The first (left) resistor has a value of 10 Ohm, the others have a resistance of 1 Ohm. The total resistance is 19 Ohm. This results in a default temperature of 217 degrees celcius.
The resistors can be bridged with a dupont wire. This reduces the total resistance. Placing a wire between 11 and 6 reduces the resistance with 5 Ohm. And increases the temperature to 231 degrees celcius.
There are 20 different combinations to alter the temperature of the nozzle:
Pin1 | Pin2 | Resistance | Temp ABS | Temp PLA ------+------+------------+----------+---------- 1 | 11 | - | 270.0 | 200,0 1 | 10 | 1 Ohm | 267.2 | 197,3 1 | 9 | 2 Ohm | 264.5 | 194,6 1 | 8 | 3 Ohm | 261.7 | 191,9 1 | 7 | 4 Ohm | 259.0 | 189,2 1 | 6 | 5 Ohm | 256,2 | 186,5 1 | 5 | 6 Ohm | 253,5 | 183,8 1 | 4 | 7 Ohm | 250,7 | 181,1 1 | 3 | 8 Ohm | 248,0 | 178,4 1 | 2 | 9 Ohm | 245,2 | 175,7 2 | 11 | 10 Ohm | 242,5 | 173,0 3 | 11 | 11 Ohm | 238,7 | 170,3 4 | 11 | 12 Ohm | 189,3 | 167,6 5 | 11 | 13 Ohm | 234,2 | 164,9 6 | 11 | 14 Ohm | 231,5 | 162,2 7 | 11 | 15 Ohm | 228,7 | 159,5 8 | 11 | 16 Ohm | 226,0 | 156,8 9 | 11 | 17 Ohm | 223,2 | 154,1 10 | 11 | 18 Ohm | 220,5 | 151,4 - | - | 19 Ohm | 217,7 | 148,7
The nozzle temperature can be altered between 270 and 217 degrees (ABS) using this diagram.
Step 5: Prototype Board
I've made the first version using a double sided prototype board.
Start with the resistors. I've soldered these on the upper side of the board. This makes it posible to bend the wires on the solder-side, before soldering alle wires together.
Secondly: Solder the pin headers, bend the wires and solder them together in a straight line. Like in the image from the previous step.
Finally solder the jst-connector and the wires.
Note: It would have been more easy to use a prototype board with lines.
Step 6: Non-PP3DP Filament
Using non-original filament with an UP plus 2 printer requires little more work than the original filament. It takes some test prints to find the optimal nozzle temperature.
After finding the right temperature setting everything works as normal.
When switching filament use the highest temperature from the two types of filament.This will remove all 'old' filament out of the nozzle. Then switch to the required temperature.
Step 7: Dip Switches
This step describes some improvements to the prototype. At first, the dupont-wire is replaced by dip-switches. Secondly, the jst-connector is replaced by long pin headers. And is now placed at the back of the print plate (second image). This provides better placement on the printer. And finaly I've used a different type of prototype board. This makes it easyer to solder.
This version is slightly different than the prototype. It has less temperature settings:
switch | Resistance | Temp ABS | Temp PLA ---------+------------+----------+---------- 1 | - | 270.0 | 200,0 2 | 10 Ohm | 242,5 | 173,0 3 | 11 Ohm | 238,7 | 170,3 4 | 12 Ohm | 189,3 | 167,6 5 | 13 Ohm | 234,2 | 164,9 6 | 14 Ohm | 231,5 | 162,2 7 | 15 Ohm | 228,7 | 159,5 8 | 16 Ohm | 226,0 | 156,8 9 | 17 Ohm | 223,2 | 154,1 10 | 18 Ohm | 220,5 | 151,4 11 | 19 Ohm | 217,7 | 148,7 12 | 20 Ohm | 215,0 | 147,0
Note: Switch 1 is near the connector.
Placing a switch in the ON-position shortens the 'resistance-path'. And the lowest switch-number determines the temperature setting. Eg, switch 5 and 6 gives the temperature for switch number 5 (234 degrees celcius with ABS).
Step 8: Placing the Board
The board is placed on the protective cover with double-sided tape. There is no need to modify the cover or any other parts of the printer. It is therefore easy to restore the printer to its original state.
Note: The first image shows: switch 1 to 4 turned off, and switch 5 to 12 are turned on. This gives a temperature of 234,2 degrees. This temperature is from the PT-100 resistance table, the actual temperature can vary a little.
Step 9: Test Print
This test file can be used to try different nozzle temperatures. The object is 70 mm high, and it takes about 40 minutes to complete. Start with one temperature (eg. 242 degrees) and decrease the temperature each 5 minutes.
The temperature is too low when the filament is not sticking to the previous layer. Or when you are getting a rough surface. This results in a part which is not strong and can be pulled apart easily.
The temperature is too high when you see strings between the separate parts of a printed part.
Thanks to this simple upgrade, it is now possible to use different brands and types of filament.
A full reinstall of one of my laptops required met to download the Up software. And the Tiertime download page showed different software for my printer:
- Up studio for windows (beta)
- Up 2.1.8 for windows
I was curious about the difference between the Studio and regular version. And I downloaded the latest studio version from Github. The new software requires registration at Tiertime, but It has a big advantage over the regular software.
The maintenance menu allows to add customized filament. I've created a filament type AREAL, with a nozzle temperature of 230 degrees and a platform temperature of 80 degrees. All without modifying the printer.