Full dual gantry support: IQEX and ITEX printers

Also, @Dan3dp, @transmutated, I understand you are running a version of Formbot Xplorer? Could you run klipper resonance test and share the results (at least, shaper calibration charts) for X and Y axis? Ideally, Y axis for both gantries and with one and two toolheads in the middle? For X axis, perhaps just 1 toolhead or all 4 if you have time. I’m genuinely curious about the results.

@dmbutyugin I’m wrapping up running the full gauntlet of resonance tests now. I’ll share my repo where I save it all and where my configs live as well. I’ve run a full iqex tests for copy and mirror modes, full idex modes for gantry0, and individual tools which I’m half done with now. Graphs and values to follow shortly!

Alright, graphs and configs here: formbotXplorer/config/03_Resonance_Measurements at main · cgarwood82/formbotXplorer · GitHub

I’ve never actually run the full gauntlet of tests since I moved everything over all of my mods. Looks like I need to do some work on my gantry1 x axis tools as they are way lower than what I get from my gantry0 tools. Y is my limiting axis. I upgraded to beefier x motors which allows for wild accels…but y has a long belt and I think I may also be limited by how it connects to the carriage. No idea. I’m no engineer, just a 3d printer nerd how likes to hack on stuff :smiley:

My favorite printer, that’s for sure.

Thanks for sharing! Y axis is indeed a limiting factor, but the results are not too bad. FWIW, I actually suppose that unsupported rails could be a problem, as linear rails are designed to be attached to something, and lack sufficient rigidity on their own. You could test this hypothesis by placing the carriages on the sides of the gantry (at min/max positions) and rerunning Y axis tests - if the resonances turn out to be higher frequency than when a carriage is placed in the center of Y gantry, that would support this hypothesis. And if the resonances stay the same, that would be indicative that the limiting factor is something else - e.g. the rigidity of the belts, Y gantry mounts, Y motor mounts, frame, etc.

Sorry for the late reply. …..:upside_down_face:

I ran the following scenarios:

  1. Tool 0 standalone.

  2. Tools 1, 2, and 3 copy Tool 0 (the measurement was done on the sensor from Tool 0).

On another topic: Is there any chance you could merge a feature for Nozzle XYZ offset calibration into the main Klipper branch?
For IQEX, I use a modified version of this script: tools_calibrate.py

However, since Klipper was updated two months ago, there is no longer a version of tools_calibrate.py that works for IDEX, it doesn’t matter if make the configs for IDEX as ‘cartesian‘ or as ‘generic-cartesian

Since there are all sorts of toolchangers and multi-tool 3D printer projects out there, I think it would be cool to have a calibration function directly inside the main Klipper.

I was going to give this a shot, not that it matters but you wanna rebase with upstream? I’ll give this a go once you do :smiling_face_with_sunglasses: