Presenting libthirdspacevest, the open source, cross platform driver for the The TN Games Third Space Vest by Kyle Machulis/Nonpolynomial Labs.

Because apparently it wasn’t enough to just work on the kinect.

Third Space Vest

This is a USB controlled vest with 8 air cells in it, which can be used to cause quick haptic force via pneumatics. In other words, it’s a vest that can simulate being shot, by way of making the user feel like a roll of bubble wrap. I’ve also heard it described as “being poked by gnomes. And not with their fingers.” While I cannot vouch for the physical accuracy of that statement (yet), it does fit well with the mental images of the feeling.

As usual, I decided to reverse engineer it to write my own drivers, which will eventually turn into Max/Pd externals, and also another project that I’ll be annoucing later this week.

This normally wouldn’t be a problem, but this time around, much like the issues emokit had, the manufacturer encrypted the protocol, but distributed a free (pre-compiled, closed source) SDK. I ended up writing up the procedure for reversing out the protocol and building the library, since it’s one of the more complicated procedures I’ve had to do to get new hardware working. I was thinking about posting the doc here, but it’s rather long.

Anyways, it’s now done and there’s proof of concept python using pyusb in the repo. I’ll be extending this to a C API as soon as possible, just to get it over with since there’s not a ton of functionality to the vest.

To close, here’s a video of my cat versus the vest (running my code!):

Nerd Nite SF: "OpenKinect: One Month In" - Kyle Machulis, 12/15/10 from nerdniteSF on Vimeo.

Here’s a video of me at Nerd Nite San Francisco, talking about the OpenKinect Project. This covers the history of the project, as well as some examples of what’s happening in the community. As this talk was given at a bar, it is probably rated R for language and adult situations.

Oh, what a crazy month it has been.

Kinect Take Apart Image

The Microsoft Kinect camera came out on Nov. 4th, and has eaten a good portion of my month, in a good way. Work with the OpenKinect Community has been one of the best open source project experiences I’ve ever had. I’m the lead code integrator on the project, as well as doing some platform support. Haven’t had a lot of time to work on my own kinect projects, but it’s been fun to watch what comes out of the libraries. The code repo is available on the OpenKinect Organization Github Site.

In terms of press around the kinect project, I did an interview with New Scientist Magazine as well as a talk at DorkbotSF. Video of the talk (audio is horrible, but I might redo it later) is available in 3 parts:

Jerkcity Image

A few weeks ago, I got pretty dire food poisoning. I eventually felt better, and for some reason ended up with an emacs jerkcity mode too. I’m not sure how these things happen.

For a quick rundown on maintenance of other projects and interesting news:

  • libnifalcon got a v1.0.2 release, mainly to fix very nasty build system issues.
  • On that note, I’m taking a step back and re-evaluating what compily_buildd really needs to do, as it at some point got WAY overcomplicated and is making my code exceedingly difficult for others to build.
  • Looks like someone has started up a project to reverse engineer the Phantom Omni haptic device
  • np_mindset seems to have a pretty major bug in the binary release. Going to try to get this fixed and out ASAP.

After 10 months of silence, it’s time to get things moving on here again. First off, I’ve created a new website for all of my Max/MSP and PureData externals. After 5 years of creating externals and having people find them randomly, it seemed like a good time to start advertising them like an actual developer.

mindset_max

np_mindset version 1.1.5 released

I’ve also been getting a few requests for my Neurosky external lately, which I never actually finished after the biometric presentation project last year. So, I’ve tightened it up, released one non-working version, and have now released one slightly less non-working (or more working) version! Version 1.1.5 should allow you to reliably pull data from the mindset using Max/MSP, though the CPU usage is still on the high side, and it still crashes horribly on PureData. There will be a version 1.2 release that addresses these issues soon, but this should work for the time being.

For the past month, I’ve been living in Vienna as part of as artist residency with monochrom. The main goal of this residency was to complete some projects for roboexotica, the robotics cocktail party held each year here in Vienna. This year, roboexotica is being held December 3-6, and now that I’ve actually seen my projects pour some drinks, I figured it’s time to present them to the world.

First off, there’s Adult Mario, the mario game that drinks and vibrates!

Then there’s Bartris, the tetris that’s also a bartender.

I’ll have a post next week that goes into the implementation specifics of these projects, but for now, all of the code is available at http://www.github.com/qdot/bartris.