MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.23k stars 19.22k forks source link

[BUG] M48 not completing #26559

Closed Tannoo closed 9 months ago

Tannoo commented 10 months ago

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

Execute M48 homes all axi and stops with saying the probe is out of bounds.

Bug Timeline

Noticed when setting up and testing a BLTouch for the first time.

Expected behavior

It needs to return the probe to a probe-able point and continue.

Actual behavior

Execute M48 homes all axis and stops with saying the probe is out of bounds.

Steps to Reproduce

Probe sitting at X100 Y100 with steppers disabled or on power up. Execute M48 homes all axi and stops with saying the probe is out of bounds. The probe was NOT out of bounds when M48 was executed... it PUT it out of bounds.

Version of Marlin Firmware

Marlin: bugfix-2.1.x (Dec 21 2023 12:52:56)

Printer model

Anycubic Kobra Max

Electronics

BTT SKR 3 EZ

LCD/Controller

BTT TFT35 E3 V3.0.1

Other add-ons

BLTouch

Bed Leveling

No Bed Leveling

Your Slicer

None

Host Software

None

Don't forget to include

Additional information & file uploads

https://drive.google.com/file/d/1WKsWA-tGgmrZOzI4BZ-Ge8SZguiA-GON/view?usp=drive_link

thisiskeithb commented 10 months ago

Your link is password protected / requires a Google sign-in (which is why we ask you to attach your config here as a .zip file), but you likely forget to enable Z_SAFE_HOMING.


This Issue Queue is for Marlin bug reports and development-related issues, and we prefer not to handle user-support questions here. (As noted on this page.) For best results getting help with configuration and troubleshooting, please use the following resources:

After seeking help from the community, if the consensus points to a bug in Marlin, then you should post a bug report.

Tannoo commented 10 months ago

Oh. I tried to upload the zip file and it didn't seem to take it.

Z safe homing is not enabled because I have a z min limit that is not using the probe.

Looking closer at this machine, it looks like the nozzle is still 1mm or so away from the bed when the optical sensor limit is triggered. I have to verify that before I enable z_safe_homing.

Thank you.

Tannoo commented 10 months ago

Sorry for the inconvenience.

Tannoo commented 9 months ago

This is still an issue. If the machine is not homed and M48 is issued, Z min limit is ignored. Configs.zip

Sorry... This issue is complete. The current issue is different than this issue discription.

thisiskeithb commented 9 months ago

I wouldn't call this a bug. M48 requires that your machine be homed at least once after power up:

https://github.com/MarlinFirmware/Marlin/blob/5d1ede08aa8a045463d4d33333fd90abead2871e/Marlin/src/gcode/calibrate/M48.cpp#L56

https://github.com/MarlinFirmware/Marlin/blob/5d1ede08aa8a045463d4d33333fd90abead2871e/Marlin/src/gcode/calibrate/M48.cpp#L61-L61

_Note: homing_needed_error() is the check that your machine has homed at least once after power up, not that homing is required / axis are untrusted._

Once your machine is homed at least once, M48 will probe at the current position without homing.

Confirmed here on a Prusa Bear with PINDA & Biqu Hurakan with MicroProbe:

  1. Home your machine
  2. Move to the position you want to probe
  3. Send M48 or run "M48 Probe Test" from the LCD. The probe repeatability test will run.

You can also disable steppers / let them time out and send M48 or run "M48 Probe Test" from the LCD again and it'll probe in probe in place without homing.

Another option is to run M48 X<pos> Y<pos> to specify a probe location.

Our M48 - Probe Repeatability Test page needs to be updated with this information.

ellensp commented 9 months ago

just attempting M48 when not homed and it stops Z endstop working... this is not a desirable outcome

thisiskeithb commented 9 months ago

just attempting M48 when not homed and it stops Z endstop working... this is not a desirable outcome

If you've homed at least once and run M48, Z will home until the probe triggers. If you run M48 in a spot that the probe cannot sense the bed, well, ...don't do that 😄

Tannoo commented 9 months ago

That is not the issue.

The probe is not the Z min.

Tannoo commented 9 months ago

Attempting M48 when not homed, causes M48 to initiate G28. X and Y home and Z attempts to home, but ignores the Z endstop.

Tannoo commented 9 months ago

Z_SAFE_HOMING is enabled, but that is not the issue. Again, the probe is NOT the Z endstop.

Tannoo commented 9 months ago

Because the probe is not the Z endstop, the BLTouch probe is never deployed when homing Z.

Tannoo commented 9 months ago

So, this is more of a G28 issue. M48 initiates G28, but because I do not have the probe setup as the Z endstop, it is ignoring the actual Z endstop?

This does not happen any other time I issue a G28. The endstop works just fine. The probe works just fine also. I got UBL to probe all points on a 7x7 grid. Not once did it crash.

Again... M48 works just fine, if the machine is homed first. And yes, it will probe where it sits as long as it is homed first.

Tannoo commented 9 months ago

Sorry... the issue discription is incorrect. I can change it or I can start a new issue.

github-actions[bot] commented 7 months ago

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.