ofxConnexion

I just finished a first revision of an addon that supports the 3DConnexion-SpaceNavigator on OSX.

http://vimeo.com/14280654

It allows you to query for the most recent update, or get notified by events as they happen.

Here is the-addon. And here’s an example-project. To use the-addon, you need to install-the-SDK-from-3dConnexion’s-website, and add the framework to your project.

If you’re using event notification, you can plug in an arbitrary number of devices and check for the deviceId.

There are also methods for checking the status of the buttons (there are two on the regular model) and for turning the LED on and off.

It’s a lot of fun to play with when you turn the auto background off:

1 Like

Nice Utah teapot drawing and awesome work. Now to decide whether I want to spend $99 on one :slight_smile: Did you happen to use the regular or notebook Navigator version for testing? (mostly just wondering if they’re different in terms of feel/responsiveness).

Thanks :slight_smile:

I used the regular version. I don’t know what it’s like compared to the notebook version. I imagine they’re about the same, considering the notebook version is smaller but more expensive.

updates to ofxConnexion, now adapted to 007, and it’s been moved over to github.

https://github.com/kylemcdonald/ofxConnexion

i figured out a nice trick that avoids some plist mucking around. before you had to send the name of the app to start(), which meant you need to change the value for debug vs release configurations. now i added a line to Project.xcconfig that reads:

  
  
GCC_PREPROCESSOR_DEFINITIONS = EXECUTABLE_NAME="\"$(EXECUTABLE_NAME)\""  
  

this defines a constant EXECUTABLE_NAME that reads (for example) “ofxConnexionExample_debug”. i believe this pattern can be used for communicating things between the preprocessor and your code in xcode with gcc. for example, you should be able to check whether something is running in debug or release atm.

Hey there,

I got some delay issues with the ofxConnexion addon with apps that got lower framerates (20 - 30 fps), and I can reproduce that problem by taking your example and setting the frameRate to 20.

The data seems to be delivered frame by frame but expecting very high framerate, so when data comes in it will be added up and the delay gets longer; any input will only have an effect several seconds later.

it would be nice to receive any suggestions on this! thanks in advance!

interesting. maybe the device needs to be initialized from its own thread in order to run at the full rate? i would start by reading about threading http://www.openframeworks.cc/documentation/utils/ofThread.html then make ofxConnexion extend ofThread, and move the implementation of start() to be inside the threadedFunction()

hi, i am trying to compile the example in 0.8.4, Xcode 5.1.1 and Mavericks.
It should work?
I am getting an error here:

#include "3DconnexionClient/ConnexionClientAPI.h"

I opened an issue on the github.

I posted an issue on Github:
https://github.com/kylemcdonald/ofxConnexion/issues/1

Any idea to make the addon work?