Multi material upgrade port is now operational but not perfect. I need to spend more time on config file.
The melted filament tip needs some proper unload gcode so it can be formed with sharp shape and diameter as close to original 1.75mm.
I think i need to add a sequence so the filament can cool down a little in the ptfe tube before it's moved past bondtech drive gear.
Without changes in unload gcode right now the filament can be loaded and unloaded only once without jam. Any additional filament change jams most of times.
This wasn't the only problem...
Klipper firmware doesn't support single nozzle multi material system like mmu2.
You have a shared heater function but You need to add additional extruder motors for every tool... And no... they can't have the same pinouts as main extruder. So i've added a lot of additional gcode commands for tool changing. The mmu2 unit working on secondary smoothieboard in multi mcu configuration using manual_stepper function.
The next problem was the slic3r. PE.. Integrated wipe towers works only with original mmu2. Workaround for this is to add manually prepaired purge-tower.stl for every tool and use "purging into part" function.
But that's not all... When klipper firmware gets a tool selection command from host other then "T0" and You don't have that tool in config it will not skip this gcode... it stops printing (for safty matters). So every sliced .stl needs to be postprocessed with a script. I've changed all tool names to from T0 to CT0, T1 to CT1 etc. for current tool. Also added PT0, PT1 etc. for previous_tool slic3r placeholder, so the filament selector could know what to do.