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

"Scan and Select" input for Canned Messages #4365

Merged
merged 5 commits into from
Aug 6, 2024

Conversation

todd-herbert
Copy link
Contributor

@todd-herbert todd-herbert commented Aug 1, 2024

What

A new input source for the canned message module, using a single push-button connected to GPIO.

Short press: scroll through the pre-set messages
Long press: send the currently highlighted message to primary channel

Why

Some boards have an additional built-in button, which is currently unused. The proposed "scan and select" input is an attempt to make productive use of the feature.

PR enables canned messages as default for Heltec VME290 and VME213 boards.
By default, the module is partially configured: pins and input method are set, however no messages are defined.
Pressing the configured button during this state alerts on-screen: "no canned messages". This will prompt the user to either configure messages, or disable the module entirely.

Doc for proposed changes

scan-and-select-vme290.mp4
scan-and-select-tbeam.mp4

@todd-herbert todd-herbert marked this pull request as draft August 1, 2024 09:33
@todd-herbert
Copy link
Contributor Author

Failing CI, needs some more guarding.

@todd-herbert todd-herbert marked this pull request as ready for review August 1, 2024 12:03
@thebentern
Copy link
Contributor

thebentern commented Aug 3, 2024

Ooooh so this is a single additional button on GPIO in addition to a user button? Very cool! 🎉

@tropho23
Copy link
Contributor

tropho23 commented Aug 3, 2024

This is very cool indeed

* Indicate current selection with indent rather than inverse text
* Avoid large text on "sending" and delivery report pop-ups
* Fit SNR and RSSI details on screen
The old function struggled to distingush between images on the canned-message frame, failing to update when scrolling between messages. No real justification for the new algorithm, other than "it works" and doesn't seem "too expensive". For context, this function runs once a second.
@todd-herbert
Copy link
Contributor Author

I'd be keen to get this in for 2.4.2 if possible, to try catch as many new VME213 and VME290 boards with this PRs default module config. Otherwise they'll probably miss out on the feature until they erase the flash next.

@thebentern
Copy link
Contributor

Let's do it!

@thebentern thebentern merged commit 92526fc into meshtastic:master Aug 6, 2024
15 checks passed
@todd-herbert todd-herbert deleted the scan-and-select branch August 7, 2024 04:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants