Forgot your password?
typodupeerror
Hardware Hacking Input Devices Microsoft Open Source XBox (Games) Games Build

Strong Contender Already For Adafruit's Kinect Challenge 86

Posted by Soulskill
from the wave-your-hands-in-the-air dept.
sammyF70 writes "Adafruit's bounty on open source drivers for Microsoft's Kinect may have been already won. Someone called 'KinectMan2' has posted videos of Kinect's output as seen on Windows 7 to YouTube. That was fast. Hopefully Linux drivers are coming soon." A few more details are available on a forum post the man made. Adafruit said the bounty could be his if he posts the source code, and they also upped the reward to $3,000 in response to another silly statement from Microsoft.

This discussion has been archived. No new comments can be posted.

Strong Contender Already For Adafruit's Kinect Challenge

Comments Filter:
  • The internal OS is WinCE, so the interface is either serial or USB.

    Beyond that, there isn't much to it besides identifying the commands and responses. MS isn't particularly deft in hiding their protocols.

    • by Osty (16825) on Tuesday November 09, 2010 @06:01AM (#34171532)

      The internal OS is WinCE, so the interface is either serial or USB.

      The internal OS of what? The Kinect? Unlikely. Check the iFixit teardown [ifixit.com]. The device is pretty basic in terms of processing capabilities, relying on the Xbox to do most of the heavy lifting. Or are you referring to the Xbox? If so, you're still wrong. The Xbox 360 OS is not Windows CE [windowsfordevices.com]. About the closest you can come to comparing it to another existing OS is by looking at its lineage. The Xbox 360 OS was derived from the original Xbox OS, which in turn was derived from Windows 2000. The extent that the Xbox 360 OS resembles Windows 2000 is almost certainly miniscule at this point, as it runs on an architecture that is not supported by the Windows codebase and does not need most of the core functionality of a Windows OS (shell, explorer, etc). There are probably some bits and pieces of Windows 2000 kernel code still lurking around somewhere, but aside from exposing DirectX and some minimal win32 functionality [msdn.com] that's really about it.

      • Re: (Score:1, Informative)

        by BadAnalogyGuy (945258)

        The Marvell AP102 chip (PXA3xx series SOC) runs the OS on the Kinect side. There's no way the XBox could keep up with the necessary processing on its own.

        • The Marvell AP102 chip (PXA3xx series SOC) runs the OS on the Kinect side. There's no way the XBox could keep up with the necessary processing on its own.

          I was going to look up the chip myself and reply but you beat me to it.

          The Kinect has on-board processing, and probably doesn't send raw image data alone back to the 360. Without offloading this processing to the Kinect itself, the 360 games using it would be if nothing else, severely penalized in available RAM from the image data processing.

      • Re: (Score:3, Interesting)

        by drinkypoo (153816)

        The extent that the Xbox 360 OS resembles Windows 2000 is almost certainly miniscule at this point, as it runs on an architecture that is not supported by the Windows codebase and does not need most of the core functionality of a Windows OS (shell, explorer, etc).

        NT4 had full PPC support, and Windows 2000 maintained at least some portability features because there was a release for Alpha. In addition, DirectX has to run on the Xbox operating system. For these reasons and others (being able to build the same game for Xbox 360 or for PC) it is a virtual certainty that the Xbox OS still deserves to be called Windows NT. It runs the same damned software!

      • by Bryan3000000 (1356999) on Tuesday November 09, 2010 @11:56AM (#34174530)
        It would have been possible for you to respond much more directly to that statement. The iFixit article makes it very clear that the Kinect does pretty hefty onboard processing, resulting in sending a color image and a depth map over what is essentially USB. It's pretty clear that the depth map essentially includes recognition of object positions which is calibrated onboard the Kinect with the information from the microphones, so that the information send to the XBox includes object position along with pre-processed audio for the position of any object. It appears that the Kinect recognizes you as an object and will pan to center you better in the frame all by itself. Did you even look at the array of discrete processors on page 2 of the article? While it may be doubtful that the Kinect runs WinCE, it's quite clear that the XBox does NOT do most of the heavy lifting in processing the image and sound data. Quite the opposite - it looks as though the Kinect provides quite a lot of processed information along with a relatively small amount of raw data. There are no doubt some control commands from the XBox without which the Kinect will not function (i.e. it won't operate by itself with just power), but this most likely is fairly simple message passing which can be reverse engineered with relative ease.

        If I were in the position to do so, I would get an in-line logic analyzer just to look at it myself.
  • Streisand effect? (Score:3, Interesting)

    by francium de neobie (590783) on Tuesday November 09, 2010 @04:51AM (#34171270)
    Microsoft issued a pretty nasty response [cnet.com] the last time this was posted in the public. That could have... helped.
    • Re: (Score:2, Interesting)

      by 91degrees (207121)
      The response seems prettty vague. Sort of

      "MS isn't going to waste time finding out what this is. We'll just make some vague threats in case at some point in the future we think it might be harmful, just so there's no implicit endorsement"
    • I just read the reply, and my reaction was "Oh please!"

      What the fuck could MS lose if the Kinect driver is open-sourced? Hackers will still need to buy the unit itself. "Tamper-resistant"? The Hell? They placed an explosive charge in it, or why do they have to make it tamper-proof? If someone wants to tamper with it, they probably know enough to disable/circumvent/subvert the safeguards, and if the can't, they probably wouldn't mess around with it in the first place
      • by Tukz (664339)

        They'll lose potential income from games sales.
        If you buy a Kinect and use it for something else than an Xbox360, chances are you aren't buying games either.

        Personally, I don't care about that argument, but just saying.

        • Clearly MS thinks no income from Kinect sales is better than income from Kinect sales without games...

          I didn't take a lot of Economy at university, but I thought corps are supposed to maximize their profits, and achieving any sort of sale counts toward that... But I see your point.
          • Re: (Score:3, Interesting)

            by Anonymous Coward
            MS also wants third party developers to develop for Kinect... it helps if they can convince third party developers that lots of Kinect sales implies lots of Kinects hooked up to XBoxes.
          • Re: (Score:3, Informative)

            by icebraining (1313345)

            I didn't take a lot of Economy at university, but I thought corps are supposed to maximize their profits, and achieving any sort of sale counts toward that... But I see your point.

            Lots of console hardware is sold at a loss to help game sales. See PS3, Xbox360 until recently. Every Playstation bought to run Linux and do number crunching was partially subsidized by Sony.

            • Re: (Score:3, Insightful)

              by mr_mischief (456295)

              Those Sony subsidies went to product recognition and goodwill until they decided to first remove "Other OS" from newer models then remove it in the field from existing models that accepted the wrong Sony-published firmware update.

            • Re: (Score:2, Insightful)

              by Anonymous Coward
              The thing is £150 for a couple of motion sensors and a camera. If they're selling that at a loss then they're doing something VERY wrong. Besides, selling at a loss is idiotic. What's to stop Sony buying up every single Kinect and setting fire to them, it will cost MS a ton of money and nobody will be buying their games, so they can write off the alleged $150m they spent developing the thing.
              • by sub67 (979309)

                The thing is £150 for a couple of motion sensors and a camera. If they're selling that at a loss then they're doing something VERY wrong.

                I think you're not considering microsoft's r&d costs as something that may help $150 for each kinect sale amount to a loss when factored in.

                • Re: (Score:3, Insightful)

                  by pla (258480)
                  I think you're not considering microsoft's r&d costs as something that may help $150 for each kinect sale amount to a loss when factored in.

                  R&D costs approach zero as a factor in the final product cost when volume goes high enough. Selling more units, even without associated game sales, only serves to lower the per-unit fixed cost overhead.

                  They could also take a much more basic economic approach, rather than waving the legal stick - Bundle the hardware with a must-have game, so actual game-buy
                  • MS is just waiting for the technology to mature, using their large XBox360 install base as their beta testers. V2.0 will not have the lag and will have solved a lot of other problems. V3.0 will be integrated into all of the next versions of Windows.

                    I, for one, would love to be able to use the voice commands and also the use of gestures. The 3 fingered salute could be simplified to one finger.

          • by ranulf (182665)
            I take it you haven't considered that they might sell Kinect at a loss, knowing that they'll (eventually) make back that money after you buy a couple of Kinect games. It's exactly the same thing Microsoft and Sony do with consoles too and after 4+ years they're only just making a profit on their consoles. Nintendo, on the other hand, are in the fortunate position of having always sold the Wii at a profit.
          • by vadim_t (324782) on Tuesday November 09, 2010 @08:40AM (#34172252) Homepage

            People and companies behave oddly, very unlike what they're supposed to according the economic theory.

            For instance, the inventor of novocaine is reported to have tried to stop its usage for dentistry, because he thought that it was too mundane of an use and wanted it used for grand surgery. People seem to have this idea that they decide what their invention is good for, and not the people who pay for it.

          • I didn't take a lot of Economy at university, but I thought corps are supposed to maximize their profits

            Any economy course in high school teaches about the razor / blade model. Companies will sell you the latest Mach 7 Closest Shave Plus handle at a loss in order to sell you their replacable blades at a good markup. Perhaps it's more vogue on Slashdot to discuss ink jet printer manufacturers selling their printers at a loss (doesn't that start to explain the quality?) in order to sell you refill cartridge

            • by vadim_t (324782)

              I never got the razor and blade model. To me it doesn't seem to work like that.

              When I buy a razor, the blade is what I'm really interested in and really paying for. It's where the real functionality is and what makes all the difference from one maker or model to another. The handle is just a cheap piece of plastic or metal. They don't even have to sell it at a loss, it costs a few cents anyway.

              Now with printers, it's different. The printer itself is what has the real funcionality and what defines the qualit

              • When I buy a razor, the blade is what I'm really interested in and really paying for. It's where the real functionality is and what makes all the difference from one maker or model to another. The handle is just a cheap piece of plastic or metal. They don't even have to sell it at a loss, it costs a few cents anyway.

                On its face, your statement is very valid and may be true. If packaging and transportation are the dominant factors, however, the far larger handle and "necessary" package for logos and eye cat

                • Re: (Score:3, Insightful)

                  by hazydave (96747)

                  Guess I buy a different class of printer... I have several, some years old, and never had a problem with jets clogging. Incidently, only Epson sells printers with fixed jet nozzles. When you buy an HP or Lexmark, you get new jets with every cartridge. Canon splits the difference... the ink tanks are sold individually, but you can replace the nozzle assembly after it starts to fail.

                  Ink matters, too, if you're printing things that need to last. Cheap ink can fade in less than a year or two; high quality inks

                  • Guess I buy a different class of printer... I have several, some years old, and never had a problem with jets clogging.

                    Clogged jets are mostly caused by disuse. The longer the printer sits unused, the more the ink dries up - starting at the nozzle. If it dries up too much, it turns into a cork.

          • Similar to the console model the Kinect isn't a money maker. People buying Kinect games is the money maker.

            Similarly Sony takes a dim view of using PS3 to make computing clusters, or running Linux. They aren't in the business of selling consoles. consoles are merely the medium to sell large amounts of console games.

        • by poetmatt (793785)

          actually they have a lot to *gain*.

          The thing is not as accurate as it could be, and letting folks try to make it work better/fit specific purposes could enable new things MS didn't think of, actually adding value to the kinect.

          or they can sit and whine about possibly losing sales.

      • Oddly enough a guy I work with is on a very interesting air traffic control research project. He was raving about some experimental immersive environment he had seen using a wiimote for input. I don't see nintendo suing over that.

        • by 91degrees (207121)
          Did the experimentors call Nintendo's press office and demand a statement regarding a modification they've previously not heard of and not giving any details about exactly what it is?

          Microsoft isn't suing. The company is simply making sure it reserves the right to sue in case this violates its legal rights. They're covering their butts
        • by DinDaddy (1168147)

          Pretty sure the price of wiimotes is dripping in included profit.

      • by gstoddart (321705)

        What the fuck could MS lose if the Kinect driver is open-sourced?

        Possibly money -- the XBox hardware was a loss leader for the first several years. They sold it at a loss to encourage people to buy the games. This might be something in the same boat -- what they sell it for doesn't recoup their costs.

        "Tamper-resistant"? The Hell? They placed an explosive charge in it, or why do they have to make it tamper-proof? If someone wants to tamper with it, they probably know enough to disable/circumvent/subvert th

      • by tlhIngan (30335)

        What the fuck could MS lose if the Kinect driver is open-sourced? Hackers will still need to buy the unit itself. "Tamper-resistant"? The Hell? They placed an explosive charge in it, or why do they have to make it tamper-proof? If someone wants to tamper with it, they probably know enough to disable/circumvent/subvert the safeguards, and if the can't, they probably wouldn't mess around with it in the first place

        I don't think the comment is Kinect-specific. It's a rather vague, generic statement. The only re

  • by Yvanhoe (564877) on Tuesday November 09, 2010 @05:08AM (#34171326) Journal
    There is an article on engadget that says the guy doesn't necessarily want to publish his driver :
    http://www.engadget.com/2010/11/07/kinect-does-hackers-bidding-but-not-for-fortune-or-fame-video/ [engadget.com]
    Maybe that's why the bounty was raised.
    • If the ps3 driver (which I use) is an indication I dare to say no... He also sells sdks with regards of the ps eye.
    • by Yvanhoe (564877) on Tuesday November 09, 2010 @09:36AM (#34172678) Journal
      This gets clearer :
      http://codelaboratories.com/projects/kinect/ [codelaboratories.com]

      He want $10,000 to open source it. He probably just need to raise $7000 + the $3000 of adafruit. I don't know what to think about it. On one hand, this is not such a big price to ask, but on the other, the fact that it was done in 3 days seems to indicate that the work was not that big...
      I guess I will donate $50 in 15 days if nothing comes from the OSS community before.
      • This was my position as well. The speed in which this was done seems to indicate that it wasn't all that complicated. Time will tell; I will definitely donate to the fund if no one steps up beyond this.

      • Re: (Score:1, Insightful)

        by Anonymous Coward
        I guess I will donate $50 in 15 days if nothing comes from the OSS community before.

        For crying out loud could you not think of a more worthier cause for your cash other than speeding up the release of a game controller driver? Might I suggest http://www.foodforthepoor.org/ [foodforthepoor.org] or a similarly worthy organization?
        • by hardburn (141468)

          Thing is, if Kinect drivers were open source, you could see a lot of applications that aren't games. Use your imagination.

          • by grumbel (592662)

            That kind of depends on how much processing of the image really happens on the Kinect, i.e. if you get a full skeleton out of it or just the depth map. If its the former, sure, but if its the later you are still pretty much at square one and have to write all the gesture detection software from scratch.

        • by Yvanhoe (564877)
          1) I am a bit selfish and plan on using the kinect for business, (and not in the game business)
          2) I don't live in the US so I am not interested in a US-centric charity
          3) I already give to a local one (Les Restos du Coeur)
          4) There is no way that I will give one cent to a christian group. I shiver at the idea that they provide education without control to poor children.

          There is always a more worthy cause. But if you want a pseudo-moralization of this cause, let's try this : this technology potentially lo
        • For crying out loud, could you not think of a more worthier cause for your time other than posting on Slashdot? Might I suggest volunteering for any worthy charity instead?

      • by Eil (82413)

        I guess I will donate $50 in 15 days if nothing comes from the OSS community before.

        I'm not going to tell you what to do with your money, but I'd personally rather wait for someone not interested in the financial reward develop and release the drivers. If he had a prototype ready in just three days, he's either the world's most brilliant reverse engineer or the device isn't as complicated as Microsoft has portrayed.

        If I had the time and skill, I'd do it myself and give the $3000 to the EFF and FSF.

        • by Yvanhoe (564877)
          Well that is what I will do if this happens soon, but I believe that $10,000 for this piece of code is an honest price.

          Sure, I would prefer to give it to the adafruit fund, but they are not opened for donations.

          Also the guy already made a driver for the PS3 eye, he has the skills and the tools to reverse engineers this kind of tools. But I am confident someone else will soon give an implementation.

          It is good if someone is not financially interested, but I don't see any problem in making a donation an
          • The PS Eye is just a webcam (OV534). The Kinect is a lot more interesting. It might actually be easier to interface, if it has more on-board processing and thus relies less on driver functionality (e.g. auto exposure).

            Personally, if I can borrow a 360 and either borrow a USB analyzer or use some stuff I have as a crappy USB analyzer, and if I can get a Kinect tomorrow when it launches in the EU, I'll give it a shot.

  • I have a more generic question: I have written a few old style drivers for DOS, some USB drivers for Windows using LibUsb and I'm working on some more complex Linux driver. But that was on devices that we designed and whose specs I knew. Now I have a monitor calibration device I'd like to get working on Linux. I don't expect the driver to be very complicated (it's just a color sensor), but I have no idea how to get started without specs. Is it possible to intercept the USB communications while the device ru
    • Re: (Score:2, Insightful)

      by leuk_he (194174)

      There is software that can intercept (called filter in windows) usb communication.

      google for "usb port monitor"

    • by lindi (634828)
      http://iki.fi/lindi/usb/usbsnoop.txt has my step-by-step instructions for getting started with usb reverse engineering. It uses a perl script that reads a traffic dump and generates a C program that reproduces the traffic by calling libusb appropriately.
    • by grumbel (592662)

      To intercept USB commands you need a USB protocol analyzer, they cost something between a few hundred and a few thousands dollars. If the device you want to reverse engineer has already a Windows driver you can use a software like USBlyzer [usblyzer.com] to simply monitor to communication (its a 30day free trial, but I found it much more stable and comfortable then comparable Free Software).

      Random plug: There is also a bounty of now closet to $600 for a Windows driver for the Xbox360 Chatpad [mp3car.com], any volunteers?

  • All they have to do, is keep sending these messages, pushing the bounty up higher and higher until it bankrupts Adafruit. (And maybe then release their own driver and cash in on the bounty, or are they excluded from the contest?)
    • Re: (Score:3, Insightful)

      Adafruit stipulated that the driver source must be released as open source. I see that happening next Tuesday, when hell freezes over.

  • I mean really, there is a video showing a Microsoft product interacting with a Microsoft OS. So basicly we have an open-source-endorsing company paying for something that will only benefit Microsoft. Why can't they give the money to someone who makes a good game (or something else) for Linux?

    • by Timmmm (636430)

      I doubt there's anything in the driver that depends on Windows. The fact that this guy managed to do this in less than a week indicates that microsoft haven't done anything to make Kinect hard to use. I expect the video streams are exposed as UVC devices.

      Anyway, I want one.

  • Kinect for Xbox 360 has not been hacked - in any way - as the software and hardware that are part of Kinect for Xbox 360 have not been modified. What has happened is someone has created drivers that allow other devices to interface with the Kinect for Xbox 360. The creation of these drivers, and the use of Kinect for Xbox 360 with other devices, is unsupported. We strongly encourage customers to use Kinect for Xbox 360 with their Xbox 360 to get the best experience possible.

    Hey, Microsoft, this is all this

  • by Locutus (9039) on Tuesday November 09, 2010 @01:24PM (#34175614)
    it does look promising but it has me wondering if it's real since they have what Adafruit required in functionality but want an extra $7k($3k+$7k=$10k) to release the code and documentation. The original designer of the Kinect device technology( PrimeSense ) provides an SDK and DDK to work with it's reference design. What's to say what we're seeing in this video is not the PrimeSense SDK and driver and not a hack of the Microsoft Kinect USB data streams?

    It could be real but it has my antenna up wondering how real it is. If PrimeSense didn't create the design and Microsoft did, then I'd be less prone to question this but we all know that the Kinect is a PrimeSense product with Microsoft's tweaking. It would be great if Microsoft did not encrypt or munge the USB data and it is to the original PrimeSense ref spec since PrimeSense is probably more inclined to want to sell chips and license the design as opposed to wanting to limit sales and tie sales to only one other device.

    So show us that the supposed demo of Kinect's output is really from custom made software and not something either pulled from Microsoft or PrimeSense. Show us you're not just using their code to get $10K to do the real work of creating something which can be open sourced.

    LoB
  • From what I can tell it seems that there are two versions of the Kinect. One version is designed for people who already own an Xbox 360 and are buying the Kinect to add to it. That version requires a separate power supply and (presumably) has a standard USB port. The other version comes with the new 360 Slim/Kinect bundle. That version does not require a separate power supply - it gets its power from some kind of special port on the back of the new Xbox that kinda-sorta looks roughly like a USB port but

    • by grumbel (592662)

      Somebody may correct me if I am wrong, but as far as I know the special Kinect port on the new Xbox360s is just a USB port that outputs more power then regular. To if you get a powersupply-less Kinect you might need to solder something together to give Kinect enough power, but it shouldn't make any difference in terms of protocols used.

"The pyramid is opening!" "Which one?" "The one with the ever-widening hole in it!" -- The Firesign Theatre

Working...