Oct 8, 2015

Configuring ddclient on Ubuntu Server to work with Dynu.com

I use dynu.com for determining my public IP address, I use a public IP address for Plex among many other things. dynu.com offers a completely free service, with no requirements to log in every 30 days, so this suits my needs perfectly.

Originally I installed an DDNS update client on my Windows box, but it suffers from flaky RAM and BSOD, so I decided to install the service on my Plex Media Server. It was a simple enough task, but I figured I should write down the step in case it can help anyone else.

Fist, install ddclient on your Ubuntu box:

sudo apt-get install ddclient

Then configure the ddclient:

sudo nano /etc/ddclient.conf

The contents should be similar to the following, using your username, password, domain name obviously:

# Configuration file for ddclient generated by debconf
# /etc/ddclient.conf
use=web, web=checkip.dynu.com/, web-skip='IP Address'

You can also determine the update interval by specifying the following in ddclient.conf:

# check every 60 seconds

Hope this is of some use for you. Thanks for reading.

Sep 23, 2015

Kodi on Raspberry Pi 2 Model B

The other week while watching KordKutters I heard the team talking about the Raspberry Pi 2 being a great device for running Kodi, I was slightly hesitant because I have first generation Pi's, and as some of you may know they are pretty sluggish at times.

Anyway, I dropped the cash on the device to check it out. I bought the:
The major thing to note here is that the Pi 2 doesn't use SD cards, it uses microSD cards, which is great for compactness, but I was surprised - you can tell this was an impulse buy and not researched.

Anyway, as soon as I received the device I loaded the microSD card with the latest beta OpenELEC (5.95.5) - it runs like a dream, snappy GUI (Conq) and quick, timely playback.

As some of you may know I had posted about the history of my devices and my recommendations, I think I would go with the Pi 2 now...

Let me know your thoughts and feelings in the comments, or if you have any questions.

Aug 10, 2015

Setting Up Samba Shares On Plex Media Server

So I decided to setup a samba share on my Plex Media Server so I could pull off the mobile photos that are uploaded.

First off you need to know the location of your mobile uploads, on Ubuntu Server 12.04 that would be:

cd /var/lib/plexmediaserver/Library/Application\ Support/Plex\ Media\ Server/Media\ Upload/Mobile\ Photos/

Once you are aware of the location you can now define the samba share. Open the following file, with write privileges:

sudo nano /etc/samba/smb.conf

At the very end of this file, put in your share details:

path = /var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Media Upload/Mobile Photos/
available = yes
valid users = macleod
read only = yes
browseable = yes
public = yes
writable = no

Share name is [Pictures], path is obviously path and the rest of the settings are self-explanatory.

Restart samba using the following command

sudo service smbd restart

And to test the syntax use the following:

May 26, 2015

Summary Software/Hardware for Kodi/XBMC

The Hardware
After approximately 10 years of using XBMC, the old name for Kodi, I have tried a variety of hardware end-points.

Always searching for the best bang for my buck. My conclusion is the Chromebox, I have a single Asus Chromebox and I am considering replacing my Pi's with two more Chromeboxes. Raspberry Pi's are nice and all, but they just don't have the grunt, you are constantly modifying settings and over-clocking. The Asus Chromebox is a no hassle Kodi player.

It's silent, powerful, and it comes at the great price ~$160.

Now I know a lot of people will be saying the Pi is cheaper, but let's be honest - you need to spend at least $95. For that you get, the Pi 2 (~$45), wireless adapter (~$10), case (~$10), SD card (~$15) - and that doesn't even include cables or a power supply, because you may have it lying around.

The only question about the Chromebox is to consider which version. Some will handle 4k, and some will give you AC, and of course some will give you both.  I have a basic Asus, but am tempted by the Dell Chromebox for the AC network adapter+Matt DeVillier provided some insightful comments on the Chromebox support of 4k and Wireless AC. AC network support can be gained in the cheaper Asus box with the Intel Dual Band Wireless-AC 726, and there appears to be no difference in 4k support between models, however I had previously read the i5 would be required for 4k.

Update: Some other readers noticed hardware omissions, I'd love to hear feedback on other hardware users have had success with, but a comparison always helps.  Here are a few I would love some more performance comparisons on:

The Software
There are a bunch of approaches, with the only real restriction being the hardware your running it on. I have tried the following:

If you have ever read any of my other posts, it will be no surprise that OpenELEC is the clear winner for me.

The Remote
For me this was a simple decision, nothing fancy here - I have tried a variety of solutions.

At this time I am using the USB receiver from a Windows MCE remote and USB IR receiver I purchased for my initial XBMC HTPC, I have programmed my Harmony Ultimate to send MCE commands - and that's it. You could also use FLIRC and have IR commands converted to keyboard commands - which gives you a lot of flexibility (I used to have a remote button programmed to send "w", to update watched status quickly.)

Update: One attentive reader, +Samuel Petat, noted the omission of Pulse-Eight's CEC adapter. Utilizing the CEC adapter leverages your current TV remote to take care of the basic HTPC functionality. I personally find I want a few more buttons, but if you need the basics this is certainly worth investigating.

The Installation and Configuration
So you have your hardware and software, all you need to do now is install the software and you are ready to enjoy your music and home movies!

I created a guide some time ago based on several different sources, but +Matt DeVillier has an excellent guide that is a much better resource than my dated post. 

+Matt DeVillier provides a simple installation script for running, after you have prepared the hardware, and the guide also recommends settings and covers some known issues.

The Extras
Personally, since I run three of these boxes in my house I like to have a synchronized library, providing watched/un-watched/resume status throughout the house. I wrote a post some time ago about synchronizing with a centralized SQL database, it's worth a read. Kodi is certainly moving towards a shared library implementation using UPNP - but I'm not sure it is quite there yet.

May 11, 2015

Updating Plex Media Server on Ubuntu Server

First of all, download the appropriate file for your operating system, https://plex.tv/downloads. For me I am using 64-bit.

In a command line I type:

wget https://downloads.plex.tv/plex-media-server/

This downloads the file to my server, from here I simply install the software:

sudo dpkg -i plexmediaserver_0.

Once the install is finished, reboot.

sudo reboot

Jan 30, 2015

Building a Dedicated Plex Media Server

So I finally decided to build a dedicated Plex Media Server, my desktop wasn't cutting it.
I used the following Plex link to educate myself about the system requirements.

The Hardware
Basically it stated that for every HD movie I wish to trans-code and stream I needed a passmark of about 2000.

Check passmark.com to determine your CPU passmark, and investigate what you need.
I decided that at maximum I would have 3 simultaneous streams going on, of my home movies of course. All these streams being HD - factor in your network upload speeds when determining what you can handle.

So, ballpark I needed a processor capable of about 6000 on the passmark scale - and I also made room for overhead.

I went with the following processor which gave me a passmark around 7300.:

Start with the processor then let this dictate the rest, I like to keep my systems small so I was looking for a mini-ITX that was LGA 1150 compatible. Please remember and check the CPU maker site to confirm motherboard (MB) compatability.

The MB I chose in the end was:

Mini-ITX means smaller case. I went with the following for simplicity.

So I have my processor, my MB, my case. I added 4GB of RAM and a 120GB SSD. The solid state disk was a little large, since I won't keep my movies locally. This is the RAM and HD:

The Software
So to keep things slick I decided to install Plex on Ubuntu, I figure any future services I want to run will no doubt work on Linux, that and I know Ubuntu. Check the official Plex site for more details on setting this up

I installed Ubuntu Server, because I don't really see a need for a GUI front-end, Plex is configured via the web. After installing Ubuntu Server, installing Plex is simple enough:

Download the .deb package from https://plex.tv/downloads. if you are putting it on a USB for installing on the Ubuntu Server, you may want to install usbmount to automount inserted USB sticks.

sudo apt-get install usbmount

Once you have the .deb package on your server, go ahead and install with the following command, relative to your .deb filename of course:

sudo dpkg -i plexmediaserver_0.

To setup the server, open a browser window, and go to, replacing for the IP of the server if you are configuring this remotely.

Setting Up NAS Shares
The next thing you are going to want to do before getting involved with the configuration is map all your samba shares. I used the following link to work out my samba situation:

Make a .smbcredential file in your home directory so you can map your fstab correctly. In this file put username and equals sign and the access username for the share (and domain if loging into a domain) on the first line, put password and equals sign and the password for that user account on the second line of the file. The file should look like:


# OR:
# username=MyUsername@MyDomain
# password=MyPassword

# OR: (for cifs on Windows Serve 2003)
# username=MyDomain/MyUsername
# password=MyPassword

Edit fstab to map your mounts (sudo nano /etc/fstab). Entries in your fstab should look similar to the following:

//master/install_files /path/to/mnt cifs iocharset=utf8,credentials=/path/to/.smbcredentials,uid=1000 0 0



# e.g.

Once completed exit nano and save the changes to fstab. Make sure that the shares mount correctly:

sudo mount -a

If successful, reboot and make sure that mounts and Plex start automagically.

Now configure your Plex shares! Enjoy.

Oct 6, 2014

Modifying your Asus Nexus 7 (2013 2nd Generation)

The beauty of the Nexus 7 over the iPad, in my opinion, is that it plays content without discrimination - I can install Kodi (XBMC) on it without a problem, along with several other functions that Apple wish to lock down - and this is without modifying it. Other than features and functionality, the price point for entry into a tablet world is great!!  The Nexus 7 is a steal,

With the upcoming release of the Nexus 9, we will no doubt see a marked reduction in the price of the 7.

 I decided it was probably as good a time as any to mess around with modifying my Nexus 7 - and I can tell you, I am nothing but pleased.

Here is a summary of what is involved.

  • Setup your computer to use fastboot
  • Unlock the Nexus 7
  • Install custom recovery software
  • Install Cyanogenmod
  • Install Google Play Store
My guide is based on Linux, Crunchbang to be specific, but you can do this on any OS.  As usual, I found my information on the internet.  Check here for another guide and reference to Windows use, although beyond fastboot setup there is nothing different.

Setup your computer to use fastboot

The first thing to do here is install Android SDK on your computer, it in turn gives you fastboot and adb on your system.

Update:  Here is a link for installing ADB and Fastboot on any system,:

Following directions from this site, for Android SDK (http://developer.android.com/sdk/installing/index.html?pkg=studio)
  • Unpack the downloaded Tar file, android-studio-bundle-.tgz, into an appropriate location for your applications.
  • To launch Android Studio, navigate to the android-studio/bin/ directory in a terminal and execute studio.sh (./studio.sh).
  • You may want to add android-studio/bin/ to your PATH environmental variable so that you can start Android Studio from any directory.
Regarding the last point, I had to add the environment information, as it wouldn't run without it.
  1. Install JDK -- sudo apt-get install openjdk-7-jdk
  2. Environment Variable -- sudo nano /etc/environment adding the following line:
  3. JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-i386
  4. Reboot, and Android Studio starts up.

Unlock the Nexus 7

NOTE Unlocking the bootloader on a Nexus device will automatically wipe all device data.
  1. Power off your Nexus 7
  2. Press and hold the Volume Down and the Power button to power on the Nexus 7.
  3. Connect the device to the computer through USB.
  4. Verify your PC sees the device by typing:
    sudo fastboot devices
  5. If you don't see your device serial number, and instead see "", fastboot is not configured properly on your machine. See fastboot documentation for more info.
  6. From the same terminal, type the following command to unlock the bootloader:
    fastboot oem unlock
A disclaimer will display on the device that must be accepted. Use the volume keys to cycle through the options. Pressing the power button should confirm your selection.  If the device doesn't automatically reboot, reboot it from the menu. It should now be unlocked. You can confirm this is the case if you see an unlocked icon at the bottom of the Google boot screen during reboots.

At this point, download the Cyanogenmod, or whichever customer ROM you would like - to your download folder on your Nexus 7.

Install custom recovery software

Now you can install a variety of different custom recovery software, I installed TeamWin, not the latest but here you can find the latest, http://teamw.in/project/twrp2/193

  1. Download the recovery software of your choosing to your PC.
  2. Power off your Nexus 7
  3. Press and hold the Volume Down and the Power button to power on the Nexus 7.
  4. Connect the Nexus 7 to the computer via USB.
  5. Verify your PC sees the device by typing:
    sudo fastboot devices
  6. If you don't see your device serial number, and instead see "", fastboot is not configured properly on your machine.
  7. Flash recovery onto your device by entering the following command:
    fastboot flash recovery your_recovery_image.img
    (Where the latter part is the filename of the recovery image)
  8. Navigate using the volume keys and select RECOVERY using the Power key.
Leave your Nexus 7 in Recovery.

Install Cyanogenmod

While in Recovery do the following:
  1. Wipe Data
  2. Select Install
    • Install new ROM from ZIP (browse to your downloaded ROM of choice)
  3. Reboot.
Once the system has rebooted, give it some time to check for updates, once all updates to the ROM are finished, make note of the version you are running and proceed to the following location and download the appropriate Google Play Store APK to your download folder.

Install Google Play Store

Now to install Google Play Store to get back all your application goodness.
  1. Power off your Nexus 7
  2. Press and hold the Volume Down and the Power button to power on the Nexus 7.
  3. Navigate using the volume keys and select RECOVERY using the Power key.
  4. Select Install
    • Install new Google Play Store from ZIP
  5. Reboot.
Now you should be running an unlocked custom ROM on your Nexus 7.