Roku ECP

Roku TV can be controlled by ECP External Control Protocol.
For example, by running a curl command, a channel can be started or switch to playing another video.
Here are two sample commands:
1. start channel and playing the gym video:
Cmd: curl -d ” ‘’
“contentID=Gym” is to tell channel which piece of video to play once started.
2. while channel is already running, switch to another video, which is dance party.
curl -d ” ‘’

How it is done:
Firmware interpret “launch/dev” as launching the channel whose channel ID is “dev”
Firmware passes {contentId: Gym, type: mp4} to channel entry function Main(args) so that channel knows what to do, e.g. what video to play.
Firmware interpret “input?contentID=Party” as sending {contentID: Party} to the current running channel so that channel, through roInput, knows what to do, e.g. in this case, switching to video called Party.

EcpThe channel source code:
The screen recording:, which show the TV on left, and my linux box on the right.

Previous Post
Next Post
Comments are closed.
%d bloggers like this: