Install Kinect drivers on TrimSlice Pro

TrimSlice Pro was delivered finally, it is preinstalled ubuntu 11.04. I hurried to get the Kinect working on the Arm Linux this weekend. I installed the official drivers, although it is regretful that NITE cannot be run without SSE support.

(1) mkdir ~/kinect, download the latest OpenNI (Version 1.3.2.3 unstable version for now) into that folder, and untar it.

https://github.com/OpenNI/OpenNI/tree/unstable

(2) According to the README file, install the requirements. Please note that sun-java6-jdk has been removed from the official repository. I found a external PPA, but it doesn't work for me. So I install the Openjdk-6-jdk instead. The remaining requirements should be installed easily.

(3) Don't build OpenNI at the moment. Firstly revise the Platform.Arm file in ~/kinect/OpenNI_DIR/Platform/Linux-x86/Build/Common. Otherwise, on one hand, you will fail to compile due to the first line, where I trapped for a whole day to configure the angtrom. On the other hand, the cpu by default may be not matched with your own with error as below, when you finished running sudo ./install.sh and launched an application for test.

"One or more of the following nodes could not be enumerated:
Device: PrimeSense/SensorV2/5.0.0.24: The device is not connected!"

For the first issue, it can be fixed by commenting out the first line. We don't need it on the native machine. And reconfigure the ARM options for the second one. It looks like

# export CXX=/home/primesense/DiGMi/BeagleBoard/Kernel/OE/angstrom-dev/cross/armv7a/bin/arm-angstrom-linux-gnueabi-g++
export GLES=1

ifeq "$(CFG)" "Release"
# CFLAGS += -mcpu=cortex-a8 -mfpu=neon -ftree-vectorize -mfloat-abi=softfp -ffast-math -fsingle-precision-constant
   CFLAGS += -mcpu=cortex-a9 -mfpu=vfpv3-d16 -ftree-vectorize -mfloat-abi=softfp -ffast-math -fsingle-precision-constant
endif

For -mfpu option, you can find it by typing cat /proc/cpuinfo in the terminal.

(4) Now enter ~/kinect/OpenNI_DIR/Platform/Linux-x86/CreateRedist/, run ./RedistMaker Arm or ./RedistMaker.Arm

(5) A Redist directory will be produced in ~/kinect/OpenNI_DIR/Platform/Linux-x86/. Run sudo ./install.sh

(6) Install the sensor modul from https://github.com/avin2/SensorKinect

Important note: Don't use the sensor module from the official website. Although the driver seems to be installed normally, you will get nothing when you launch an application in the Sample directory.

(7) The requirements should already be installed when compiling the OpenNI. The same revision is done for the Platform.Arm file in ~/kinect/Sensor_DIR/Platform/Linux-x86/Build/Common.

(8) Enter ~/kinect/Sensor_DIR/Platform/Linux-x86/CreateRedist/, run ./RedistMaker Arm.

(9) Enter ~/kinect/Sensor_DIR/Platform/Linux-x86/Redist, run sudo ./install.sh.

(10) Enter ~/kinect/OpenNI_DIR/Platform/Linux-x86/Redist/Samples/Bin/Release, run sudo ./org.OpenNI.Samples.SimpleViewer.

Because NiViewer is removed from the Samples, I'm not sure if the color camera works.

(11) Enjoy it.

Reference

  1. http://davetaz-blog.blogspot.com/2011/03/installing-kinect-on-ubuntu-full-guide.html
  2. http://tirokartblog.wordpress.com/2011/01/22/kinect-on-the-beagleboard-xm-not-working-yet/
  3. http://groups.google.com/group/openni-dev/browse_thread/thread/848487b8857bb668
posted @ 2011-10-11 05:20  大有|元亨  阅读(2399)  评论(0编辑  收藏  举报