Skip to content

Keypad

Services
Keypad

Keypad

Image: Keypad / physical buttons.

The Keypad service reads physical button input (e.g. AW9523 GPIO expander on Ubo Pod) and dispatches key press, hold, unhold, and release actions. These drive menu navigation and L1/L2/L3 shortcuts.

What you see

  • State (KeypadState) — Tracks key state as needed by the service.
  • ActionsKeypadKeyPressAction, KeypadKeyHoldAction, KeypadKeyUnholdAction, KeypadKeyReleaseAction — carry key identity; the main reducer and menu app use them for navigation (UP, DOWN, L1, L2, L3, BACK, HOME).
  • Implementationubo_app/services/000-keypad/: hardware abstraction in ubo_handle.py; on non-RPi, keypad may be emulated (e.g. keyboard or web UI).