Skip to content

← All documentation

Post-install setup · Y2Reborn

Reborn physical input audit

Documentation published by SchulzCode/Y2Reborn.

Instructions published by the project, shown here word for word.

Reborn physical input audit

> **Historical record.** The dates, candidate identity, "current" claims, > next steps and permissions below belong to this recorded boundary. See > [current state](../CURRENT_REBORN_STATE.md) for the latest physically observed result.

The Y2 UI consumes semantic actions only. Raw Linux input records stop at reborn-platform::input::InputManager.

Physical controlLinux source / eventNormalized eventSemantic action
Click wheel clockwiseAPT32F click-wheel, EV_KEY KEY_DOWN/KEY_PAGEDOWN, or EV_REL REL_WHEEL > 0WheelClockwise(steps)WheelClockwise(steps) in lists; volume up in Now Playing
Click wheel counter-clockwiseAPT32F click-wheel, EV_KEY KEY_UP/KEY_PAGEUP, or EV_REL REL_WHEEL < 0WheelCounterClockwise(steps)WheelCounterClockwise(steps) in lists; volume down in Now Playing
Center / SelectY2 navigation buttons, EV_KEY 28Press/Release(Select)Select on release; long release becomes ContextMenu
BackY2 navigation buttons, EV_KEY 158Press/Release(Back)Back; long press goes Home
PreviousY2 navigation buttons, EV_KEY 105, or any device EV_KEY 165Press/Release(Previous)Previous track; long press seeks backward
NextY2 navigation buttons, EV_KEY 106, or any device EV_KEY 163Press/Release(Next)Next track; long press seeks forward
Play / PauseY2 navigation buttons, EV_KEY 164, or any device EV_KEY 57Press/Release(PlayPause)Toggle playback; long press opens Now Playing
Powermtk-pmic-keys, EV_KEY 116Press/Release(Power)Short press sleeps/wakes display; long press opens power menu
Volume downAny accepted input device, EV_KEY 114Press/Repeat(VolumeDown)Volume down; never navigation
Volume upAny accepted input device, EV_KEY 115Press/Repeat(VolumeUp)Volume up; never navigation

Keyboard mode (since 1.0.0-beta.5)

While the full-screen keyboard is open (ActionRouter::set_keyboard(true), set by the main loop before each event), Back, Play/Pause, Previous and Next produce NavigateUp, NavigateDown, NavigateLeft and NavigateRight on press; their releases produce nothing. Held Previous/Next repeat every other repeat tick (180 ms). A long Back press produces Home (cancel). Wheel rotation produces nothing. Select keeps Select on release and ContextMenu (Done) on a long press. A button pressed as an arrow keeps its hold and release in keyboard mode even if the keyboard closed meanwhile.

Timing owned by the input boundary

Long press is emitted once and recorded by ActionRouter; the matching release is consumed, so a long press cannot also trigger its short action.

Screen-off policy

ActionRouter::route receives the authoritative screen-on flag. While the screen is off, wheel/navigation/select/back actions produce no semantic action. Volume and playback controls remain global and do not wake the display. Only a Power release while the screen is off produces ScreenWake.

Playback buttons and volume are routed above the current screen, so ordinary navigation and Back cannot stop playback. The UI only returns typed Effect values; service calls remain in app/reborn.

Published by the SchulzCode/Y2Reborn project [1] [3]