Originally Posted by
Roxy
I do not think this is very difficult to do. There would be a couple of approaches. Probably the simplest and most straight forward method would be to modify the run_z_probe() function to return values that were compensated. These values would bubble up to the G29 code that is collecting them and the Bed_Level_Correction_Matrix that is needed for the rest of the moves would have this factor built into it.
It would not be difficult to make it selectable on either of two basis. It could be made so it was optional for a machine and gets built into the firmware with a #define in the configuration.h file. It would also be very straight forward to add a parameter to the G29 command to build the Bed_Level_Correction_Matrix with this factored in.
Assuming the firmware existed, the process of setting up a printer to use this would not be hard. It would involve taking a measurement on one side and comparing it to when you manually adjusted the nozzle to just barely touch the bed. And then repeating it on the other side of the bed.
Hey! I have an idea... Would it make sense to get one machine all the way working before you ramp production? :)