Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using Leap Motion with android?

Is there a way of using leap motion as an input to an android app? I know that the SDK currently only supports Windows and MAC, but is there a way (any open library/interface via Windows) to make the device talk to an android phone (could be rooted)? Any other depth sensing alternatives for hand gestures for android aside form Kinect?

like image 405
abhishek Avatar asked Oct 04 '22 07:10

abhishek


2 Answers

Might be a bit of a late answer, but check out this link. It deals with connecting leapmotion and android throught a node.js server.

http://marctan.com/blog/2013/05/26/leap-motion-and-android-a-match-made-in-heaven/

like image 61
user1419305 Avatar answered Oct 07 '22 19:10

user1419305


Introduction

Thanks for the hints of using node.js server as proxy. I have come up to a smooth acceptable solution to make LeapMotion work on Android (indirectly).

Pre-requisites

  • A PC or a Mac with npm as the "PROXY"
  • npm install binaryjs
  • npm install sleep
  • An Android device with Wi-fi capability ("DEVICE")
  • Leap Motion device ("LEAP MOTION") connected to the "PROXY"
  • Wi-fi LAN connection between the "DEVICE" and "PROXY"

The basic idea of this solution is to use the PROXY to make the impossible (Android+LeapMotion) to become possible. The PROXY will read the data from LEAP MOTION using the Javascript SDK and stream (ya, it's streaming rather than posting) the data to node.js instance running on it.

The DEVICE will connect to the PROXY and stream (ya, it's again streaming rather than polling) the hand position data and present it as a red circle on screen.

Step-by-step guide

  1. Download the PROXY project here

  2. Extract the project

  3. Run in on your instance of node.js server on your PC or Mac (e.g. node index.js)

3a. You might need to install binaryjs and sleep module by npm here

  1. Mark down the IP of the PROXY

  2. Open your browser (Chrome and Safari are proven working) and browse http://localhost:5000 to verify it is running

  3. Download the Android project for your DEVICE here

  4. Import the project in ADT

  5. Open strings.xml to modify the IP address to the IP address of PROXY

  6. Run the project on YOUR DEVICE

  7. Move your hand above the LEAP MOTION and see the red circle moving according to your hand's direction

Enjoy!

like image 36
Patrick Chan Avatar answered Oct 07 '22 19:10

Patrick Chan