XBMC Remote Music Client

For the past few days, I’ve been looking into a way to automatically, remotely play music through my speakers when I walk into my room. I’ve done some research and have a pretty simple solution!

Hardware:The Remote: HTC One M8: the Remote Control phone. This runs Yatse and sends commands to the media client.

The Client: Moto X: This is a spare Android phone I had lying around. This will be the media client.

The Server: For the server, I’m looking into a DIY NAS setup, with up to 32tb of storage space and room for expansion. For testing purposes, though, I’ll be using an old Optiplex GX520 that’s been gathering dust.

Software:

The client runs SPMC, an official fork of XMBC. It doesn’t have to be rooted, which is good, because my phone’s not rooted.
To handle the automation side of things, I’ll be using Trigger to open SPMC and begin media playback.

The server will run FreeNAS and serve media over the network.

Setup:Client
SPMC
I installed SPMC without a hitch, enabled Remote Web control under settings, then was able to connect my main phone to the client to control it remotely using Yatse. Neat!

Trigger/Tasker setup
So this is where it gets a bit complicated. We need to install Tasker (Paid App) and Trigger, Android apps that allow for automation. On the remote control phone, I set up my tasks using this guide. The guide also mentions this API documentation, which I assume will come in handy in the future.

Server
Serverside, I burned FreeNAS to a bootable USB drive. It took a very long time to complete the image transfer to the thumb drive – 12002.592716 secs, or 3.33 hours.

Booting my server from said thumb drive: While booting, it appeared that the installer had frozen. However, this thread says it just takes a long time on first boot.

5 minutes pass.

Okay, FreeNAS is controlled via a neat web interface, whose location is presented by the server. I’m continuing forward using this guide. So far, it’s been the easiest part of this setup. I even moved it into the closet already!

I’m just remotely installing some plugins.

Now, it’s time to test the NAS! I’m copying my music library for this initial test.
So exciting! It’s working! And the speed isn’t terrible, considering it’s reading off my external drive, then sending the data over wifi to the NAS. Again, since the hardware I have now is just for testing, I’m not ultra concerned about it.

I’ve started configuring the plugin I installed, MiniDLNA, using this guide. MiniDLNA grabs my media files and streams them over my network to any client computer – in this case, my phone.