More Granular Buzzer Controls #1543
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR vastly improves buzzer controls for devices like the RAK WisMesh Tag and the T1000-E. Initially implemented as #1437, this expands on that to allow for the previously used master buzzer disable boolean AND a disable-on-serial boolean, both packed into the preexisting buzzer_quiet integer variable. Currently, I kept it so that three button clicks will only toggle the master buzzer disable, meaning that the disable-on-serial functionality will rely solely on the client app side of things.
On the technical side of things, Bit 0 is the master disable and Bit 1 is the serial disable. This means that:
I have a different toggle mechanism which I have implemented but left commented out for now within UITask.cpp in the ui-new folder. This helps with testing since the client app has not implemented this functionality yet (buzzer will briefly beep when buzzer_quiet is set to zero, which helps to determine which setting you are on). If the community prefers the commented out toggle method as a means to swap, I would be happy to build on that.
@liamcottle @oltaco, I appreciated your opinions on the inital PR I had. Please feel free to let me know if anything needs to be adjusted here to maximize user accessibility. Pretty new to contributing to this project (and frankly open-source projects overall), but I certainly hope to be able to contribute more! Otherwise, this was tested successfully using the aforementioned commented out method on my WisMesh Tag.