Taking the lego contruction instructions from http://mindcuber.com/ and improving the software (python) to solve it faster.
This was done as a hobby project when I had a few days of work, and playing with LEGO is always fun!
The cube is solved via the 'corner' algorithm, which allows you to calculate a solution to the cube by analysing the colour of the top left cube on each side. Thankfully, the Mindstorms kit comes with a rudimentary colour sensor to make this much easier. Actually rotating the cube to analyse the corners, and then solve it is done with a combination of a rotating cradle and an extendable arm.
The rotating cradle houses the cube, allowing you to manipulate the yaw. Using the extending arm to grip the top two layers of the cube, rotating the cradle will have the effect of actually rating just the bottom layer. Extending the arm further will partially push the cube out of the cradle, but in a way which will force it to pivot over the cradle bars to affect the pitch. Retracting the arm will then let the cube fall back into the cradle (thanks to the slope of the whole mechanism) having achieved a 90% pitch shift.
Repeating the actions described above, the cube can be solved in approximately two to three minutes.