Hi Bill,
Thanks for all your amazing work on this sweet project! Top notch effort to bring something to the world market that is helpful for so many people at an affordable price. Not an easy goal but a noble one.
#1 I wanted to let you know that I designed a new switch mount for the K1 Max. This one moves the switch to a location where the extruder assembly will NEVER crash into it. The switch is only ever triggered when the entire Y carriage is moved up past the printable area. On my machine the switch triggers at Y303-Y306 (the machine max limit). The only time the machine moves up that far is during the "Clean Nozzle" portion of the Start_Print macro. It stays up there long enough that the 3D Chameleon gets about 50 pulses then ignores the switch. In other words its a better solution with fewer drawbacks. I am not sure if this mount fits the K1 or K1c but I think it will.
#2 I have been trying to get this setup and running for several days now. One of the issues I see is that sometimes I need to use a 20 second delay for the filament to get to the drive gears and sometimes I only need a 14 second delay. I don't understand what is causing the difference. I suspect that my K1 is doing something that is making it take longer to count to 20. Not sure what that might be. But at one point I ran a macro that said to press the button for 14 seconds and it actually waited 20 seconds on my stopwatch. If you have any ideas please let me know. I just discovered the M220 S100 command and I will add that to see if it solves the issue.
#3 What is the actual feedrate that the 3D Chameleon MK4 is using to load the filament? Because the handoff between the Chameleon and the Extruder should match the same feedrate. I have seen samples of Gcode on this forum, in the Gcode generator and in the Prusa Slicer profile you have on printables use either F1500 or F2000. I have tried to figure it out via trial and error but issue #2 (I mentioned above) and many, many others have left my testing results unreliable.
#4 What does the triple click clear active commands actually do? Does it trigger an actual sub algorithm that resets something? Because I have seen strange behavior. I added that to my End Gcode to use before I called 6 pulse unload and home. The chameleon forgot I had filament 4 loaded and instead tried to unload filament 1. Was that caused by my machine not triggering the triple click correctly and accidently doing one pulse then an unload and load time? I read in another thread that my machine could be moving into and out of position too slowly and the switch is staying triggered for longer than expected. Is that my issue or does the triple click reset the chameleon to thinking it has filament 1 loaded intentionally?
#5 I am worried about the extra drag that the chameleon adds to the filament when it is not engaged (idle). With the K1 series the print profile speeds are pushing the extruder to its limit to force the filament as fast as it can. Any additional drag on the filament will result in under extrusion or slower print times. Looking at the 3D model of the Chameleon it looks like that even when the selector is disengaged the filament has to bend around the idler bearing. I know you have different tension inserts I could try but that would trade off tension when the drive gear is engaged. Have you considered or tested a version of the Chameleon where the Idler bearings are not just static spring loaded in position but they are mechanically pressed into and out of position to engage the drive gear when needed? I am envisioning a lever action that could pivot around the M3 stepper motor mounting bolts. Have you tried it? How did it go? If you have not, then I may eventually attempt to prototype something like that myself and share the results with you. But I gotta get this thing working first.
#6 In my failed attempts to get this working I have sometimes (maybe once an hour) noticed that the selector needs to be rehomed at random. This is evident when I load the correct filament but the chameleon is still holding onto it a little too much. When I see this I can usually do a 7 pulse home and the problem is corrected. But I am worried that may happen during a live print and cause a failed print. Have you seen this behavior before? Like I said I have been trying to get this to work for several days. The Chameleon has been plugged in the whole time and it seems like the steppers never disengage. They stay warm all the time. I now find myself homing the selector before every test to ensure it isn't causing an issue.
I plan to help give back to the community you have created. When I do get this working I plan to create an install and configuration video for the K1 Max. So, I may be asking many more questions to make sure I get it right.