-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] G76 - Probe temp compensation error #16995
Comments
Config file is 010109 ie older marlin. Please try current bugfix 2.0.x |
Oh? How´s that possible, I downloaded and built Marlin Bugfix 2.0.x last week and only edited the configs (not import). |
Hmm, the configs look ok to me — both have 020004 as the version. Quick note that |
I'm must be senile.. version is 20004... not sue how I mucked that up. |
Your // Ensure probe position is reachable
destination.set(
temp_comp.measure_point_x - probe.offset_xy.x, // 50 - 10 = 40
temp_comp.measure_point_y - probe.offset_xy.y // 50 - 60 = -10
);
if (!position_is_reachable_by_probe(destination)) {
SERIAL_ECHOLNPGM("!Probe position unreachable - aborting.");
return;
} But it seems like there could be some bad logic going on… inline bool position_is_reachable_by_probe(const float &rx, const float &ry) {
return position_is_reachable(rx - probe.offset_xy.x, ry - probe.offset_xy.y)
// 40 - 10 = 30, -10 - 60 = -70
&& WITHIN(rx, probe.min_x() - slop, probe.max_x() + slop)
&& WITHIN(ry, probe.min_y() - slop, probe.max_y() + slop);
} |
Other uses of // Point where the probe would be when the nozzle is over the measure point
destination.set(
temp_comp.measure_point_x + probe.offset_xy.x, // 50 + 10 = 60
temp_comp.measure_point_y + probe.offset_xy.y // 50 + 60 = 110
); …but I believe the author (and myself) just missed that destination.set(temp_comp.measure_point_x, temp_comp.measure_point_y); I'll push a patch shortly. |
So I just tryed reducing my nozzle offsets - didnt do anything Then I changed both lines containing the values you posted in G76_m871.cpp and it didnt work either.
|
Oh, I think there is an error in your fix
G76 starts now, will report back when i finished everything |
Oh, hi. Have a look at #17005. It looked to me like the probe position was not really referring to the position of the probe. So other changes are made there too. |
Thank you, everything works now, did a full calibration run! |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Bug Description
Send: G76
Recv: !Probe position unreachable - aborting
Configuration_adv.txt
Configuration.txt
My Configurations
Both config files attached.
excerpt:
Steps to Reproduce
Using
G76
always produces same error, no matter what "probe pos" and "park pos" is set. Nozzle-Probe offsets are correct. Prints fine, Auto level works fine.Expected behavior: [What you expect to happen]
Temperature compensation calibration via
G76
worksActual behavior: [What actually happens]
Additional Information
I just dug out my Wanhao Duplicator I3 and did a few upgrades including SKR 1.4, TMC 2130 SPI and an inductive Z-probe.
It auto levels and prints fine but now I wanted to add temperature compensation for the probe by adding a thermistor. I installed a new thermistor to my probe using thermal compound and capton tape and set it up succesfully in Marlin 2.0 Bugfix. It compiled fine and the FW outputs the correct temp values for Probe Temp in addition to Nozzle and Bed temp.
When I run
G76
I always get the same error, no matter what settings I apply for "park pos" and "probe pos".Homing before doesnt make a difference.
My offsets are correct and the specified position is reachable manually.
The text was updated successfully, but these errors were encountered: