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

Rotary Encoder Reverse Direction #4398

Closed
1 task done
swissfreek opened this issue Dec 9, 2023 · 16 comments · Fixed by #4401
Closed
1 task done

Rotary Encoder Reverse Direction #4398

swissfreek opened this issue Dec 9, 2023 · 16 comments · Fixed by #4401
Labels
enhancement ✨ New feature or request

Comments

@swissfreek
Copy link

Is there an existing issue for this feature request?

  • I have searched the existing issues

Is your feature request related to a problem?

It is currently possible to reverse the rotary encoder. However, currently if you turn the encoder one direction, it makes the selection move "down" in the menu system (for example, model selection), but turning the encoder the same direction makes number or letter inputs go "up" (for example, 0-1-2/A-B-C). For my brain this is unintuitive, as going "up" in the menu (bottom of screen to top of screen) should also make the numbers or letters go "up". Additionally, contextual menus follow the same logic as numbers, so on different menus one direction is "up" and the other is "down".

If you go in system settings and change the direction of the encoder, both issues reverse, so they move in the opposite direction, but still not synchronized.

Describe the solution you'd like

One of two solutions:

  1. Reverse the direction of the encoder in the main menu (model selection screen, mixer page, etc.) so that whatever direction of the encoder makes the cursor scroll from top of screen to bottom is the same direction as what makes the value increase when inputting numbers or letters. The contextual menus are already this way.

  2. Allow users the option of changing both scroll directions independently in the System settings. So one setting for menu scroll direction, one setting for number/letter entry scroll direction. To me the only logical way to do it is the way I describe in 1), but if other people disagree, then I would like the option.

For what it's worth, TeamBlacksheep's FreedomTX, also forked from OpenTX, implemented item 1) above for their radios. So the code already exists in GitHub for easy implementation, but I suspect it's a matter of adding a single minus sign somewhere in the menu code?

Describe alternatives you've considered

No response

Additional context

No response

@swissfreek swissfreek added the enhancement ✨ New feature or request label Dec 9, 2023
@pfeerick
Copy link
Member

pfeerick commented Dec 9, 2023

What radio is this on? And what version of EdgeTX are you running? B&W radios introduced more options for the rotary encoder in 2.8 (#2045), but it's not been implemented on colorlcd as it's not so easy to implement.

@swissfreek
Copy link
Author

Sorry, yes, this is on an MT12, so B&W radio. Version says “RM Factory”, dated 28 October 2023.

@pfeerick
Copy link
Member

pfeerick commented Dec 10, 2023

2.8 was released in Nov 2022, and the MT12 factory firmware be an early version of 2.10. You should have four options Normal, Inverted, V-I H-N, V-I H-A. V-I H-N (vertical invert, horizontal normal) is probably what you want.

@swissfreek
Copy link
Author

Ahh, thanks. V-I H-N is the exact OPPOSITE of what I'm looking for. So I guess what I want is V-N H-I? But there is no V-N option.

@pfeerick
Copy link
Member

V-N H-N would be "Normal" ;) V-I H-I would be "Invert". So yes, you are after an option that doesn't exist (yet?).

We'll have to see how things go with the MT12, as this is the first radio that has the rotary encoder horizontal to the display... all the other radios are basically vertically aligned. Another way to look at this is when you roll the encoder down, the numbers get bigger, and they get smaller when you roll the encoder up. To me, that makes more sense (the way it is) than the other way around, but I'm not averse to another option being added for the opposite.

@swissfreek
Copy link
Author

Yes, this is the way it is (or was) in Audis. To me this is backwards but I understand not everyone's brain works the same. And you are right, it's the first time the roller is horizontal which makes it a new perception. I'm hopeful that since all the framework is apparently there, an option could be added for V-N H-I.

@3djc
Copy link
Collaborator

3djc commented Dec 10, 2023

I'll take it

@3djc
Copy link
Collaborator

3djc commented Dec 10, 2023

@swissfreek , could you describe the behavior you want, I'm not sure I'm getting it right.

When moving your finger from radiomaster logo to the belt thing;

  • what direction should menu move
  • what direction should value move

@pfeerick
Copy link
Member

Menu unchanged (i.e. V-N)
Value opposite to what it is (i.e. H-I)

So when changing things like numbers, they decrease when from logo to belt, rather than increase.

@pfeerick
Copy link
Member

#2045 should be handy as a reference to make sure nothing is missed ;)

@swissfreek
Copy link
Author

#2045 should be handy as a reference to make sure nothing is missed ;)

Shoot, I didn’t search well enough, I’m sorry.

@pfeerick
Copy link
Member

@swissfreek No, that was for JC, since this was probably going to piggy back that. Give #4401 a try and see if that is what you were after.

To access the automatic builds for a PR, first open up the PR page. Under the PR title, you should see a series of tabs (Comments, Commits, Checks, Files Changed). Click on the Checks tab. Then if you are after the radio firmware, click on the link on the left side mentioning firmware. If you want a Companion/Simulator build, pick the one that suits your operating system. Then, under the 'Artifacts' heading near the bottom of the page will be a link to the zip file containing either the firmware or companion package.

@swissfreek
Copy link
Author

swissfreek commented Dec 10, 2023

@swissfreek No, that was for JC, since this was probably going to piggy back that. Give #4401 a try and see if that is what you were after.

YES! Thank you, that's exactly what I'm looking for.

EDIT: Wait, now the pop-up menus are backwards? So, model selection screen main menu, rolling down towards bottom of radio makes the selection go from top of screen to bottom. When editing a number/letter, rolling down towards bottom of radio makes the value decrease. BUT, if I go to a model, and long-press to get the Select/Copy/etc. functions, rolling toward the bottom of the radio makes the selection move toward the TOP of the screen on these types of menus. So some lists go one way, some go the other way.

@swissfreek
Copy link
Author

I realize I'm probably being a persnickety pain in the ass, but is it not possible for the contextual menus to match the rest of the scrolling lists?

@pfeerick
Copy link
Member

Yeah, I noticed that, looking into it.

@chofchop
Copy link

My MT12 (nightly build mt12-fbe06b3.bin) can now be operated almost intuitively with the V-N E-I option.
It's a small detail, but
Pwr On delay
Pwr off delay

However, the operations and numerical changes are still going backwards.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement ✨ New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants