Playing with Toasters

WP_20140811_001

Every parent at some point faces the dilemma of what to tell her children.  There’s a general and possibly mistaken notion that if you provide education about S-E-X in schools, you will encourage young ‘uns to turn words into deeds.  Along the same lines, we can’t resist telling our children not to put forks in the toaster, even though we know that a child told not to do something will likely do it within five minutes.  No more dangerous words were ever spoken than “don’t touch that!”

On a recent conference call I was on, someone asked if it would be dangerous to take an Xbox One Kinect and plug it into your computer.  Although I waited more than five minutes, I eventually had to give into my impulse to find out.

I have several versions of the Kinect.  I have both of the older model Kinect for Xbox 360 and Kinect for Windows v1.  I also have a Kinect for Xbox One, Kinect for Windows v2 developer preview and Kinect for Windows v2 consumer (shown above).

The common opinion is that most of the differences between versions of the Kinect v2 are purely cosmetic.  Kinect for Windows has a “Kinect” logo where the Kinect for Xbox One has a metallic “XBOX” logo.  The preview K4Wv2 hardware is generally assumed to be a Kinect for Xbox One with razzmatazz stickers all over it.   There is a chance, however, that the Kinect for Windows hardware lacks the IR blaster included with the Xbox One’s Kinect.  The blaster is used to change channels on your TV from the Kinect, which “blasts” an IR signal over your room which the TV’s IR receiver picks up the reflection of.

  Kinect for Xbox One K4Wv2 Preview Kinect for Windows v2
SDK Color Sample yes yes yes
SDK Audio Sample yes yes yes
SDK Coord Map yes yes yes
Xbox Fitness yes yes no
Xbox Commands yes yes no
Xbox IR Blaster yes yes no
       

This was slightly scary, of course.  I didn’t want to brick a $150 device.  Then again, I reasoned it was being done for science – or at least for a blog post – so needs must.

I began by running the preview hardware against the latest SDK 2.0 preview.  I plugged the preview hardware into the new power/usb adapter that comes with the final hardware.  I then ran the color camera sample WPF project that comes with the SDK 2.0 preview.  It took about 30 to 60 seconds for the Kinect to be recognized as the firmware was automatically updated.  The sample then ran correctly.  I did the same with the Audio sample and the Coordinate Mapper, both of which ran correctly.

Next, I tried the same thing with the Kinect for Xbox One.  I plugged it into the Kinect for Windows v2 adapter and waited for it to be recognized.  I was, of course, concerned that even if I succeeded in getting the device to run, I might hose the Kinect for use back on my Xbox.  As things turned out, though, after a brief wait, the Kinect for Xbox One ran fine on a PC and with applications build on the SDK 2.0.

I think plugged my Kinect for Xbox One back into my Xbox One.  The only application I have that responds to the player’s body is the fitness app.  I fired that up and it recognized depth just fine.  I also tried speech commands such as “Xbox Go Home” and “Xbox Watch TV”.  I tested the IR blaster by shouting out “Xbox Watch PBS”.  Apparently my Kinect for Xbox was not damaged.

I then performed the same actions using the Kinect for Windows preview hardware and, I think, confirmed the notion that it is simply a Kinect for Xbox.  Everything I could do with the Xbox device could also be done using the Kinect for Windows preview hardware.

Finally I plugged in the Kinect for Windows final hardware and nothing happened.  The IR emitters never lighted up.  Either the hardware is just different enough or there is no Xbox compatible firmware installed on it.

There was no smoke and no one was harmed in the making of this blog post.