Sumit Aich is working on an interesting concept for tracking a stylus in 3D space. He’s using a tub of water! You can find all the files necessary to replicate this on his Hackaday.io page.

From Sumit:

Project Summary –
A ridiculously low cost sensor for real-time tracking of precise coordinates of the tip of a stylus, in confined 3D space.

Description –
The basic idea behind this 3D sensor is the use of a parallelepiped water container as a water potentiometer device. This principle is employed to develop a ridiculously low cost sensor for real-time tracking of the precise coordinates of the tip of a stylus, in confined 3D space (within the dimensions of a container).

The Challenge –
The 3D positioning and gesture tracking technology incorporated in all of today’s sensors, such as the Kinect Sensor or Leap Motion Controller, as well as the camera/sensor included in the VR bundles of Oculus Rift or HTC Vive, is based on IR.
The challenge that this project addresses is to develop a sensor device, alternative to the 3D IR camera/sensor, which –
— costs merely 6.4%, ($7.6, i.e, counterfeit Arduino Uno + geared motor) compared to 2 x Oculus Sensor (2 x $59 as stated in https://www.oculus.com/accessories/), and also much less than other IR cameras/sensors.
— has completely open source hardware (an Arduino project), software and tracking algorithms, as opposed to the hardware and tracking algorithms of those IR cameras/sensors.
— is precise up to 1 mm, along all 3 dimensions, as opposed to a resolution of around 1 cm provided by today’s IR camera/sensors.
— can be reconstructed from scratch in a mere 10 minutes, and has very simple schematics and build design.
— as opposed to IR cameras/sensors is able to see beyond opaque obstruction, and whose tracking precision is not compromised owing to white or shiny surfaces.

Brief Explanation of Tracking Algorithm –
— Water potentiometer gives the voltage at tip of the stylus.
— Voltage gives a plane containing the tip of the stylus.
— Geared DC motor rotates the sensor to give 3 different voltages for the same fixed tip.
— 3 different voltages implies 3 non-parallel plane equations.
— 3 non-parallel planes intersect at a unique point.
— x,y,z coordinates of that point is the stylus tip’s location.

Serial output from Arduino Uno –
Arduino Uno, then, prints these x, y and z coordinates to the Android app, serially, via USB OTG. The Android smartphone is attached to the rotating sensor, along with Arduino Uno. The Android app then relays these x,y,z coordinates to the client app running on the Laptop, via Wi-Fi.

Extended Applications –
— Sculpting in Virtual Reality ( interfaced with a VR headset such the Google Cardboard, Oculus Rift , or HTC Vive ).
— Painting in Virtual Reality ( interfaced with a VR headset such the Google Cardboard, Oculus Rift , or HTC Vive ).
— Modelling in Virtual Reality ( interfaced with a VR headset such the Google Cardboard, Oculus Rift , or HTC Vive ).
— Interacting with holograms viewed from devices such as Microsoft Hololens.
— CGI designing.
— Virtually building models to be 3D printed.

A World Changing Idea and How it Benefits the Society –
— This sensor can be quickly and easily be constructed even by non-engineers and high school students. So it can used for a more interactive and fun way of learning science by interacting with holograms.
— This sensor is a low cost alternative to IR cameras/sensors for amateur or professional artists.
— Since its tracking algorithms and hardware is completely open source, it can be developed by researchers around the world to further minimize its cost and achieve a greater deal of precision.
— Imagine one of this low cost DIY sensor at every home on the planet. It is surely going to revolutionize the way we think and begin a new era of computing since it enables 3D interaction with computers.