1. The Purpose (Mission)

  • Build full featured Media Center
  • Achieve high WAF (Wife Acceptance Factor) through ease of use
  • Integrate other home appliances into this system, as part of Smart Home concept (whatever that may be...)


2. Components


 My Media Center


3. Progress Report


3.1. Hardware


3.2. Remote Control

Initially, I used MCE remote receiver that came with my Hauppauge tuner card. It mostly worked, but I wasn't entirely happy with it. Mainly, I wanted more control over button behavior, repeat timings and separate ON and OFF buttons. So, I built my own IR receiver!

The receiver is based on Arduino Micro emulating USB keyboard. This is possible because Micro's controller has a USB module built into the chip, making it possible to run USB HID stack. In order to implement USB SLEEP and WAKEUP functionality, I used code from this pull request: https://github.com/arduino/Arduino/pull/1488 by MikeT. Here is his discussion thread. However, the source code in these files is based on quite old version of Arduino. Therefore, after extensive cutting, pasting and merging, I came up with a version that worked with my Arduino 1.5.6-r2.

Here are the modified USB files: modified_1488_for_1.5.6.zip

Next step was to figure out which remote button is to assign to what USB code in order to generate what Media Portal action. All of this is documented in this spreadsheet: MP_Keymap.xslx

Finally, Arduino sketch that ties it all together: Remote.ino

I found a nice way to hide Arduino Micro board under flip panel of my Shuttle PC, with IR sensor sticking out inconspicuously at the bottom:

IR Receiver inside Shuttle PC (open door) IR receiver inside Shuttle PC (closed door)



3.3. Viewer for my Energy Monitor

The goal was to have access to the dashboards of my Home Energy Monitoring System while sitting on the couch in front of the TV. Here's how I did it:

  1. Install BrowseTheWeb plugin into MediaPortal
  2. The current version of this plugin ( does not support entering IP address in the URL. So, I created a local domain name for my RaspberryPi IP address by modifying hosts file in C:\Windows\System32\drivers\etc\
  3. My EmonCMS is running under HTTPS, using a self-signed certificate. This created an error in XULRunner engine, that the plugin is based on. To get around this, I followed steps outlined here: http://forum.devolutions.net/topic1006-allow-embed-firefox-to-access-ssl-winvalid-certs.aspx#post5355 and here: https://developer.mozilla.org/en-US/docs/Cert_override.txt

 Dashboard on HTPC




# MediaPortal or Kodipleasenospy 2016-04-13 17:52
Is there any reason you prefer MediaPortal over Kodi? Seems all the same, but Kodi gets all the attention.
# RE: MediaPortal or Kodiboredman 2016-04-14 09:51
Actually, I did switch to Kodi recently, and haven't regretted it at all! Unfortunately, I was not successful in configuring my Energy Monitor dashboards natively, because I had difficulties with WebBrowser plugin. So I simply use a standalone Firefox and switch between it and Kodi.
Not ideal, I know. Eventually, I am thinking of perhaps writing a plug in for that.
What do you think?

Please login or register to post comments