Investigate Roku secret-menu sequence reliability over ECP #1

Open
opened 2026-04-15 18:52:49 +00:00 by 44r0n7 · 1 comment
Owner

Summary

Several Roku secret-menu sequences do not reliably open their menus when sent through tvctl remote send, even though the same sequences work from the physical Roku remote on the same TV.

Observed examples

  • Platform secret menu: home home home home home up right down left up
  • Wireless secret screen: home home home home home up down up down up
  • Dev settings menu: home home home up up right left right left right
  • Channel settings menu: home home home up up left right left right left

The bitrate override menu also did not work from the physical remote during testing, so that one may be a separate Roku-side issue.

Current implementation

tvctl currently sends Roku remote input through ECP keypress/... requests only.

Why this needs investigation

Roku's official ECP docs explicitly document keypress, keydown, and keyup commands as supported inputs, and the docs include a keyup/keydown example. This suggests some secret-menu sequences may require more faithful button event delivery than repeated keypress calls provide.

Official docs: https://developer.roku.com/docs/developer-program/debugging/external-control-api.md

Relevant documented key names include Home, Up, Down, Left, Right, Rev, and Fwd, which match the keys already used by tvctl.

Likely next steps

  • Prototype Roku input delivery using keydown/... + keyup/... per key
  • Compare behavior against current keypress/... delivery
  • Check whether secret-menu sequences need different pacing or explicit press/release semantics
  • Keep normal navigation behavior unchanged unless the higher-fidelity mode proves better

Repro notes

  • Normal navigation and app control work
  • remote send --delay changes did not fix the affected secret-menu sequences
  • Tested on a Hisense Roku TV at 10.10.0.136
## Summary Several Roku secret-menu sequences do not reliably open their menus when sent through `tvctl remote send`, even though the same sequences work from the physical Roku remote on the same TV. ## Observed examples - Platform secret menu: `home home home home home up right down left up` - Wireless secret screen: `home home home home home up down up down up` - Dev settings menu: `home home home up up right left right left right` - Channel settings menu: `home home home up up left right left right left` The bitrate override menu also did not work from the physical remote during testing, so that one may be a separate Roku-side issue. ## Current implementation `tvctl` currently sends Roku remote input through ECP `keypress/...` requests only. ## Why this needs investigation Roku's official ECP docs explicitly document `keypress`, `keydown`, and `keyup` commands as supported inputs, and the docs include a keyup/keydown example. This suggests some secret-menu sequences may require more faithful button event delivery than repeated `keypress` calls provide. Official docs: https://developer.roku.com/docs/developer-program/debugging/external-control-api.md Relevant documented key names include `Home`, `Up`, `Down`, `Left`, `Right`, `Rev`, and `Fwd`, which match the keys already used by `tvctl`. ## Likely next steps - Prototype Roku input delivery using `keydown/...` + `keyup/...` per key - Compare behavior against current `keypress/...` delivery - Check whether secret-menu sequences need different pacing or explicit press/release semantics - Keep normal navigation behavior unchanged unless the higher-fidelity mode proves better ## Repro notes - Normal navigation and app control work - `remote send --delay` changes did not fix the affected secret-menu sequences - Tested on a Hisense Roku TV at `10.10.0.136`
Author
Owner

Follow-up test result:

Tried a prototype Roku keydown/... + short hold + keyup/... delivery path instead of plain keypress/..., with a configurable press duration (75ms).

Result: the tested secret-menu sequence still did not open the menu on the target TV.

Tested sequence:

  • home home home home home up right down left up

Environment:

  • Hisense Roku TV at 10.10.0.136
  • remote.roku_key_mode = keydown_up
  • remote.roku_press_duration_ms = 75
  • inter-key spacing still 200ms

Conclusion so far:

  • valid Roku key names are not the issue
  • simple keypress vs keydown/keyup delivery alone did not fix it
  • revisit later; secret-menu automation remains experimental / unreliable
Follow-up test result: Tried a prototype Roku `keydown/...` + short hold + `keyup/...` delivery path instead of plain `keypress/...`, with a configurable press duration (`75ms`). Result: the tested secret-menu sequence still did **not** open the menu on the target TV. Tested sequence: - `home home home home home up right down left up` Environment: - Hisense Roku TV at `10.10.0.136` - `remote.roku_key_mode = keydown_up` - `remote.roku_press_duration_ms = 75` - inter-key spacing still `200ms` Conclusion so far: - valid Roku key names are not the issue - simple `keypress` vs `keydown`/`keyup` delivery alone did not fix it - revisit later; secret-menu automation remains experimental / unreliable
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: 44r0n7/tvctl#1