Skip to content
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

[FR] inverted (reverse) logic on steps (mm, percent, degree) #2248

Closed
tispokes opened this issue Nov 14, 2021 · 9 comments
Closed

[FR] inverted (reverse) logic on steps (mm, percent, degree) #2248

tispokes opened this issue Nov 14, 2021 · 9 comments
Labels
Abandoned enhancement New feature or request

Comments

@tispokes
Copy link

Every time i setup/do something manually, e.g. bed temp, nozzle temp, move x/y/z axis or leveling z-offet (and so on...) i would like to start with the biggest number first. Not with 1 Degree or 0.01 mm when i have to move first 1 mm then .4 mm and then .03 mm. so i have to press the icon very often.
It would be more useful to start from big and go smaller. (in my opinion, sure ;-))

PS: Changing Degrees by 50 or 100 at first, would so nice. Think 50 is good to use for bed and nozzle. Betten than 10. And you want/need to go from 0 to 250 °C.

Describe the solution you'd like
config switch would be a nice solution. To setup directly in the settings would be great.

Describe alternatives you've considered
Writing a pull request by my own :-)

@tispokes tispokes added the enhancement New feature or request label Nov 14, 2021
@radek8
Copy link
Contributor

radek8 commented Nov 14, 2021

Jumping to the lowest value cannot damage anything. An accidental jump by the highest value can damage something, such as the bed when the nozzle hits ...

Just my opinion.

@tispokes
Copy link
Author

tispokes commented Nov 14, 2021

Hmm okay, also on BabySteps it would not be nice. So excluding BabyStepping or possibility to setup each point itself.
Tried a bit, at the end it should not that hard.
Something like:
uint8_t moveLenSteps_index = (infoSettings.inverted_steps * ITEM_FINE_MOVE_LEN_NUM) - infoSettings.inverted_steps; // index is 0 if disabled or max_index-1 (ITEM_FINE_MOVE_LEN_NUM) if enabled per .c-file where it occurs
and when used to calc the new index:
moveLenSteps_index = (moveLenSteps_index + infoSettings.inverted_steps + 1) % ITEM_FINE_MOVE_LEN_NUM;

edit: okay only works with %3. More generally it's ugly:
uint8_t moveLenSteps_index = (infoSettings.inverted_steps * ITEM_FINE_MOVE_LEN_NUM) - infoSettings.inverted_steps;
uint8_t invertedStepsOffset = infoSettings.inverted_steps * (ITEM_FINE_MOVE_LEN_NUM - 2); // calculated once is enough
moveLenSteps_index = (moveLenSteps_index + 1 + invertedStepsOffset) % ITEM_FINE_MOVE_LEN_NUM;
Now this should work for other cases eg 2 or 4 or 5 also.

@digant73
Copy link
Contributor

digant73 commented Nov 17, 2021

@tispokes those kind of FR were already submitted and answered in the same way. As reported by Radek, it is always used the most safe solution (so the lowest values). Also, once changed from a menu, the values will be maintained in case you re-enter in the menu. So at the end, a minimal effort is requested to the user

@tispokes
Copy link
Author

tispokes commented Nov 17, 2021

Hmm no the effort stays the same. e.g. ich recalibrate my z-offset:

  1. 1 mm step (pressing mm-rotation-button 2x) -> 0.01 -> 0.1 -> 1
  2. 0.1 mm step (pressing 2 oder 3 times again) -> 1 -> (is there 10 mm at z-offset?, then s1 calce more) 0.01 -> 0.1
  3. 0.01 mm steps (and again 2 or 3 times) -> 0.1 -> 1 ->(10? ->) 0.01
    Then im back at 0.01 mm and then, when i change the bed and want to recalibrate again i have to do the same steps again

@digant73
Copy link
Contributor

I meant the changes (the last values you select) are stored until you restart the printer/TFT

@tispokes
Copy link
Author

Yes therefore i end the callibtation with 0.01 and as next i get 0.1 again. (updated commend)
So reverse order would be great. may i have to write and test ir myself with optIN/OUT.
Also to secure inexperienced user, the cycle could start at 0.01 and the next is 10/1 and then lowering from there.

@tispokes
Copy link
Author

And i restart the printer more often then i change my z-offset ;-)

@stale
Copy link

stale bot commented Jan 17, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Copy link

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.

@github-actions github-actions bot locked and limited conversation to collaborators Mar 28, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Abandoned enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants