Creality CR-20 Pro 3D Printer (CE06743)

This is a placeholder topic for “Creality CR-20 Pro 3D Printer” comments.

An upgraded model with notable features such as auto levelling, flexible magnetic print surface and much more.

Read more


I don’t believe this product actually has a filament runout sensor unless there has been some special order arrangement?

1 Like

Nice find on this new listing Barry, that’s an add-on. I’ve updated the listing.

Mine came with Marlin 1.1.6 firmware. This has serious problems on the CR20 Pro in regards to the Z offset as well as Z axis stability above the bed occasionally. For example I had the print head dig into the bed instead of being raised. Marlin 2.0.5 fixes these problems and makes it much easier to set the Z offset. Get the hex file from and read the notes about changes to the way the Z offset is now set.

Cura (the slicing software) allows you to upgrade the firmware from a hex file. You need to be connected by USB and have added the printer. Go to Settings/Printer/Manage Printers then select your printer. Click Update Firmware and select the hex file you downloaded from Github.

The Z offset is required to take into account the difference in height of the blue touch probe and the extruder nozzle. When you change the nozzle you have to remove and later replace the probe and hence need to reset the Z offset.

The instructions for 2.0.5 tell you to store the settings after setting the Z axis. Before you print via the USB (eg using Octoprint) make sure that you level the bed and save the settings.

With 1.1.6 I had hassles setting the Z offset but was lucky to have good printing for a week. Then print aborts became regular and after trying to do a Z offset things went really bad and my magnetic bed was trenched.

With 2.0.5 it was easy to set the Z offset and printing is now excellent.


Great advice John, thanks for sharing.

I forgot to add that I’m using PLA with 200 degrees for the extruder and 60 degrees for the bed and 30% for the fan speed. I found in the first day or 2 that 30% fan speed was needed for bed adhesion and the default 100% didn’t work. I’m still using these settings and the results are so good I’m reluctant to change them.


Is it CR-20 pro equipt with E3D extruder or the CR-10V2 does? come on they are so confusing.

1 Like

Hi Courier, the CR-20 Pro comes with the Mk10 adapter:

1 Like

Hi I’m hoping you can help me, I’m trying to update the firmware on my Cr20pro but having no luck when I try thru Xloader it keeps coming up “update failed”
To add update using cura do I download the marlin 2 from GitHub and download it to cura?
I’m totally new to 3d printing so any help would be greatly appreciated

Hey David,

Welcome to the forum!

Checkout this page from all3dp on how to get the firmware of a printer updated via Cura.

That tutorial is for the Ender 3 V2, but should be a very similar process for the CR-20.

Thanks Owen I’ll check it out

1 Like

I’ll need to get myself up to date on this. I’ll get back to you in the next few days. I’ve only been back to 3D printing again for about 2 weeks. I had to spend many hours to get things like temperature of the filament and bed right.

I’ve switched to using Australian made PETG from Aurarum rather than PLA. I want strength and parts that don’t degrade with water and sunlight. Results are great.


PETG is the way to go!

Another possible option would be ASA, but you’ll need to be careful using it, as I find it can be a fair bit more temperamental depending on print settings :grin:

David, please use Cura to upgrade the firmware as per my advice many months ago. You don’t need to use Xloader. Follow my instructions precisely. Marlin supports many 3D printers but the compiled firmware is based on a configuration file.

Someone went to the trouble of setting up the configuration file properly for the Creality Pro-20 and compiling Marlin. The hex file I used and you should use is the result of that effort.

I’ve been running my printer day and night for the last couple of weeks using PETG and will not go back to PLA. I’m running at the high end of temperatures for the bed and nozzle. Bed adhesion and “stringing” of filament are issues otherwise.

It depends on the model what build plate adhesion to use. I use “raft” for complex bases but set the “raft extra margin” to 3mm and “raft top layers” to 1.

I highly recommend OpenSCAD. Watch some video tutorials first and start with simple designs. It is amazing how easy it is to build complex parts with precise dimensions from cylinders and cubes.

1 Like

Hi John,

Checkout Tim’s latest video. He’s using varying nozzle temperatures to get good bed adhesion while minimising stringing. High temps initially then switches over to a cooler temp to increase the viscosity once the support is there.

1 Like

As a follow up to my OpenSCAD recommendation here are a couple of images. One is the corner module in OpenSCAD. I can make enclosures of any size using 3D printed parts and acrylic sheet.

This is not a simple design. However it shows what can be accomplished by breaking up the task into several modules then adding and/or subtracting modules.

Note the use of screw threads and adding depth to make them effective. The reinforcement design is such that no supports are required when 3D printing.

The uprights that slot into the corner modules are printed flat so if printed diagonally can be up to about 300mm long. Joiner modules can extend that.



Hi John
I appreciate your help as I’m totally new to printing and with so much different info it gets confusing
What is the exact hex file I need to download from GitHub ?

1 Like

This is the hex file I used. I had to zip it to upload it.

CR-20 Pro (142.2 KB)


Hi John
I had the same experience. However, this weekend I updated to Marlin (CR-20 Pro version) and, unfortunately, the Z axis offset doesn’t work anymore as in 2.0.5. II follow the same instructions as before and can move the Z-axis into the minus, however, psyically nothing happens, i.e. the nozzle doesn’t move down and remains above the bed, thus, printing into the air. I compare the configuration files, but couldn’t find the reason so far.


I’ve spent a little while trying to find out where you got Marlin without success. The Creality site still has the defective 1.16. I suspect someone has tried to create based on 1.16 settings rather than base it on 2.0.5. I would go back to 2.0.5.

1 Like