September 10, 2021
Description
I really like the extruder of @Vez3D youtube channel and looking for it for a while. Finally @MAMSIH release his Hextruder which really impressive. I love his design but for me it have some problem:
Therefore my design address this problems by:
See @MAMSIH page for more detail
Note: Print with support on build plate only
Note: with this direction there are some flaw in the model that it is not flat. You can use split model of prusaslicer and cut 0.5mm.
Use this GCode in “Start G-Code” in printer setting section:
M92 E705 ; Direct drive extruder steps
M906 T0 E300 ; Extruder current refBeside configure step and motor current, you can callibrate “linear advance” K value (search google for it) for better result. For me, I user K value of “0.08”, insert this GCode in “Start G-Code” in filament setting section:
M900 K0.08Note: comment 2 default line of prusa.
The default retract distance profile for the Mini is 3.2mm, this is considered to be pretty long for Direct extruder. I set it up to 1mm (or 0.8mm similar to MK3S)
Currently I'm very happy with my setup. I can print 2x faster with better quality and I confident I can print even faster.
It will be a little tricky when you need to load/unload or changing filament. While Prusa Mini use bowden extruder, the load/unload distance is 420mm long (the number is in the firmware) this is not good for direct drive (around 61mm with my setup). So, there are 3 ways to combat with whis:
M701 /M702 to load/unload filament.ADVANCED_PAUSE_FEATURE section, my configurations right now:#define ADVANCED_PAUSE_FEATURE
#if ENABLED(ADVANCED_PAUSE_FEATURE)
#define FILAMENT_UNLOAD_RAMMING_SEQUENCE \
{ \
{ 1, 100 }, \
{ 1, 300 }, \
{ 3, 800 }, \
{ 2, 1200 }, \
{ 2, 2200 }, \
{ 2, 2600 }, \
{ -2, 2200 }, \
{ -20, 3000 }, \
{ -30, 4000 }, \
}
#define PAUSE_PARK_RETRACT_FEEDRATE 20 // (mm/s) Initial retract feedrate.
#define PAUSE_PARK_RETRACT_LENGTH 2 // (mm) Initial retract.
// This short retract is done immediately, before parking the nozzle.
#define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10 // (mm/s) Unload filament feedrate. This can be pretty fast.
#define FILAMENT_CHANGE_UNLOAD_ACCEL 625 // (mm/s^2) Lower acceleration may allow a faster feedrate.
#define FILAMENT_CHANGE_UNLOAD_LENGTH 80 // (mm) The length of filament for a complete unload.
// For Bowden, the full length of the tube and nozzle.
// For direct drive, the full length of the nozzle.
// Set to 0 for manual unloading.
#define FILAMENT_CHANGE_SLOW_LOAD_FEEDRATE 10 // (mm/s) Slow move when starting load.
#define FILAMENT_CHANGE_SLOW_LOAD_LENGTH 30 // (mm) Slow length, to allow time to insert material.
// 0 to disable start loading and skip to fast load only
#define FILAMENT_CHANGE_FAST_LOAD_FEEDRATE 10 // (mm/s) Load filament feedrate. This can be pretty fast.
#define FILAMENT_CHANGE_FAST_LOAD_ACCEL 625 // (mm/s^2) Lower acceleration may allow a faster feedrate.
#define FILAMENT_CHANGE_FAST_LOAD_LENGTH 20 // (mm) Load length of filament, from extruder gear to nozzle.
// For Bowden, the full length of the tube and nozzle.
// For direct drive, the full length of the nozzle.
//#define ADVANCED_PAUSE_CONTINUOUS_PURGE // Purge continuously up to the purge length until interrupted.
#define ADVANCED_PAUSE_PURGE_FEEDRATE 3 // (mm/s) Extrude feedrate (after loading). Should be slower than load feedrate.
#define ADVANCED_PAUSE_PURGE_LENGTH 50 // (mm) Length to extrude after loading.
// Set to 0 for manual extrusion.
// Filament can be extruded repeatedly from the Filament Change menu
// until extrusion is consistent, and to purge old filament.
#define ADVANCED_PAUSE_RESUME_PRIME 0 // (mm) Extra distance to prime nozzle after returning from park.
// Filament Unload does a Retract, Delay, and Purge first:
#define FILAMENT_UNLOAD_RETRACT_LENGTH 30 // (mm) Unload initial retract length.
#define FILAMENT_UNLOAD_DELAY 5000 // (ms) Delay for the filament to cool after retract.
#define FILAMENT_UNLOAD_PURGE_LENGTH 16 // (mm) An unretract is done, then this length is purged.
#define FILAMENT_UNLOAD_PURGE_FEEDRATE 20 // (mm/s)
#define FILAMENT_UNLOAD_PHASE1_LENGHT 35 // (mm)fast phase
#define FILAMENT_UNLOAD_PHASE2_LENGHT 45 // (mm)slow phase
#define PAUSE_PARK_NOZZLE_TIMEOUT 45 // (seconds) Time limit before the nozzle is turned off for safety.
#define FILAMENT_CHANGE_ALERT_BEEPS 10 // Number of alert beeps to play when a response is needed.
#define PAUSE_PARK_NO_STEPPER_TIMEOUT // Enable for XYZ steppers to stay powered on during filament change.
// #define PARK_HEAD_ON_PAUSE // Park the nozzle during pause and filament change.
//#define HOME_BEFORE_FILAMENT_CHANGE // Ensure homing has been completed prior to parking for filament change
#define FILAMENT_LOAD_UNLOAD_GCODES // Add M701/M702 Load/Unload G-codes, plus Load/Unload in the LCD Prepare menu.
//#define FILAMENT_UNLOAD_ALL_EXTRUDERS // Allow M702 to unload all extruders above a minimum target temp (as set by M302)
#endifLicense:
Creative Commons — Public Domain
7