Max/Pd External for the TN Games 3rd Space Vest
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


np_thirdspacevest Max/MSP and Pd External

by Kyle Machulis <>

Nonpolynomial Labs -


np_thirdspacevest is an external for either Max/MSP or Puredata to control the TN Games Third Space Vest.

Source Requirements


Flext is a C++ layer that allows for the same source to compile to both Pd and Max externals. NP Labs Externals use this to make code build quickly and easily for as many platforms as possible.


np_thirdspacevest uses the libthirdspacevest library for communicating with the Third Space Vest.


  • Put the .mxo(Mac)/.mxe(Windows) or .pd_[platform] file in a directory that Max/Pd will search for externals (Max: Options → File Preferences → Other Folders, Pd: Options → Paths)

  • Max: Put the .help (Max4) or .maxhelp (Max5) file in the max-help directory of your Max/MSP installation

Compilation Instructions

Assuming you want to build the external yourself instead of using a binary package, it is recommended that you check the flext building documentation. However, for a quick overview, you can follow these steps:

  • Check out flext from the flext repo (listed above). You’ll need either the Max SDK or the Pd Source Code in order to compile it.

  • Compile flext

  • Customize the package.txt file in the directory of the np external you’re building. There may be various package_[platform].txt files that have some values already filled in. You will most likely need to customize things like include and link directories though.

  • From the np external source directory, run the following command, changing the things in brackets to work with your specific platform and program setup.

[path-to-flext]/build.[sh/bat] [pd/max] [gcc/whatever] build
  • Congrats, you should now have the external sitting in a directory relating to your program. Or you could just download the binaries, or email Kyle with a request to build them for you.

Platform Specific Issues

Mac OS X

You will need to install the "Third Space Vest OS X Extension" in order to use the third space vest on OS X. This extension is included with binary distributions of np_thirdspacevest. Just copy the "ThirdSpaceVestNullDriver.kext" to /System/Library/Extensions and either run kextload on it from the terminal, or reboot.

If you are building from source, the file and installation instructions are available on the libthirdspacevest github site.


The third space vest VID/PID pair will need to be blacklisted so that the Linux HID manager does not pick them up.


No known issues. Don’t see this very often, eh?


np_thirdspacevest is covered under the GPL License due to Flext. If you can unwind it from flext somehow, consider it BSD.

np_lightstone, Copyright 2010 Kyle Machulis/Nonpolynomial Labs

flext source code are covered under the GPL v2 License. np_thirdspacevest is BSD, but since it’s based on flext, it’s GPL.

flext - C++ layer for Max/MSP and pd (pure data) externals
Copyright (C) 2001-2005 Thomas Grill

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

In the official flext distribution, the GNU General Public License is
in the file gpl.txt