Hello everyone, this is my first post to the forum. Had a love/hate relationship with Marlin for nearly 6 years and now I'll be starting a new IDEX printer build, and I want to use Duet WiFi and a Duex2 because of all the great work you have done with both the hardware and the firmware.
I was looking at the firmware documentation, realized I need to have perfectly level nozzles and bed for printing multiple copies with IDEX (aka Tandem printing). That is actually not required if you have multiple independent Z motors though.
It is already possible to do automatic tilt correction with independent z motors at the beginning of a print, well this feature is pretty much the same thing, only actively correcting the tilt during the print.
I guess we could call it "IDEX active tilt correction". Calculation is pretty straightforward. You only need to have a single bed height map (a single probe on the first carriage) and know the z-offset of the nozzles. With these information, given the seperation distance of the nozzles (usually half the length of x-axis) you can construct a tilt correction map, which actively compensates the tilt according to current X position.
Bed leveling and nozzle offsets should be within plus minus 1mm range to avoid excessive tilt correction, which would put strain on the z motors and joints, but that should already be the case even with a roughly level bed and roughly aligned nozzles.
I hope I managed to explain the idea, let me know if you want me to prepare some drawings to make it more clear. I wish I had the programming skill to convert the idea into a PR but I need your support on this one. I believe this is an important improvement for tandem printing, which will make it easy and reliable. Reprap Firmware already has the required components for tilt correction using multiple z motors, so should also be easy to implement here.
(Also, I like the fact that Duet + Duex2 has 7 motor drivers and IDEX with 2 independent z motors will need exactly 7)