-
-
Notifications
You must be signed in to change notification settings - Fork 19.2k
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
Add Extra ProUI features #26761
base: bugfix-2.1.x
Are you sure you want to change the base?
Add Extra ProUI features #26761
Conversation
It would be nice if these kinds of features were implemented at a higher level so everyone could use them instead of a subset of LCDs/UIs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be nice if these kinds of features were implemented at a higher level so everyone could use them instead of a subset of LCDs/UIs.
I'm not so familiar with how that would be; could you point to me which file/line of those, maybe I could figure something out. I'd like to add some more to this.
ABL and MBL come later
… into bugfix-2.1.x-Jan2
… into bugfix-2.1.x-Jan2
… into bugfix-2.1.x-Jan2
I think it would be best to remove the variable mesh grid points part of this PR because we are trying to solve that problem more generally in another PR. The variable points would then apply to all displays and also extend |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be best to remove the variable mesh grid points part of this PR because we are trying to solve that problem more generally in another PR. The variable points would then apply to all displays and also extend
G29
M420
M421
G-codes as needed. This ad hoc solution for ProUI is too "hacky" and invasive to the rest of the code and certainly won't be retained once the general solution is completed.
ok yeah I see. can you point to me which PR you're talking about with variable mesh grid points
I may need some help figuring out getting Bilinear auto bed leveling to work with the variable mesh inset. I might be able to just adjust like so: and in feature/bedlevel/abl/bbl.h - static float get_mesh_x(const uint8_t i) { return grid_start.x + i * grid_spacing.x; }
- static float get_mesh_y(const uint8_t j) { return grid_start.y + j * grid_spacing.y; }
+ static float get_mesh_x(const uint8_t i) { return MESH_MIN_X + i * (MESH_X_DIST); }
+ static float get_mesh_y(const uint8_t j) { return MESH_MIN_Y + j * (MESH_Y_DIST); } but to do it right, I think const float x_min = probe.min_x(), x_max = probe.max_x(),
y_min = probe.min_y(), y_max = probe.max_y();
if (parser.seen('H')) {
const int16_t size = (int16_t)parser.value_linear_units();
abl.probe_position_lf.set(_MAX((X_CENTER) - size / 2, x_min), _MAX((Y_CENTER) - size / 2, y_min));
abl.probe_position_rb.set(_MIN(abl.probe_position_lf.x + size, x_max), _MIN(abl.probe_position_lf.y + size, y_max));
}
else {
abl.probe_position_lf.set(parser.linearval('L', x_min), parser.linearval('F', y_min));
abl.probe_position_rb.set(parser.linearval('R', x_max), parser.linearval('B', y_max));
}
...
---
// Probe at the points of a lattice grid
abl.gridSpacing.set((abl.probe_position_rb.x - abl.probe_position_lf.x) / (abl.grid_points.x - 1),
(abl.probe_position_rb.y - abl.probe_position_lf.y) / (abl.grid_points.y - 1)); as you can see for context, so where I am stuck is how do I set |
… into bugfix-2.1.x-Jan2
… into bugfix-2.1.x-Jan2
c792921
to
37fb26b
Compare
37d77d6
to
aa44542
Compare
… into bugfix-2.1.x-Jan2
… into bugfix-2.1.x-Jan2
Description
This adds the following features to ProUI:
G29
MULTIPLE_PROBING
/TOTAL_PROBING
through the UI (how many probes when tramming/bed leveling/creating meshChange the grid array - 3x3, 5x5, 9x9...(removed for future feature)the only limitation I foresee for ProUI is because of the specific MeshViewer, it can only view up to 9x9, but I have another PR which allows switching between the two, once that is merged only then we can be able to allow this to go up to 10x10 even 15x15 if need.(goes with changing grid array)levelMenu
+ swap w/advancedSettingsMenu
Advanced Settings
menu and move access toControl
menuLevel
menu forBed Leveling
and mesh stuffMSG_MESH_SETTINGS
"Mesh Settings"Other Changes
Changes to Gcode Thumbnail preview.
Move
struct hmiData
from dwin.h to dwin_defines.hRemove redundant headers
Changed
Probe::run_z_probe
to accommodate variableMULTIPLE_PROBING
- for ProUINote
if there is one more thing I'd like to add is being able to change the Z feedrate.-- not anymoreMSG_Z_FEED_RATE
goes unusedHaving the grid type be 10x10 or more is something we can work on next
one more thing is a couple other changes, like thetoggleCheckboxLine()
now uses^= true
Requirements
Benefits
Less clumped.
Better readability.
This goes for UI navigation.
Configurations
Related Issues
for
void do_z_clearance()
,you have
UNUSED(with_probe)
, yet it does get used...so I change it to
IF_DISABLED(HAS_BED_PROBE, UNUSED(with_probe));
I just wanted to point this out, because it just didn't make sense, and hope this change is correct.
trying to get the bugs out ofMULTIPLE_PROBING
. its difficult to say which line of code to use. any advice would be helpful.Code Below is not relevant to this PR anymore since being able to change grid array/grid mesh points was removed.
I get this weird warning only through github actions
and also for
static void unified_bed_leveling::report_current_mesh()