RCPI, is a Remote Controller for the Raspberry-Pi.

It's a project that I started because I had no batteries in my remote keyboard and I wanted to be able to use an Android phone to control my raspberry pi to play videos.

The main idea was to setup a nodejs server that receive packets to control an OMX player instance.

I first started to use websockets to be able to use any web browser to communicate with the server, but I discovered that on android chrome, the websocket connection stop functioning after the phone goes to sleep, event if you wake it up.
So I switched to UDP as it's simple to implement, and is really close to how a real TV remote controller works, it send a signal even if the TV is powered off.

This project is available on my github : RCPI-Server / RCPI-Android

Server features:

  • Handle a lots of media url, thanks to youtube-dl
  • Check for all media locally available.
  • All default OMX controls available.

Client features:

  • Can use the Share Action to send links to the app.

Preview of the android client :


  • Security
  • "Mute" action is not yet implemented
  • Youtube subtitles
  • Cursor navigation
  • Current omx libary has limitations, need to make one
, last updated :

Widget is loading comments...