I have a rooted Creality K1C. There is a problem in the slicer settings: in the printer settings, the filament change command is set to M600.
During printing, the printer parks correctly for the filament change. I replace the filament and press resume. The print head moves back to the model, but it does not print and instead returns again to the filament change position. Only after the second filament change does the printer continue printing normally.
Klipper does not use recognize M600. There is a macro available to add to the gcode_macro.cfg to implement M600. I installed this maco on my K1c but found it did not work as I expected.
I use the pause command in the slicer set at the layer height I required then use the UNLOAD / LOAD buttons to change the filament. Then the resume button the continue printing.