Code now tested, hardware still needs ironing out.