I’ve been looking with great interest OpenKinect, an open source project that in its own words is an “open community of people interested in making use of the amazing Xbox Kinect hardware with our PCs and other devices. We are working on free, open source libraries that will enable the Kinect to be used with Windows, Linux, and Mac.”  The Kinect is indeed a revolution in human-computer interface, much like the Wii was a revolution in how people interact with video-games. I have been tempted to get an Xbox just to try out the wonderful hardware.

OpenKinect is trying to use this amazing hardware to create interfaces for other applications. As soon as I heard about this, my lawyerly sixth sense started flashing warning signs. Is Microsoft on-board with this? Is there a licence? Are the OpenKinect developers opening themselves to future lawsuits and licensing fee claims from Redmond’s finest Men in Black?

Kinect was launched in November 2010, and in 10 days one million people had purchased it for their Xbox equipments. Amongst those joining the initial rush were several hackers and other human interface enthusiasts that joined a race to create different applications that used the new device, and details of the various hacks began to emerge rapidly. This was to be expected, but what about the legal issues involved? Are the developers infringing Microsoft´s rights?

There is a patent application that protects the Kinect technology (at the time of writing it appears that it has not been approved yet). Similarly, the software is protected by copyright, and while I have not looked at the specifications in detail, it is to be expected that the device is also protected by some form of technological protection measures, so developers could fall foul of the WIPO Copyright Treaty, the Copyright Directive, the DMCA and similar anti-circumvention legislation around the world. While it is permissible to reverse-engineer technologies for the purpose of interoperability, hacks to hardware equipment such as the Kinect would seem to go beyond what is usually permitted by law, as what is sought is more than simple interoperability, and many of the projects listed in OpenKinect are using the device as a primary input mechanism.

However, Microsoft seems to be playing nice with the developer community. For starters, some of the Kinect code has been released with the Microsoft Public License (Ms-PL). Similarly, they have created a portal for all of the open standards and interoperability needs. Amongst the various interoperability documents, Microsoft has included pledges and promises not to assert its intellectual property with regards to various basic technologies and standards. However, the Kinect is not included in any of these pledges, and I could not find any reference to the device in their portal, and neither I could find any reference in their IP licensing page.

As far as I could see, the OpenKinect development is closely linked with OpenNI, an industry-led consortium that is developing interoperability tools for the next generation of human interface devices. But hard as I tried, I was not able to find any specific documents from Microsoft which allow the community to conduct their hacks. So what is going on?

Here is my theory (and I will be more than willing to hear any information that anyone with more knowledge in this matter can provide). I believe that Microsoft has realised that the Kinect is the first in what will be the future of computer interaction, perhaps as big as the mouse was. In my opinion, Microsoft are crowd-sourcing a lot of the early development so that the community will manage to create applications that will drive the technology forward. If the history of technology teaches us anything, it is that early-movers usually get some advantage in the market, particularly when it comes to hardware. If Microsoft has a strong IP foothold on the next mouse, can you imagine the possible licensing revenues that it would create?

Hopefully, Redmond will continue to play nice with the community, and I think that developers may have a strong case about implied licences. Nonetheless, were I an OpenKinect hacker, I would certainly be looking over my shoulder.


7 Comments

Avatar

Andrew Ducker · February 20, 2011 at 2:19 pm

"What has happened is someone wrote an open-source driver for PCs that essentially opens the USB connection, which we didn't protect, by design, and reads the inputs from the sensor."

That's a Microsoft Spokesman talking about the open source drivers.

http://en.wikipedia.org/wiki/Kinect#Open_source_d

So there's no protection being bypassed, so the DMCA cannot be invoked.

The thing here is that MS wants people to build around its hardware, so it can sell more of it. They'll patent the hardware so nobody else can build clones of it, and then rake in the cash.

Avatar

Rhys Lewis · February 20, 2011 at 8:26 pm

Open NI consists of 3 components. The OpenNI framework, the NITE implementation of the framework, and the driver used to integrate the Kinect sensor with NITE.

Here are some comments from PrimeSense, who are the people behind Open NI:

1) NITE is **FREE** for any use (including commercial use) as long as

you use it on a PrimeSense SoC based hardware.

There are some prohibited usages like pornography, promoting

drugs, etc.. which should not normally bother anyone.

You can review the complete EULA when you install the Windows

version.

The key provided by the OpenNI website is also free for every

usage, including commercial.

2) The sensor project is open sourced under the LPGLv3 license.

Any modified version that still complies with LPGLv3 will be okay

for every kind of usage, including commercial ones.

This generally means that you shouldn't have any problems with

using it for pretty much everything…

(As long as you don't violate the LGPLv3 rules of course…)

Thanks,

Ziv Hendel,

Real-Time & Embedded Team Leader

PrimeSense LTD.

https://groups.google.com/group/openni-dev/msg/35

Avatar

James · March 9, 2011 at 12:03 pm

I love the fact that no protections being passed when using the Kinect with Open Source drivers. Without that I'm sure Microsoft would crush something thats truly amazing with the Kineect.

Its not everyday that a mainstream product becomes popular with a subculture like the Kinect is. I really think though that the most popular aspect about the Kinect will be the commercial applications though. As seen through the Roomba team and its new robot powered by two Kinects.

Onward and upwards and I hope the OpenKinect community keeps driving this forward!

Links 20/2/2011: Munich’s Migration to GNU/Linux Goes Well, Android 3.0 Clues | Techrights · February 20, 2011 at 11:52 pm

[…] Kinect – Licensing implications of open hardware projects I’ve been looking with great interest OpenKinect, an open source project that in its own words is an “open community of people interested in making use of the amazing Xbox Kinect hardware with our PCs and other devices. We are working on free, open source libraries that will enable the Kinect to be used with Windows, Linux, and Mac.” The Kinect is indeed a revolution in human-computer interface, much like the Wii was a revolution in how people interact with video-games. I have been tempted to get an Xbox just to try out the wonderful hardware. […]

Hook’s Humble Homepage :: Free Software & law related links 19. II. 2011 - 25. II. 2011 · September 26, 2012 at 9:02 am

[…] TechnoLlama: Kinect – Licensing implications of open hardware projects […]

Official Kinect SDK vs. Open-source alternatives - PhotoLens · March 1, 2022 at 8:23 pm

[…] simple. I would take a good look at the terms before releasing any commercial apps with it. Read Kinect – Licensing implications of open hardware projects for more […]

Official Kinect SDK vs. Open-source alternatives – Row Coding · June 3, 2023 at 1:49 am

[…] simple. I would take a good look at the terms before releasing any commercial apps with it. Read Kinect – Licensing implications of open hardware projects for more […]

Leave a Reply to JamesCancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.