A concept to emulate a 10-button game controller with just a single button!
No explanation needed? → Jump to play the demo!
| Single Gesture | Command | Tap-before Gesture | Inv. Command | |
|---|---|---|---|---|
| Short Tap (≤250ms) | Increase | Double Tap | Decrease | |
| Long Click (≥350ms) | Ok (Next) | Tap-Long Click | Back (Prev) | |
| Extralong Hold (≥1.3s) | Next | Tap-Extralong Hold | Prev | |
| Superlong Hold (≥8s) | Menu | Tap-Superlong Hold | Reset |
To speed up navigation, we have a "combo" and "auto" mode build in. Combos: If you short tap again within 1s after a command (before the green/orange light goes off), the last command will be repeated instantly! Only if you wait longer than 1s, you can enter a new command. Only long click (“Ok”) will always be accepted. If you need more speed, hold the button extralong while in combo mode to auto-repeat the last command quickly. The longer you hold, the faster the auto-repeat. Once you release the button, the auto-repeat continues at constant speed until you single tap.
| Gesture | Idle-Mode (single / tap-before) | Combo-Mode | Auto-Mode | |||||
|---|---|---|---|---|---|---|---|---|
| Tap (≤250ms) | inc. | + | dec. | – | repeat | ↻ | stop | ▣ |
| Click (≥350ms) | ok | ↪ | back | ↶ | ok | ↪ | slower | ⏪ |
| Hold (≥1.3s) | next | ⇒ | prev | ⇐ | →auto-mode | 🔁 | faster | ⏩ |
Since the controller should be implemented for a microcontroller, we expect to have an LED on board that we can use to provide visual feedback. So green means a positive command (+)
The goal is to enter a random IPv4 address using a single button. The button can be pressed by clicking or touching into the outlined box below, or by using the keyboard key b. You can directly play around to test all commands. Once you feel ready, hit the “Start Challenge” button to measure your input time.
The target IP is 10.???.???.42
| Idle-Mode: Combo-Mode: Auto-Mode: |
tap/tap-tap: tap: tap: |
+ / – ↻ ▣ |
long/tap-long: long: long: | ⇒ / ⇐ ⇒ ⏪ |
hold/tap-hold: hold: hold: | ⇒ / ⇐ auto-↻ ⏩ |