works on the pi, although not great