Ping Pong Ball Improves the Google Daydream Controller

[Matteo] has just released a new installment of his Google Daydream VR controller hack, which we first covered last year (when he got it working with iOS). This time around he’s managed to forge a half Daydream, half PlayStation Move controller hybrid.

The original controller only managed a mere 3 DOF (Degrees of Freedom) using the internal accelerometer; although this conveyed rotational motion around the 3 axis, transitional information was completely lacking. [Matteo] resolves this by forming a simple positional marker out of a white LED enclosed in a standard ping pong ball; He tracks this setup using an iSight camera.

To gel everything together, he adds motion tracking to his already extensively developed software stack, which enables him to unshackle the Daydream controller from Android. He deciphers the Bluetooth packets and streams the sensory information straight to a web browser over a webSocket connection.

sf-stack

The results are quite impressive and the tracking is smooth. Not only does this add to the final goal of hacking his way towards a platform independent VR motion controller, he aptly gets some inspiration from Sony, extends Google’s hardware and even manages to use Apple’s webcam along the way. How’s that for carving passages between the walled gardens of consumer electronics?

Continue reading “Ping Pong Ball Improves the Google Daydream Controller”

Joysix, Six Degree of Freedom Mouse Made From Retractable Key Rings

[Nicolas Berger] submits his six degree of freedom mouse project. He hopes to do things like control a robot arm or fly an alien mothership.

We thought the construction was really neat; suspending a wooden ball in the middle of three retractable key rings. By moving the ball around you can control the motion of a cube displayed on the computer. We first thought this was done by encoders or potentiometers measuring the amount of string coming out of the key fobs. However, what’s actually happening is a little bit cleverer.

[Nicolas] has joined each string with its own 2 axis joystick from Adafruit. He had some issues with these at first because the potentiometers in the joysticks weren’t linear, but he replaced them with a different module and got the expected output. He takes the angle values from each string, and a Python program numerically translates the output from the mouse into something the computer likes. The code is available on his GitHub. A video of the completed mouse is after the break.

Continue reading “Joysix, Six Degree of Freedom Mouse Made From Retractable Key Rings”

Advanced compass/accelerometer library for Arduino

We don’t have much personal experience with DOF hardware, but this Arduino library which reads and compensates for three-axis magnetometer and accelerometer data looks very impressive. It should work for existing hardware, but there’s also a demo design using a Honeywell HMC5883L compass and a Freescale MMA8453Q accelerometer which you can build yourself. Unfortunately these come in QFN packages (like most cheap accelerometers these days) so you may need to be creative when soldering.

What’s so special about this library? Watch the video after the break (use 720p in fullscreen to get the full effect) and you’ll see three different scatter plots of the output data. The image above is a capture of the third example, which is using the hard iron offset and accelerometer compensation. That is to say, metal on and around the board is accounted for, as well as the physical orientation of the device. Even if you have no prior experience with this type of hardware it’s easy to see the usefulness of this kind of software compensation.

Continue reading “Advanced compass/accelerometer library for Arduino”