Dialing in TPU on the Prusa XL
As far as printer filament goes, TPU is weird. It is the one filament that is always north of the glass transition temperature when you’re working with it. That is, it’s already closer to melted than solid and that’s the whole point. It prints as a flexible material. Can be used to provide soft bumpers or gripping surfaces. Or basketballs.
As such, TPU needs a radically different configuration than printing with PETG/PLA or the other filaments that are actually solid.
First, TPU is extremely hygroscopic. It sucks up water from the atmosphere like a relative sponge compared to PLA or PETG. So, make sure the filament is dry. For this run, I dried at 47°C and put the filament dryer on a postal scale so I could record weight loss. The first 80 minutes dropped 248g (3,320g → 3,072g). The next 3.5 hours lost only 4g more. Obviously, how quickly filament dries depends entirely on surrounding environment, but the typical recommendation of more than 8 hours is total overkill.
The Prusa XL uses long bowden tubes to feed filament to the print heads. TPU does not work well with bowden tubes. Too much friction and too flexible, so it tends to not feed well at all and causes all kinds of pressure issues at the print head. Thus, the first step was to eliminate the bowden entirely by going to direct feed by hanging the filament spool over the printer and direct feeding.
Because the XL is physically not compatible with TPU as a filament, it also doesn’t provide any presets for using TPU. If one naively simply takes a regular filament preset and modifies the print temperatures to print at the temps recommended on the filament’s box (220°C), the result is an utter mess.
Add a TPU preset on the Prusa XL itself. Set the nozzle temperature to 205°C and turn off auto-retraction. The rest of the settings are acceptable for a project where TPU is embedded in other filaments that are printed on the bed. To undo the landmine I set for future self, I set the bed temperature to 50°C after taking the screenshot.
Actually fixing the problem required changing a TON of parameters. In this case, made more complex because I wanted to print a TPU gripping surface onto the yellow PETG. Thus, the changes made to support TPU had to remain compatible with PETG.
Details inside….



