I’ve modified my automated build system for OpenELEC so that it now creates RPi2 builds in addition to regular old RPi builds – https://resources.pichimney.com/OpenELEC/dev_builds/?C=M;O=D

I’m a bit behind on writing this up, but just as I sometimes call out bad customer service it’s also worth highlighting good experiences.


John Lewis gave me a two year warranty on my Chromebook, which meant that when the battery died I was able to get it fixed.


When I bought my Chromebook back in December 2012 I got it from John Lewis. Partly this was because I had a ton of John Lewis vouchers (that I generally use for online grocery shopping at Waitrose), and partly getting it delivered to my local Waitrose was going to be more convenient that hanging around at home for postal delivery.

Since I got my Lenovo X230 the Chromebook has been mostly languishing under my bed, occasionally being pulled out when I need something with a keyboard. Around November last year I noticed that the battery was flat, which I thought was just down to having not plugged it in properly. Sadly next time I used the Chromebook it was clear that the battery wasn’t charging. I tried various software things I found online to attempt to revive the battery, but nothing worked. It seemed that the battery (or charging circuit) would need to be replaced.

Had I been able to find a new battery easily I’d have probably fixed it myself, even though they’re built in rather than removable, but that wasn’t an option.

2yr warranty to the rescue

Some checking revealed that I had until Christmas 2014 on the two year warranty, so I called the John Lewis help line, and was promised a call back the next day by their technical support people. That didn’t happen, but my second attempt went much better and collection of the broken Chromebook was arranged. On the day promised (and with a text telling me the hour of collection[1]) DPD[2] arrived with a carton and packing material to take it away.

A little over a week later I got an email telling me it was on the way back to me, and once again I was told which hour the parcel would arrive. It came back with a job ticket saying the battery had been replaced[3], and was working perfectly. I’d done a factory reset and wipe before sending it off, but as most of the state is stored in the cloud it only took moments to get back to fully functional.


Since John Lewis price match, and offer a two year warranty on things like this I should probably try to use them more often. If it wasn’t for the extra year of warranty my Chromebook would now be stranded in the house where it could be run from its power supply.


[1] The texts identified themselves as coming from AppleRepair.
[2] Some of the whining I see online would suggest that DPD are as bad as CShityLink were, which isn’t my experience at all. I love the fact that I get an email early in the day with a one hour delivery window (so I know when it’s safe to walk the dog and pop down the road to the local store), and they’ve never let me down.
[3] At the time of arranging the repair there had been some muttering about batteries not being covered by the warranty, but this wasn’t an issue in the end (and what exactly are customers supposed to do about things that have batteries built in anyway?).

ClusterHQ, the team behind Flocker, have announced Powerstrip, an Apache licensed tool to prototype Docker extensions. Powerstrip works as a proxy between the Docker command line interface (CLI) and the Docker daemon allowing the Docker API to be extended. The main advantage of this approach is that by extending the Docker interface, rather than wrapping the Docker CLI, it becomes much easier to compose together Docker add ons such as Flocker or Weave.

continue reading the full story at InfoQ


The Administrator setup for Google Apps Migration guide makes things look pretty straightforward, but it’s much, much more complicated. What should be just a couple of check boxes turned out to be a twisty turny journey through hidden menus littered across distant parts of the administrators console.


The move from CohesiveFT to Cohesive Networks meant I needed to move all of my email out of one service and into another. Last time I did this it was easy – suck email down from old account using an IMAP client (Outlook), then push email up to the new account via IMAP. Obviously this was too much of a good thing, and was hurting Google’s poor, tiny and fragile infrastructure[1].

It all started out fine

I actually had no problem whatsoever pulling down all of my emails from the old account, even though at 3.1GB of data it should have bust my bandwidth limit. The trouble began when I tried to upload to the new account. About 30 items (of about 35,000) made it over, and then it choked.

Google Apps Migration for Microsoft Outlook

Next I tried the official tool. But that didn’t get me very far:


I didn’t have admin access to the new account, but I was assured that the Email Migration API was enabled. If you were an admin, and you saw this then you’d probably think everything was fine:


Further down the same page there’s a section about the Email Migration API. It doesn’t actually let you do anything – it just links to this (not very helpful) web page:


Show More

To actually get headed in the right direction you first have to click on the little ‘Show More’ at the bottom of the Security page[2]:


This brings up the ‘Advanced settings’ option. It will remain a mystery of the universe why Google choose to hide a single extra item with a ‘Show more’.


At this point you might jump straight at ‘Manage API client access’ but don’t. It’s ‘Manage OAuth domain key’ that you want first:


Now check the box to ‘Enable this consumer key':


It takes a few minutes for this to take effect. So grab a coffee or check email or something before returning to the ‘Manage API client access’ part:


Now paste in your domain name and the URL for the email API, which is https://www.googleapis.com/auth/email.migration


If you’ve waited long enough after enabling the consumer key for your domain then Authorize should work.

We’re not done yet

At this stage I managed to upload about 70 emails from the tool before it failed complaining about network issues. Subsequent attempts didn’t get any further.

A visit to Apps > Google Apps > Setting for Gmail > Advanced settings revealed some additional boxes to be checked:




Got there in the end

The migration tool still didn’t work, but I was now able to upload via IMAP (just as I’d planned to do in the first place). It took a whole day, but it got there in the end.


It’s quite possible that I could have made my Outlook IMAP upload work just by doing the last bit (in the Google Apps menu).

Enabling mail API access, which is what the migration tool seems to want, is much harder than it should be (or is made out to be). It’s also pointless, as the migration tool doesn’t seem to work properly.

I can’t end here without saying

The only time I ever use Outlook (which I despise) is for doing this sort of thing. Well… it ought to be useful for something.


[1] Since Google’s infrastructure is basically the largest in the world I’m struggling to imagine what sort of abuse let to them clamping down on email uploads, but I’d bet it has something to do with spammers.
[2] The Google Apps Migration for Microsoft Exchange Administration Guide (pdf) got me pointed in the right direction here.

I fell into a trap with my new Gen 8 Microservers like this:

  1. Install 60 day trial license for iLO Advanced
  2. Update BIOS date/time
  3. Find that trial license has now expired :(

There really should be some sort of warning on the license page (and maybe also the serial/password tag) to say update your clock before applying a trial license. Here’s how I got things back to factory defaults:

Firstly press F8 at the appropriate part of the boot sequence:


The config tool opens on the option to set defaults:


So just hit enter and then F10 to confirm:


That’s it – the trial license will now work again. If like me you set a more memorable password than the one on the factory tag then that will have to be reconfigured.


I’ve been a fan of HP Microservers since the original NL36 model. When the newer Gen8 servers came to market they were a bit pricey, but the cost has come down, and cash back deals have returned. Faster CPUs, larger official memory capacity, dual NICs and remote console capabilities makes these ideal for a home lab.


I’ve been working on our new vns3:turret platform a lot recently. It’s designed to run on enterprise networks rather than in the public cloud, which means that I needed some VMware hosts to play with. My older NL36s and NL40 Microservers were pressed into action, but the need for more capacity pushed me towards the latest model (which isn’t all that new any more, and might well be replaced by a Gen9 offering any day[1]).


A bare bones model with G1610T CPU, 2GB RAM and no disk is presently £149.95 (£179.94 in VAT) at ServersPlus. HP are offering £35 cashback so that’s an out of pocket cost of £144.94 – not quite as amazing as when the original Microservers came with £100 cash back, but not far off.

I went for the 16GB ESXi 5.5 Test Bed Bundle, and ServersPlus did an excellent job of getting me the machines quickly and efficiently.


The Gen8 looks a lot prettier than the earlier model, and it’s much easier to get the motherboard out (though that’s only necessary for a CPU upgrade as the RAM is now easily accessible).

Unfortunately the 5.25″ drive bay has been sacrificed for a laptop style optical drive slot, which limits additional storage options. The eSATA port has also disappeared.

The newer drive caddies don’t feel as robust as the older ones, not that it matters once a disk is screwed in.

Remote insight

Probably the best feature of the Gen8 is the inclusion of HP Integrated Lights-Out (iLO), which can be used to provide a remote keyboard/video/mouse (KVM) capability. Out of the box the remote console only works until the OS boots, but an iLO advanced license provides the ability to use KVM after boot. Those licenses are hideously expensive at full sticker price, but there’s a healthy secondary market, and I found one on Amazon for less than $20. A 60 day free trial license can also be obtained.

Since I keep the servers out in my garage (which is presently very cold) I’m glad that I don’t have to go out there.


16GB of ECC RAM is officially supported and very easy to install. It’s a shame it’s not 32GB, but with the standard CPU offerings the balance is probably right.

One of the things that put me off the Gen8 when it launched was the weedy CPU range. The Celeron G1610T and Pentium G2020T on offer are both a bit weak (though notably better than the AMD CPUs in earlier Microservers). Fortunately the CPUs are upgradable. I was able to find a couple of E3 1220L V2 parts on eBay for £129 each[2], which at 17W power rating are an ideal upgrade option. Others have had success with 45W CPUs such as the E3 1265L V2, and many have even got away with running full power 69W parts such as the E3 1230 V2 (even though the heat sink is only rated at 35W)[3].

Besides the extra speed on offer my main reason for doing a CPU upgrade was to get VT-d, though my attempt to pass through the B120i storage controller to a VM failed.

We’re going to need a bigger boat switch

The Gen8 has two integrated Broadcom GigE ports (which is great for VMware) plus the iLO has its own port (though it can share one of the main ports if required). Along with buying secondary GigE NICs for the other servers in my garage this has quickly pushed me from 5 ports to 8 ports to 16 ports

Running ESXi

The supplied USB drive with the HP customised ESXi 5.5 install just worked, and I was immediately able to start installing VMs onto iSCSI and NFS storage without even putting any drives into the bays. I’ve yet to load up these machines, but I’m tempted to migrate over a bunch of VMs from my present Hyper-V setup on a Dell T110 II as potentially both Microservers will have a lower power budget than the single larger server (and provide better tolerance to a single machine hardware failure).

NAS potential?

I had a go at installing NAS4Free on ESXi using raw device mappings (RDM) to 4x 2TB HDDs. Everything seemed to work pretty well, and I was able to get a nice big RAID-Z volume. That’s a setup I’d probably only use for warm storage or media files as I’d want SSD for anything else.


I really like the Gen8 Microserver. It’s proper server engineering in a small, cheap and elegant package. The best bit is the iLO capability, but there are plenty of other things to like about it.


[1] I’m not too concerned about the possibility of newer Microservers, as the Gen8 is very capable, and the Gen9 is unlikely to be offered at such a bargain price.
[2] In some places the Gen8 is available with the E3 1220L V2, though I’ve never seen it on sale in the UK.
[3] There are so many CPU choices that there’s a FAQ about them.

The announcement of Rocket by CoreOS was perceived by many to be a direct challenge to Docker, particularly as it came on the eve of DockerCon Europe and threatened to overshadow news coming out at the event. Docker, Inc. CEO Ben Golub was quick to fire back with his ‘initial thoughts on the Rocket announcement’. This piece isn’t about the politics of ecosystems and VC funded startups, which I’ll leave to Colin Humphreys (and note an excellent response from Docker Founder and CTO Solomon Hykes). It also isn’t about managing open source community, which I’ll leave to Matt Asay. Here I want to look at systemd, which lies at the heart of the technical arguments.

continue reading the full story at The New Stack

At their re:invent 2014 show Amazon launched AWS Key Management Service (KMS), “a managed service that makes it easy for you to create and control the encryption keys used to encrypt your data, and uses Hardware Security Modules (HSMs) to protect the security of your keys”. At launch the service supported EBS, S3 and Redshift. Additional support for Elastic Transcoder was added in late November.

continue reading the full story at InfoQ

When I first saw the LinkIt ONE at Mediatek’s stand at the Web Summit it was being shown of with a bunch of neat modular peripherals. The person on the stand had no idea about them, and couldn’t explain why the board had its own connectors for these modules. It didn’t take much sleuthing to discover that the modular system was Seeed Studio’s Grove system[1], and I ordered myself a Grove Starter Kit (for Arduino[2])

The kit comes with a bunch of sensors and actuators. It’s much like what can be found in an Arduino starter kit like the ARDX, but the key is that everything is connected together with the same 4 wire leads rather than having to plug individual components and wires into breadboard.

The simplicity of connection makes prototyping much quicker and easier, so I think the Grove kit does a good job of making Arduino development more interesting and accessible. I’m also pleased to say that the hardware is backed up by decent libraries and demos (licensed with LGPL).


[1] Mediatek partnered with Seeed to create and distribute the LinkIt ONE.
[2] They also do starter kits for the LinkIt ONE, TI Launchpad and a variety of other dev boards.

TL;DR – The LinkIt ONE is an awesome Arduino, with a ton of great integrated peripherals, but I fear there’s too much of a gap between Arduino style development and building the next generation of connected things – though hopefully that gets covered by the forthcoming Eclipse based SDK.


I was at the Web Summit in Dublin a month ago, and one of the key themes that stood out for me was cellular connectivity for devices. I saw a ton of things that were taking advantage of low end, low cost and low power data services – mainly 1G/2G stuff like SMS and GPRS (not power hungry high bandwidth 3G). The coolest thing I saw at the event was the Brewbot (which doesn’t [yet] have any cellular), but not far away was a stand showing off Mediatek’s LinkIt ONE.

The LinkIt ONE development board is an open source, high performance board for prototyping Wearables and IoT devices

The board

The board has the familiar Arduino form factor, and can be programmed from the Arduino IDE, so it ends up feeling like an Arduino bolted on to a mobile phone. It comes with antennae for cellular (SMS/GPRS), bluetooth/wifi and GPS. There’s also a LiPoly battery in the box meaning that you can straight away make projects that could be put in a tupperware box, left in a field and send data back to base – all for $79 from Seeed Studios (who Mediatek partnered with for distribution).

The system on chip (SoC) used by the LinkIt ONE is Mediatek’s MT2502A. It isn’t actually a cellphone SoC, and (according to the pdf documentation) is intended for wearables.


After a brief fight with the Mediatek registration wall I found the SDK on github. I then moved on to a fight with Windows 8 to install the drivers[1]. With a fresh install of the IDE in place it was easy to get the blinking LED ‘hello world’ demo going.

Huge memory

One thing that stands out straight away is that the capacity of the LinkIt ONE is huge compared to a more typical ATmega328 based Arduino like the Uno. There’s little risk of running out of memory – my simple projects never reported more that 0% usage!

I build a pager

The project I ended up putting together at the ThingMonk hack day was a pager. It receives SMS messages and displays them on a dot matrix screen. I used a Grove LCD RGB Backlit display, which is part of the excellent Grove Starter Kit (something I’ll write more about another day), so I was able to make the display change colour to red/green/blue/white according to the first letter of the received message.


The code is on GitHub, and makes use of the Seeed Studios Grove LCD RGB libraries.

Great but…

The Arduino form factor and development environment have a very easy on ramp for quick and simple development, but I fear it wouldn’t be long before I’d feel held back by its limitations and want to do something more native. I also wonder how I could take the next step and turn something I developed with this board into a (mass produced) product. Mediatek obviously want to sell more SoCs, but this approach means that I don’t get close enough to the SoC to do much with it. I’d like the SDK better if it also had libraries, demos etc. for C (and maybe a real time OS).

It’s relatively simple to take a project developed on a regular Arduino and move it to an ATmega328 kit (like a Shrimp), and it’s then another easy step to port things onto an ATtiny or similar. That progression is presently missing in the Mediatek environment.

Update 5 Dec 2014 – maybe MediaTek have updated their site, or maybe I just wasn’t playing close enough attention in my rush to get started, but I see a promise of ‘an Eclipse version planned for later this year’, which I think will be pretty much exactly what I’m looking for.

The LinkIt OS is based on an RTOS kernel. On top of this kernel is a set of drivers, middleware, and protocol stacks that expose the features of the chipsets to a Framework.

I can hear the open source zealots bleating from here about proprietary binary blobs, but embedded development sadly remains about a decade behind the mainstream. If the APIs are as easy to consume as the Arduino examples then I’ll be pretty happy.


I’m looking forward to doing more projects with the LinkIt ONE. It’s the best Arduino clone I’ve ever tried, and seems amazing value for money compared to buying a whole bunch of shields for a regular Arduino. Sadly there seems to be a gap between the Arduino style of development and unleashing the full capabilities of the hardware, but hopefully the Eclipse SDK fixes that.


[1] The SDK claims to support Windows 8, but you need to jump through hoops to disable enforcement of driver signing to get the drivers installed. This is sadly all too typical even though Windows 8 has now been out for 2 years.


Get every new post delivered to your Inbox.

Join 108 other followers