I'm trying to control an arduino servo using kinect in MRL, but OpenNI won't work, here's what it says after i launch the openNI service : http://prntscr.com/5m6x8b

I've sent the noworky file.

Thanks in advance



9 years 6 months ago

Hello and Welcome Herzeh !

We like to use posts, so that others might  find their solutions on th site (the shoutbox is very temporary).

I can tell from the noWorky you posted - you are on a Windows 64 OS.  

The problem with SimpleOpenNI has to do with the legacy choice of putting the os in the native path directory, the size of SimpleOpenNI and the current state of the repo on GitHub...

I will be fixing all of those soon, but in the interim you can fix your situation by moving directories around to the following locations...

This is my current directory structure which works (I have a x86.64.windows system too)



9 years 6 months ago

What OS are you using?  Can you cut and paste all the red error info from the Processing console?  "Unsatisfied link error" usuall means there's a missing file.

Ok now the error message is gone, am i supposed to see the kinect stream in MRL or no ? It says "initContext found 1 device" but there is no image.

Also always send a noWorky.. If it no worky


:)  I'm too used to starting it in the debugger... looks like the Swing capture button is borked..

I noticed you named your OpenNI service "ni" from your noWorky..

In that case just tab to the python and run this one line


Gives me this on mine...

Oh, and if you jump in front of it .. a red skeleton my pop out ! :D

Yeah when i do ni.startUserTracking() it does same as you ;)

No skeleton shows up though :/

I've already had that folder but still did what you said and there is no skeleton showing up. I'm using xbox 360 kinect if thats helps, but i managed to get skeleton showing up in processing.

Ok i found the issue. It's now working. The problem was that if you start the service from the runtime tab and then name it whatever (in my case 'ni') and then type in python : ni.startUserTracking(), it doesn't show skeleton, i've tried this several times.

The only way it shows skeleton is if you create/run the service from python like this :

ni = Runtime.createAndStart("ni", "OpenNI")

Then the skeleton will show up ;)

Anyway thanks for the help and hope this bug gets fixed



I've tried installing the latest version of MRL on a windows 7 64bits, but this time i downloaded OpenNI 32bits folder instead of 64bits, so i've downloaded NITE2, SimpleOpenNI32.dll and the win32.zip and extracted that as i did with the 64 bits version, but the result ends up being this again : http://prntscr.com/5m6x8b

I've sent my NoWorky already.

Hi Herzeh,

step 1 - remove all Java 32 bit from your 64 bit computer..

step 2 - install Java 64 bit on your 64 bit computer..

step 3 - delete c:/users/(your profile name)/ .repo

step 4 - delete all mrl folders

step 5 - download and install mrl again

Here's a list of the files in my myrobotlab/libraries directory.  I haven't touched it in a while.. so I think it should be a proper list .. not all these files are open ni related.. but it should be a super set.