OpenStickCommunity / OpenStickCommunity/GP2040-CE

Allow multiple or combined inputs that include addon / additional functions.

Open
#1,277 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C++
Stars
2.5k
Forks
666
Avg merge
1d 19h
Merged PRs (30d)
7

Description

Problem

Currently multi-button inputs only allow “base buttons”, such ad RT+LT, as requested in #575

Now that with the pin settings of for many add-ons and additional functions moved to the main Pin Settings page of the web configurator, it would be great to allow multi inputs including these functions too, such as Macro1+LB.

I’m not asking for multi inputs that will “lock” the pin, such as Pin Settings for the peripherals, but only those inputs that should be set on the Pin Settings page, such as Function, Macro, Turbo, Tilt etc.

Understood that there may be edge cases where, for e.g., having Turbo+B1 on the same key causes issue, but I am not requesting any fool-proof mechanism at the moment, since whoever uses such multi inputs should be aware of the consequences themselves.

Do you plan to work on this feature yourself?

Unfortunately it is beyond my capability as I’m not sure if it needs some system-level overhaul.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the multi-button input handling and the Pin Settings handling in the firmware and web configurator. Determine how base buttons are currently allowed, then assess support for Function, Macro, Turbo, and Tilt combinations while excluding peripheral settings that lock a pin. Done means combinations such as Macro1+LB can be configured and used without requiring fool-proof conflict handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
embedded-iot
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.