Closed jim2386 closed 3 years ago
A lot of things in Marlin are hard coded because the 8-bit micros simply do not have enough RAM for run-time configuration of very many parameters.
Furthermore, adjusting probe points on the fly does not make sense. What Marlin records is the physical position of the probe points, in millimeters, not the steps between probe points. This does not change and can, under ordinary circumstances, be compiled into the firmware.
My guess is that you have something older than a Mini 2 or a TAZ Workhorse/Pro? For older printers, when LulzBot made their firmware, LulzBot incorrectly fudged the steps in order to account for ABS shrinkage. They set the steps to 100.5 when in reality it ought to be 100. This is absolutely incorrect and as a consequence the default steps per mm are incorrect, which also means that the recorded distance between probe points is incorrect to compensate.
The correct way to solve this would be to measure the actual motion of the toolhead and set the steps so that the toolhead is moving the correct amount in millimeters. This should be measured at the toolhead, not by measuring a calibration print, as compensating for material characteristics is something that should be done in the slicer, not the firmware. Once the printer is calibrated correctly, then one could measure the actual distance between probe points on the bed and hard code that into the firmware. Everything would work at this point.
However, given that LulzBot did it incorrectly in the first place, you run into the problem you are describing if you try to change the steps. If you give me the correct number of steps for the printer, I may be able to adjust the probe points in drunken-octopus.
The latest firmware adjust the X and Y steps so it is closer to true and gives more dimensionally accurate parts. That firmware also adjusts the probe points. This should allow you to reach all probe points without problems. Please give it a try and let me know whether it works better.
Hi Marcio,
I hope this is the right place to put this. One of my biggest pet peeves with Lulzbot firmware is that the g29 probe locations are hard coded into the firmware. Sometimes the nozzle doesn't probe the corner of the washer as it should. The main time this happens is when I change x and y steps on the LCD. I use X and Y steps to calibrate cubes to ensure my parts are dimension-ally accurate.
However, when I change the X and Y steps, this inadvertently moves the G29 washer probe location because the firmware (I assume) goes over so many steps and assumes the washer to be there. If there was a way to either do the following:
or (and better)
I've seen enough people struggle where the nozzle doesn't quite hit the top of the washer, or the nozzle moves too far and hits the screw head in the middle of the washer.
Is there a way to add a feature to set probe locations without a firmware recompile by the user?
Thanks! Jim
Description
Steps to Reproduce
Expected behavior: [What you expect to happen]
Actual behavior: [What actually happens]
Additional Information
Configuration.h
andConfiguration_adv.h
files.