classicrocker883 / MRiscoCProUI

This is optimized firmware for Voxelab Aquila & Ender3 V2/S1 3D printers.
https://classicrocker883.github.io/
Other
82 stars 17 forks source link

[BUG] Not raising Z at stop printing #126

Closed wlkmanist closed 2 months ago

wlkmanist commented 5 months ago

Did you test the latest release build?

No, only latest available code on 2024-April branch

Bug Description

Pressing stop while printing, lcd says raising Z, and thats it. I need to click continue, disable steppers and move Z by hand. Also strange movements after printing done on Y and Z axes.

Printer Model

Voxelab Aquila

Model Type

No response

Your Mainboard

Aquila GD32

Other Mainboard Type

No response

Add-ons that could be involved

Ohhh...

ProUI?

ProUI

Bed Leveling

MM - Manual Mesh Bed Leveling

Did you include your own configuration files?

Additional information & file uploads

Compiled the latest code. Enabled Input Shaping and classic jerk. Used 2.1.3-f3 before.

wlkmanist commented 5 months ago

What changed with head parking or so? Idk, whad my printer trying to do when it completed printing. Looks like it goes to some constant coordinates. I have default end gcode that moves Y axis to ~maximum but after that, now it moves slightly back. I have set maximum limits on Y more than stock. On Z axis it raises more than before.

classicrocker883 commented 5 months ago

I have changed G27 park code to allow Z raise if axis is not trusted, so that it can raise Z no matter what. G27 uses Park coordinates, which is NOZZLE_PARK_POINT { 0, 200, 50 } so Y moves to 200 when finished. you can change this in Control > Set Home Offsets > Park Head

then you can remove the default end gcode command.

wlkmanist commented 5 months ago

I have changed G27 park code to allow Z raise if axis is not trusted, so that it can raise Z no matter what. G27 uses Park coordinates, which is NOZZLE_PARK_POINT { 0, 200, 50 } so Y moves to 200 when finished. you can change this in Control > Set Home Offsets > Park Head

then you can remove the default end gcode command.

Okay, I will test that. Is G27 raises Z independend of physical settings? Or is it moves Z to a constant/predefined coordinates? Or it is positive offset of latest position?

classicrocker883 commented 5 months ago

Okay, I will test that. Is G27 raises Z independend of physical settings? Or is it moves Z to a constant/predefined coordinates? Or it is positive offset of latest position?

I will try to understand the question. I do not know what you mean by "raises Z independend of physical settings", but it does raise Z even if axis are not homed. and yes, it moves Z to constant/predefined coordinates G27 P2, and yes positive offset of latest position G27 P3.

So G27 can do several things, this is what the code says it does:

/**
 * G27: Park the nozzle according with the given style
 *
 *  P<style> - Parking style:
 *             0 = (Default) Relative raise by NOZZLE_PARK_Z_RAISE_MIN (>= NOZZLE_PARK_POINT.z) before XY parking.
 *             1 = Absolute move to NOZZLE_PARK_POINT.z before XY parking. (USE WITH CAUTION!)
 *             2 = Relative raise by NOZZLE_PARK_POINT.z before XY parking.
 *             3 = Relative raise by NOZZLE_PARK_Z_RAISE_MIN, skip XY parking.
 *             4 = No Z raise. Just XY parking.
 */

So using G27 P3 only raises Z, this is the Raise Head command i believe in Prepare > Homing Menu. which just raises Z about 10mm. this runs when a print is aborted. G27 P2 is the code that runs when a print is finished, it parks XYZ and these can be changed in the menu like i mentioned before.

wlkmanist commented 5 months ago

I will try to understand the question. I do not know what you mean by "raises Z independend of physical settings", but it does raise Z even if axis are not homed. and yes, it moves Z to constant/predefined coordinates G27 P2, and yes positive offset of latest position G27 P3.

My LCD have submenu "Physical Settings", I can set maximum coordinates to XYZ axes. For me max possible Z is 170, for example. So, when print completed and Z is around maximum, what will be after? Will Z axis go lower to its defined coordinates and brake the printed model, or will raise above specified by me limit (170) and brake my wiring? Or that behabour have some safety checks in the code?

This is offtop questions, I still don't understand how to make work raising Z and disable steppers after canceling a print process.

So using G27 P3 only raises Z, this is the Raise Head command i believe in Prepare > Homing Menu. which just raises Z about 10mm. this runs when a print is aborted.

For me it is working via Homing Menu, but not when print is aborted. It is worked fine before April builds (I am using latest code compiled today, not the build).

wlkmanist commented 5 months ago

G27 uses Park coordinates, which is NOZZLE_PARK_POINT { 0, 200, 50 } so Y moves to 200 when finished. you can change this in Control > Set Home Offsets > Park Head

That means, I do not need one End G-Code command... Okay, understood.

How can I change that parameters via g-code (nozzle park point coordinates)? I need that to backup/restore my settings before/after reflashing firmware. Is it C125?

Is there any wiki around this features?

classicrocker883 commented 5 months ago

How can I change that parameters via g-code (nozzle park point coordinates)? I need that to backup/restore my settings before/after reflashing firmware. Is it C125?

Is there any wiki around this features?

yes here is the wiki about Custom C Gcodes

[!NOTE] some firmware's have these custom g-codes disabled due to limited memory.

classicrocker883 commented 5 months ago

My LCD have submenu "Physical Settings", I can set maximum coordinates to XYZ axes. For me max possible Z is 170, for example. So, when print completed and Z is around maximum, what will be after? Will Z axis go lower to its defined coordinates and brake the printed model, or will raise above specified by me limit (170) and brake my wiring? Or that behabour have some safety checks in the code?

When Z axis is trusted/(is homed), it will not go above the maximum height (your max limit 170, set in submenu "Physical Settings"). when LCD flashes - ? - under Z axis this means it is not trusted/not homed. it is safe to use when print is aborted even at the maximum Z limit, because it will not go more than the max Z height, except when axis has been disabled.
so be aware when raising Z axis with G27 P3 - "Raise Z". this only allows to raise 10mm, and is usually used for whenever you would like a quick raise such as from the bottom near the bed. or like when print is aborted.

For me it is working via Homing Menu, but not when print is aborted. It is worked fine before April builds (I am using latest code compiled today, not the build).

I do not understand why this had worked fine before, but does not work now. I will go back to look through the code and see any changes. I will have to do tests.

what if I added a checkbox that you can enabled/disable the automatic abort G-codes or when print is finished? or is this fine and leave it the way it is?

wlkmanist commented 5 months ago

what if I added a checkbox that you can enabled/disable the automatic abort G-codes or when print is finished? or is this fine and leave it the way it is?

I like new menu items. I can test it. Leaving this behavour as is seems wrong to me because it can be dangerous or just unexpected.

classicrocker883 commented 4 months ago

in the new May release I've updated the abort code to raise. upon print finish, it will Park - move to the park position. this can be set in the control menu. Just to be understood, it is set to Y: 200 because if it were set to the maximum, the weight of a print may tip the machine.

i added the ability to turn these abort codes on or off. in the Advanced settings in Control menu. so you can add your own end gcodes.

wlkmanist commented 4 months ago

Okay. I can't test it now, but thanks.

github-actions[bot] commented 2 months ago

This issue has had no activity in the last 60 days. Please add a reply if you want to keep this issue active, otherwise it will be automatically closed within 10 days.

classicrocker883 commented 2 months ago

this should be working fine with auto abort codes enabled. next is probably making some Gcode which can be used to enable this besides the UI checkbox in settings.

let me know if it isn't actually raising with the recent builds