Leap Motion Installer and SDK

  1. Download the installer and SDK (consult Release Notes and Known Issues for 2.2.6.29154).

    Sign in to download SDK v2.2.6.29154 for Windows
    Download released version Choose another platform
    SDK v2.2.6.29154
    SDK v2.2.5.26752
    SDK v2.2.4.26750
    SDK v1.2.0.10973
  2. Go to the Getting Started Guide for next steps.

Release Notes and Known Issues

What's New

  • Added an image.data_pointer hook for faster image API access in Python
  • Fix for device.serial_number in Python
  • Finger.Type is now a property in C#
  • C++: Leap::FingerList and other list types now work with std::find_if()
  • Support for Unity 5 Editor (32-bit)
  • Fixed crash on libxs library
  • Added Device.baseline to report the distance between the Leap Motion cameras. (In current devices, this is always 40mm)
  • Invalid Arm objects now have an identity matrix as their basis rather than a zero matrix
  • Improved error log reporting
  • Improvements to Image while in Robust mode
  • Fix for window focus issue on Mac
  • Fix for window color scheme issue on Mac
  • New Sign-Up button in App Home
  • Apps that have not been installed are clearly marked
  • Fix for App Home download failures
  • App Home fix for crash on app install if the hard drive was full
  • Added hard drive space check prior to downloading a new app in App Home

Known Issues (General)

  • C# and Python applications built with SDK 2.2.1 that use the Controller.Images() Method must change it to use the Controller.Images Property
  • Pausing/Resuming Tracking can cause the FPS to drop. The workaround is to Disconnect/Reconnect the device to bring the FPS back to normal.
  • Bone direction vector points in the wrong direction. It should point toward the distal end of the bone.
  • Stop-state gesture objects are sometimes not dispatched for swipe and circle gestures.
  • Fingers of an invalid hand are marked as valid.
  • In Python, the Image API is not usable.
  • Swipes with a completely vertical hand are unreliable.
  • Serialized invalid frames are marked as valid when deserialized.
  • Cannot set the Interaction height manually. The workaround is to turn on the Automatic Interaction Height setting and then move your hand up or down to change the interaction height as shown in the settings panel. When the desired height is achieved, turn off the automatic setting and click Apply.
  • Images from invalid frames are marked as valid, but have width and height of 0.
  • Images cannot be extracted from serialized frames.
  • Device.isFlipped is always false.
  • Secure Websocket on Firefox requires Firefox version 32 or higher
  • In order for Secure Websocket to work on Firefox, please close Firefox prior to installing 2.2.0 or close and relaunch it after installing to pick up the changes
  • In some situations when it appears the Leap Service is not running, it is stuck in a loop consuming a full core's CPU. When this happens, simply restart the service
  • Applications built with SDK 2.1.0 or 2.1.1 must update DLLs to 2.2.0
  • Avast! Antivirus can interfere with Leap Motion Service installation (disable shields to work around)
  • Secure WebSocket (TLS) on Linux Chrome requires running with --ignore-certificate-errors (caution: this also affects non-WebSocket services)
  • Chrome on Windows 7 sometimes fails to respond to emulated touch points – to fix this, click inside the program with a mouse
  • JavaScript client library and WebSocket protocol do not support setting gesture parameters
  • The sphereRadius and sphereCenter functions of the Hand class are unstable when the hand is fully open
  • Tracking quality is lower when making a fist or with only one finger extended
  • Tracking may not work as well with bracelets, rings, watches, sleeves, etc.
  • A tap gesture may register when a small circle gesture is made
  • Linux does not support background apps or onFocus callbacks

Known Issues (VR Beta)

  • Applications using the Image API must link with updated DLLs from SDK 2.1.2 or higher.
  • Applications using the Image API should update to 2.2.0 to improve performance
  • The latest version of the Oculus firmware limits bandwidth for the DK2’s built-in USB port, which harms the controller’s performance. For now, we recommend using the free cable extender bundled with the mount to connect the controller directly to the computer.
  • Tracking performance may degrade when closely facing large reflective surfaces like white walls or infrared-reflective curtains. (This is a broader issue with V2 tracking that we’re constantly improving on.)
  • Tracking degrades when arms are held directly away from the body (i.e. elbows straight).
  • Some poses are not currently tracked reliably in head-mounted display (HMD) mode (e.g. pinch/rotate, 3- and 4-finger poses).
  • Minimized or out-of-focus applications using the HMD policy flag can affect the service state. Close such programs before switching back to non-VR apps.


The SDK release notes for the older versions are available in the documentation.

Welcome to LeapJS

This is the place to find the latest LeapJS and plugins for your JavaScript project. You can find more setup instructions through our getting started page.

Browser

See the archive for older versions.

Node.js


Plugins

LeapJS provides a powerful and flexible extension framework that makes it easy to build and use custom plugins. They’re configurable, can extend frame objects (such as fingers or hands) with new functionality or data, and can emit custom events from the controller.

LeapJS-Plugins includes:

  • Hand Entry Emit events when a hand enters or leaves the field of view.
  • Hand Hold Save data onto hands or fingers to be persisted between frames.
  • Screen Position Get the on-screen position of any point in Leap-space.
  • Version Check Ensure a minimum protocol version when running your app.
  • Playback Record hand-data from the Leap, compress it, and use it to animate your app.
  • Transform Translate, rotate, and scale Leap Motion data. Use this to orient the hand for Virtual Reality.
  • Bone Hand Add a customizable 3D hand to your THREE.js scene in one line of code.

LeapJS 3D Widgets: Push buttons and drag planes

LeapJS-rigged-hand uses THREE.js to add a hand to any web page.

Leap Data Plotter allows easy plotting streaming data to a <canvas>.

LeapJS-Network: [alpha] Stream Leap Motion data live over WebRTC Data channels.


Tools

Recorder-preview

Recorder

Allows you to capture and play back Leap frame data.

Unity3D

This is the place to find the latest Unity resources for your project. Before you get started, make sure that you have Unity 5 installed. You can find more setup instructions through our getting started page.

Note: The deprecated Unity 4.6 assets have been archived and remain available at https://developer.leapmotion.com/downloads/unity/4.6

Core Assets

With Unity 5, we have a single asset release that includes the core and VR assets. Each asset release (below) includes details on the required Leap Motion SDK and Unity versions (and Oculus SDK if applicable to your project). Be sure to use the SDK versions recommended in the known issues.

Sign in to download Unity Core Assets v2.3.1
Download released version Compatibility
Unity Core Assets v2.3.1 Leap Motion v2.2.6 / Oculus Rift 0.5.0.1 / Unity 5.0
Unity Core Assets v2.3.0 Leap Motion v2.2.5 / Oculus Rift 0.5.0.1 / Unity 5.0
Unity Core Assets v2.2.4 Leap Motion v2.2.4 / Oculus Rift 0.4.4 / Unity 5.0
After downloading the package, check out our getting started page for more setup instructions – including how to drop the assets into your project. Important: Be sure to use the Leap Motion Core Assets (linked above) as your core library. Deprecated assets using the V1 software or Unity 4.6 assets may result in errors.

Unity Demos and Resources

Developing with VR?

The Core Assets come packaged with everything you need to start developing cool experiences with the VR Developer Mount. More setup instructions can be found on our getting started page, in the section Using Leap Motion and Oculus for VR.

Portions Copyright © 2013 Oculus VR, Inc. All rights reserved. Subject to the conditions and disclaimer in the SDK license agreement at https://developer.oculus.com/licenses/

Examples Gallery

Our examples gallery features several open source demos built in Unity for VR and desktop experiences. Download them and try them out!