Creatbot D600 Klipper upgrades
We calculate the final price from your selected file. You review and accept it before payment.
Saved on this device.
Model information
- Source
- Printables
- Category
- Other Printer Parts & Upgrades
- License
- Creative Commons — Attribution
The project:
I got an awesome printer renovation and conversion project from a colleague at work.
Converting and upgrading a Creatbot D600 industrial 3D printer.
It has a massive 600x600x600 build volume and dual extruder with 5KG spool holders on ball bearings.
Originally, the printer comes with a Marlin v1 firmware with no network connectivity, no bed levelling nor webcam monitoring. This is quite old school nowadays when we have klipper.
Several objectives:
Convert to Klipper
Write the full klipper config for the printer
Brings network connectivity
Webcam monitoring
Remote control
Flexibility for upgrade and multi-mcu support
Add bed levelling probe
CR-touch
Improve part cooling fan solution
Support dual extruder setup
Create Orca Slicer profiles
For PLA
For PETG
Conversion to klipper:
Here is the hardware we are playing with:
Creatbot mainboard is V9.2.1 (common to many models)
4x 110/220VAC to 24V DC power supplies
4x solid state relays for 4 heating pads 30x30cm driven by 1 output
1x temperature probe on the bed
2x extruders on the toolhead (0 and 1)
2x AD597 nozzle temperature probe
2x Heater cartridges
2x NEMA17 extruder stepper with gearbox
2x filament runout sensors
2x heatbreak fans
driven by a common output
3x TB6600 external stepper drivers with fan cooling
one of each X,Y,Z axis steppers, they are huge so I guess Creatbot needed something stronger than TMC2209s ?
I based my work around the reverse engineering of kForth on github for the F430 model.
Many thanks for the work done here !
https://github.com/kForth/CreatBot-F430-Info#creatbot-f430-information
Klipper Host:
For the Klipper host, I used a BTT-PI V1.2 and designed a clamp to attach it on the machine edges. One of the 24V PSUs provides the power for it on the 24V power plug.
I used this case:
https://www.printables.com/model/863832-bigtreetech-btt-pi-12-case-for-wall-mount-or-2040/files
Software installation:
You can follow kForth's instructions to backup the original firmware eeprom and install the klipper binary using AVRDude. Works like a charm !
Compiled Klipper for Atmega2560 in make menuconfig and I flashed the hex file using avrdude.
Stepper drivers:
Stepper drivers fan control:
The stepper driver fans are extremely noisy.
In order to reduce the noise, I used an LM2596 DCDC buck module and desoldered pin 5 to use it as a PWM fan control. I also put a pull down of 100kOhms to have the fans ON by default.
I cut the fans off of the stepper drivers and connect them to the DCDC module with a small breakout for JST terminals.
I used Extruder3 port on the mainboard to pin the 24V and enable signal with a small breakout PCB.
In Klipper, using controller_fan on stepper_x,y,z the fan will only turn ON when the steppers are active. On idle the printer is 100% silent.
Stepper drivers signals:
When I first tried to have klipper print a cube I had some missed steps. I figured out it was due to the “Step pulse duration” in Klipper. Since we use external stepper drivers and not onboard ones, the signal integrity constraints are not the same (wire length). A pulse time of 16us (for x/y/z only) was necessary to get the steppers to work properly. With microstepping of 16, we can only reach around 120mm/s before getting the “Stepper is too far behind” error from Klipper.
Actually the ATMEGA 2560 is too slow for 120+mm/s. By reducing microstepping to 8 on the TB6600 microswitches, you can reach 250mm/s. With acceleration of 3000mm/s2 the speed is now decent.
Microstepping/Resolution/Max Speed
x16 → 9.35um → 120mm/s
x8 → 18.75um → 250mm/s
Bed levelling probe:
I couldn't find a nice way of connecting a CR-Touch probe to the mainboard without struggling a lot with cable routing. I couldn't use the existing wires either. I used a RP2040 Pro micro as toolhead MCU which I connected to the BTT-PI using a 5m long USB-C 2.0 cable.
I installed klipper on the RP2040 and connected the CR-Touch to it.
I attached the CR-Touch where the stock (shitty) part cooling fan was installed with a small 3D printed bracket. The probe is nicely centered and far enough from the hot ends.
Part cooling fans:
For the part cooling fans, I have decided to have 2x custom designed radial fans with ducts attached to each extruders steppers. This way, they suck air farther away from the heated bed and are not taking too much space.
They are designed from older ASUS radial fans B6015L12F NF1 on which I scavenged the motors/wires and designed an enclosure around them. The duct is then spraying cool air on the 2 nozzles providing good part cooling.
The 2x fans are controlled by the stock 12V port on the toolhead PCB, I just added a small breakout board to allow connecting the 2 fans.
Fans here:
https://www.aliexpress.com/item/32984671832.html
You must move the X-axis end switch with the spacer to make sure the ducts don't collide with the Y axis rails.
Config files:
Klipper config files are separated into several blocks:
printer.cfg
Top level to include different features based on how you made the upgrades
General printer configuration hardware agnostic
mcu_creatbot.cfg
Mainboard I/Os and configs
mcu_toolhead.cfg
Config for RP2040 toolhead MCU
I will probably add a ADXL345 config later too
probe_crtouch_toolhead.cfg
Config for the cr-touch on RP2040 MCU
probe_crtouch_linux.cfg
Config for the cr-touch connected on the BTT PI board (untested, I prefered the toolhead MCU instead)
mcu_linux.cfg
Config for the host MCU in case you use the I/Os on the BTT Pi itself (unused in my case, just compiled the linux-process according to the klipper docs)
MAD: Modular Air Duct and BIQU H2V2S REVO upgrade
I decided to give up on the stock dual extruder and 3mm filament to move to a single extruder using the BIQU H2V2S Revo and I therefore customized the excellent MAD design to fit the Creatbot D600.
Thanks for @Predy for the excellent work !
BOM for the upgrade:
Part | Qty | Link |
EBB42 CAN no max31865 | 1 | |
Fysetc StrideMax Dual FD TMC5160 | 2 | |
Creality CRtouch | 1 | |
BIQU U2C 2,1 | 1 | |
BIQU V2,0 Smart filament sensor | 1 | |
BIQU H2V2S Revo | 1 | https://biqu.equipment/products/biqu-h2-v2s-revo-extruder?variant=40066234908770 |
BIQU PI V1,0 | 1 | |
5015 blower fan 24V | 1 | |
Tronxy 600x600 bed | 1 |
You'll need some various M3 screws for the MAD kit, some M3 heatset inserts and some wires and crimping pliers to make the wiring.