This guide describes how to upgrade your XstreamTec HTPC appliance from XBMC to KODI or re-install the system, in case of system corruption.

XstreamTec does not appear to have an official website but I have contacted them via Amazon and they promptly replied with instructions.

Prerequisities

  • An XstreamTec HTPC media player.
  • A Linux system with an SD card slot.
  • A Windows PC or VM (optional).
  • An empty SD card (4GB minimum).

Install the recovery firmware

  1. Download the android recovery sd card image (use Google Chrome or Chromium):

    https://mega.co.nz/#!wExHTJgC!XPuoFyhF_S-roTEhsMhQ8BLrfH4R5tXhp2jwaLF_o1M

    • Convert the image to raw format:

      If you extract the downloaded file (MATRICOM_MX2_115_FULL_AUG_09_2013.rar) you will get the image file (MATRICOM_MX2_115_FULL_AUG_09_2013.imgc). Alas this file has a peculiar format (.imgc) which is some kind of compressed raw image. I couldn’t figure out how to convert this to a raw (suitable for dd) image on Linux. To convert this to raw you need a Windows only utility called HDDRawCopy. So you will need a Windows system (WINE does not work for this) and use HDDRawCopy to convert the .imgc file to Raw/dd format.

      If you do not have a Windows machine, you can download the image I converted already, in .bz2 format from here: MATRICOM_MX2_115_FULL_AUG_09_2013.dd.bz2. Just extract it like this to get the raw image:

    $ cd ~/Downloads
    $ bzip2 -d MATRICOM_MX2_115_FULL_AUG_09_2013.dd.bz2
    
    • Prepare the SD card:

      Note
      Make sure you don’t have any useful data on the SD card!

      First verify that the SD card is inserted:

      $ cat /proc/partitions 
      major minor  #blocks  name
      
        8        0  488386584 sda
        8        1     524288 sda1
        8        2     249856 sda2
        8        3  487610368 sda3
       11        0    1048575 sr0
      252        0  487608320 dm-0
      252        1  483524608 dm-1
      252        2    4067328 dm-2
      179        0    7761920 mmcblk0
      179        1      71680 mmcblk0p1
      179        2     124928 mmcblk0p2
      179        3    7559168 mmcblk0p3
      

      Unmount all partitions on the SD card:

      $ sudo umount /dev/mmcblk0p*
      

      Now use fdisk and delete all partitions from the SD card:

      $ sudo fdisk /dev/mmcblk0
      
    • Dump the image on the SD card:

      After preparing the SD card we need to dump the raw image on it:

       $ sudo dd if=MATRICOM_MX2_115_FULL_AUG_09_2013.dd of=/dev/mmcblk0
      

      Note
      Be very careful with dd! If you specify the wrong device on the of= parameter you may destroy useful data on other devices, even you main hard disk!

Boot the recovery image

Now we need to go though these steps to load the recovery image:

  1. Power off the XstreamTec appliance.

  2. Insert the SD card, in the SD slot of the XstreamTec.

  3. Press the reset button. This is somewhat tricky. The reset button is inside the AV port of the XstreamTec so you will need a toothpick to press it.

  4. Power on the appliance, while keeping the reset button pressed. The system will enter the recovery installation procedure. Release the reset button when the recovery starts.

  5. Follow the on-screen instructions to load the Android recovery image. Then reboot into android and see if it boots correctly.

Install the newer version of the Android system

Now we need to install a more recent version of Android on the XstreamTec.

  1. Download the newer Android firmware:

    $ cd ~/Downloads
    $ wget http://matriserver.com/files/MX2/firmware/MX2-full-1.1.6-firmware-RC.zip
    
  2. Prepare the SD card:

    • Insert the SD card in your PC and check if it is mounted:

      $ df -hT | grep mmc
      /dev/mmcblk0p1              vfat      3,7G  100M  3,6G   3% /media/user/0E99-207A
      
    • Delete all previous files from the SD card:

      $ cd /media/user/0E99-207A
      $ rm -fr * 
      

      Note
      Once again make sure you don’t have any data you need on the SD card.

  3. Load the firmware on the SD card.

    Unzip the contents of the downloaded zip file (MX2-full-1.1.6-firmware-RC.zip) on the SD card:

    $ cd /media/user/0E99-207A
    $ unzip ~/Downloads/MX2-full-1.1.6-firmware-RC.zip
    

Boot the new Android firmware

Go through these steps agaon to load the new Android firmware:

  1. Power off the XstreamTec appliance.

  2. Insert the SD card in the SD slot of the XstreamTec.

  3. Press the reset button. Repeat the toothpick procedure as previously.

  4. Power on the appliance while keeping the reset button pressed. The system will enter the new Android firmware installation procedure. Release the reset button when the recovery starts.

  5. Follow the on-screen instructions to load the new Android firmware. Then reboot into the new Android and see if it boots correctly.

One would be tempted to keep the Android system and use XBMC or install Kodi on it. This way you can have Android and XBMC/Kodi on your XstreamTec appliance. Alas the XBMC/Kodi experience for Android is not as good as the one on OpenELEC. Trust me, if you need the full Kodi experience you need to install OpenELEC.

Install OpenELEC on the XstreamTec HTPC media player

  1. Download the OpenELEC firmware:

    $ cd ~/Downloads
    $ wget https://www.dropbox.com/s/toe4kxi9ivomlmp/OpenELEC-Amlogic.MX2.arm-5.0.3.zip
    

    Update: There is a newer version at github.

  2. Prepare the SD card:

    • Insert the SD card in your PC and check if it is mounted:

      $ df -hT | grep mmc
      /dev/mmcblk0p1              vfat      3,7G  100M  3,6G   3% /media/user/0E99-207A
      
    • Delete all previous files from the SD card:

      $ cd /media/user/0E99-207A
      $ rm -fr * 
      
  3. Load the OpenELEC firmware on the SD card.

    Unzip the contents of the downloaded zip file (OpenELEC-Amlogic.MX2.arm-5.0.3.zip) on the SD card:

    $ cd /media/user/0E99-207A
    $ unzip ~/Downloads/OpenELEC-Amlogic.MX2.arm-5.0.3.zip
    

Boot the OpenELEC firmware

Once again repeat these steps to load the OpenELEC firmware:

  1. Power off the XstreamTec appliance.

  2. Insert the SD card in the SD slot of the XstreamTec.

  3. Press the reset button. Repeat the toothpick procedure as previously.

  4. Power on the appliance while keeping the reset button pressed. The system will enter the OpenELEC installation procedure. Release the reset button when the recovery starts.

  5. Follow the on-screen instructions to load the OpenELEC firmware. Then reboot into your freshly installed system and see if it works properly.

Enjoy your Kodi experience!

References