The fun I had with this one!
The goal: to get Airplay working on my Raspberry Pi.
The rationale: turns out that my HP Microserver (N40L) doesn’t support the hardware extensions needed to pass-through a USB sound-card to VMWare ESXi 5.5, in order for it, in turn, to pass that to the VMs. So, my goal of having a Windows VM running iTunes, Spotify etc. and playing that through a long (15m) 3.5mm cable in a #8 fencing wire approach to extending my media upstairs has come up short. Ha, ha.
So, my backup plan? I have a Raspberry Pi sitting right beside the Microserver (with a very long HDMI cable for extending same said video media upstairs). Maybe I could use that, I thought.
The plan: the Raspberry Pi is running RaspBMC (an awesome distro), and I thought it worthwhile to use a USB soundcard (specifically, a Creative Sound Blaster USB stick) to improve on the not-so-flash audio that comes out of the native 3.5mm jack.
Enter Shairport – a port of Airplay that can run on a Pi.
This site has most of the instructions needed to download and compile the Shairport source, including the additional instructions when using Raspbmc as a base.
From there, the gotchas I uncovered:
- The SoundBlaster seemed to have dramas with rubbish sound when the analog input (default) was selected, but no problems when what ALSA identifies as the S/PDIF input. So, to use that, I had to create a
/etc/asound.conf file that contains the line
pcm.!default front:U0x41e0x30d3 and nothing else. The U0x… is the identifier of the SoundBlaster that I got from using the
aplay -L command, along with the iec958 which is the identifier of the S/PDIF input.
- I found I didn’t need to have the
options snd-usb-audio nrpacks=1 line in the
/etc/modprobe.d/alsa-base.conf file, so that’s good.
- Still some noise coming through the soundcard, so I used
alsactl store 0 to mute and save the changes to the Mic input.
- The final key to getting rid of the noise as best I could was to add the line
dwc_otg.speed=1 to the
/boot/cmdline.txt file which, I think, slows down the USB ports to cut back noise.
What a drama! But now I have it (mostly) sorted and stable, and receiving pretty good sound from a VM with a hi-fi virtual audio cable and AirFoil.
Not too bad.
When you have disks sitting in a VMWare vSphere/ESXi box that are formatted NTFS, and you want to access them from inside a VM, you need to look at Raw Device Mapping (RDM).
What it took more than a little time to find out is that for SATA disks (i.e. not in a SAN or RAID config), you need to create “pointers” first. Great instructions are available here. But, in essence, you’re looking to make a couple of calls like:
vmkfstools -z /vmfs/devices/disks/[long weird name of disk got from ls -l in /dev/disks] /vmfs/volumes/[name of datastore]/[sub folder]/[name of disk].vmdk
Turns out that VMs in Hyper-V can’t handle sound unless you’re using RDP. So, if you have a sound-card in the server that you’re wanting to use, you can’t access it.
So, I’m turning back to VMWare.
Continuing the journey towards Hyper-V server, I’ve found some tricky challenges with remote management of the server from a Windows 8 PC when said PC is not on a domain, but is in a workgroup.
This site has the answer I needed – in essence, enabling the anonymous user on the client and then changing some firewall rules on the server. I actually couldn’t get the Firewall snap-in to work, but continuing to issue commands in text worked for me.
Also, this site has 12 steps for remote management: http://pc-addicts.com/12-steps-to-remotely-manage-hyper-v-server-2012-core/
There’s a whole new world when you’re migrating from VMWare to Hyper-V.
I’ve found some good links with some great tips – starting with this one: http://www.coretekservices.com/2014/apr/29/converting-vmware-linux-guest-hyper-v%E2%80%A6
In case you’re wanting to change the logon screen wallpaper on a Windows 7 machine, details are here http://www.techspot.com/guides/224-change-logon-screen-windows7/
- Update the
HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\Windows\ CurrentVersion\ Authentication\ LogonUI\ Background\ OEMBackground value to 1
- Create a folder called C:\Windows\System32\Oobe\info
- Then create a subfolder called backgrounds
- Then put the wallpaper – named BackgroundDefault.jpg and no more than 256KB – in the folder.
Turns out that Raspberry Pi is pretty sweet! Not only is the little-computer-that-could a great project with some really laudable intentions re: education, it’s also a great platform for XBMC!
Just wanted to record some of the tips and tricks and learnings as I go through the process of learning another platform:
- When setting up passwordless access via SSH (i.e. using keys), the
.ssh folder needs to be
chmod 700, the
authorized_keys2 files both need to be there with
chmod 600, and the key needs to be a DSA key indicated by
ssh-dss in the
- Yeah, I’m not proud of this workaround (okay, maybe a little), but when you have a large video library (600+ titles), the Pi struggles a bit with reading back from the cache. So, in the short-term, I’ve installed
incrontab and I’m watching the temp folder with the following line entered via
/home/pi/.xbmc/temp/ IN_CLOSE,IN_CLOSE_WRITE,IN_CLOSE_NOWRITE rm /home/pi/.xbmc/temp/vdb-17492a19.fi. In short, the moment that file is written, it’s deleted again. Saves about 10-15 seconds off the load time, but it’s still slow. :(