Earlier this month, hardware hacker Hector Marcan released his open source Kinect drivers, wining the $3,000 in prize money put up by Adafruit Industries, a NY-based company that sells DIY electronics kits. Since then, a lot of people have been posting hacks made possible through the release of these open source drivers - something which may have inspired you to hack your own Kinect peripheral.
Many non-technical folks have become more comfortable with hacking, thanks to the ease of "hacks" like jailbreaking the iPhone or rooting an Android. However, hacking Kinect isn't as easy as you might think. But if you're if you're a fairly advanced user, comfortable with the command line, Python, GitHub repo's, reverse engineering and more, this is one Weekend Project you're going to love.
OpenKinect Resource List
There's no need to do a full copy and past of the "how to" instructions here, as the complete, fully documented online guide is now available from this site: ladyada.net/learn/diykinect. This site provides instructions on how to gain control over Kinect's camera by reverse engineering the Xbox Kinect Motor, a key part of the Kinect device.
Other resources you should be aware of, if you're daring to get involved with this project, include the following:
- The main source code repository is found on this GitHub repo. It contains the drivers and libraries for the Xbox Kinect on Windows, Linux and OS X: Be warned, however - the page says that the code here is in a "massive amount of flux" and that you're "so amazingly on your own right now."
- The IRC Channel for open source Kinect is #openkinect on Freenode.net. If you need an IRC client, try:
- The OpenKinect Google Group
- The OpenKinect wiki site, including the "Getting Started" guide.
Psst...Microsoft Likes Kinect Hackers
According to a CNET report, which made its way around the Internet, Microsoft is not happy with those endevouring to open up their device in this way. A company spokesperson told CNET:
"Microsoft does not condone the modification of its products. With Kinect, Microsoft built in numerous hardware and software safeguards designed to reduce the chances of product tampering. Microsoft will continue to make advances in these types of safeguards and work closely with law enforcement and product safety groups to keep Kinect tamper-resistant."
Well, that may be the "official" company line, but hosts of the "Ping" show over on Microsoft's developer outreach site, Channel 9, have sent a different message to would-be Kinect hackers. During minutes 6:30-10:00 of episode 83, the hosts discuss the Kinect hack, saying they really love it.
"I think this will be a great way to not only show some of the applications for this outside of the gaming space," said co-host Paul Mestemaker, "but also a great way for Microsoft to find people out there that could be talented developers that we could bring on the team." A bit later he says that this also "just reinforces what Steve Ballmer had said at the CEO Summit in Brazil awhile back - that this is one of the biggest things Microsoft will come out with and it's not just some toy, not just some gaming thing. This is the whole next-generation user interface."
If you're wondering why you should bother hacking Kinect, this is not the project for you. We've speculated that Kinect could be used one day to control an "Internet of Things," and quoted analysts who positioned the device as a game-changer. "Kinect is to multitouch user interfaces what the mouse was to DOS," said Forrester's James McQuivey. "It is a transformative change in the user experience, the interposition of a new and dramatically natural way to interact -- not just with TV, not just with computers -- but with every machine that we will conceive of in the future..."
If you're interested in seeing what some folks have already done with their hacked Kinect systems, check out the videos on the next page.
Kinect Hack: Motors
Controlling an iRobot
This experiment from MIT's Phillip Robbel connects the Kinect unit to an iRobot is able to paint a room using Kinect's depth sensors, recognizes a human and can be commanded with a wave of a hand. (via Forbes)
3D Video Capture with Kinect
By combining the color and the depth image captured by the Microsoft Kinect, one can project the color image back out into space and create a "holographic" representation of the persons or objects that were captured. The project website is at: http://idav.ucdavis.edu/~okreylos/ResDev and a similar video is here.
Multitouch with Hacked Kinect
This video shows a proof-of-concept where the Kinect camera is use for multitouch-like interaction.
Kinect on OS X
3D Video Made with Kinect
Object Recognition on the PC
This proof-of-concept shows how Kinect can be taught to recognize objects, like a toy a doll, a dog and others.
The ongoing list of Kinect hacks is being kept up-to-date here, on openkinect.org.