Why can’t I build the example applications?

If you’re having trouble building and running the example applications make sure you’re following the instructions in the SDK’s included documentation. You can also find more detailed information here.

How do I create my own Ultrahaptics sensations?

Use the Ultrahaptics API or the Sensation Editor and example reference code to integrate Ultrahaptics into your applications.

Our SDK comes with example code that shows you how to use both our Amplitude Modulation and Time Point Streaming APIs. With the TOUCH Development Kit, use Amplitude Modulation and directly define the strength, coordinates and modulation frequency of up to four control points, at up to twice the modulation frequency.

The Evaluation Kit supports the more advanced Time Point Streaming (TPS) API: up to 16kHz update rate and 8 control points. We also provide a Unity Game Engine library and example code. Read more about integration with Unity here.

With the Sensation Editor, generating and modifying sensations becomes a simple task. Available to all Ultrahaptics customers, use the Sensation Editor to export Ultrahaptics Sensation Packages and integrate into your application using our reference C/C++ example code.


What are the minimum system requirements for using Ultrahaptics?

Modern PCs and laptops should be able to run an Ultrahaptics SDK application without any problem. Most of the processing power is required by the Leap Motion® camera module. There may be additional system requirements for applications using 3D processing, such as VR, or using the Unity games engine, e.g. the Ultrahaptics demonstration suite.

Operating System Requirements:

  • Microsoft Windows 8, 8.1 and 10
  • Apple Mac OS Yosemite (10.10), El Capitan (10.11) and Sierra (10.12)
  • Linux – x86 (32 and 64-bit) and selected ARM® platforms (see below).

Minimum UHDK5 SDK requirements*:

  • Intel i3 processor or AMD Phenom II, 2GB RAM, USB 2.0

Recommended Unity requirements (including UHDK5 demo):

  • Intel Core i5 processor or AMD FX, 4GB RAM, USB 2.0
  • Higher powered graphics e.g. Intel Iris Pro or dedicated graphics card.

Leap Motion® camera module:

  • View Leap Motion®’s recommended system requirements here.

Sensation Editor:

  • As with the SDK (64-bit only) plus OpenGL.

*The UHEV1 will have slightly higher requirements since the majority of the algorithmic processing is carried out on the host.

Does your SDK support Linux or ARM® platforms?

As of version 2.5.0 , our SDK supports Linux on platforms with the following processor architectures:

  • Intel® x86 (32-bit)
  • Intel® x86_64 (64-bit)
  • ARM® ARMhf (ARMv7)
  • ARM® AArch64 (ARMv8)

How do I get started with my TOUCH Development Kit?

Simply follow the instructions outlined in the enclosed User Guide:

Register at using your serial number.

Download and install the SDK.

Install the Leap Motion V2 drivers

Connect the hardware, run the installed demo and start experiencing Ultrahaptics!

Download and install the Sensation Editor to begin creating your own sensations.

What language does the API use?

We currently provide Application Programming Interfaces (APIs) in C++ and C# as part of our SDK.

C++ is the de facto industry standard for producing high performance applications across a multitude of platforms, be it consumer devices or embedded systems.

C# is highly suitable for developing sophisticated applications on host and embedded systems and is widely used on Microsoft Windows and many game development platforms, including Unity.

We also provide an integration package for the Unity Gaming Engine.

Where can I find project files for my IDE?

We include example code as part of the Ultrahaptics SDK to get you up and running. While we do not provide specific project files, we do include a CMake file – CMakeLists.txt – that can you can use to generate project files for your favourite Integrated Development Environment. Please read our Knowledge Base article on building the example code to find out more about CMake.

What’s in the Software Development Kit?

  • Ultrahaptics transducer array driver – host side application processing and USB communications
  • Tracking camera alignment files
  • Application Programming Interface (API), written in C++ and C#
  • Demo Application
  • Unity Game Engine library (separate download for Mac OS pre version 2.2.2)
  • Example application code illustrating Amplitude Modulation and Time Point Streaming
  • Documentation, including API, health and safety, alignment and installation.

Where can I find documentation?

A User Guide is provided to help get you started and describes the kit contents, setup and how to register your kit on the Ultrahaptics developers’ site. Once registered you can download the SDK which comes with a complete suite of detailed documentation. After unzipping the downloaded SDK bundle, locate and open ‘Documentation.html’ at the root of the installation bundle. There you will find all the usage, installation instructions and the API. In addition, you will have access to an up-to-date range of Knowledge Base articles on the developer site.

I can’t get the demo to run properly

Make sure your host system satisfies the system requirements* and that you have installed the correct SDK for your platform (32 or 64-bit), that your kit is correctly connected and powered on (the TOUCH Development Kit has a separate power switch on the control board). See the User Guide for more details.

Both the Leap Motion® camera module and the transducer array require separate USB connections. On starting the demo, you will see the Ultrahaptics splash screen. If you need to connect any hardware the demo will prompt you to do this now.

Please also ensure that you have installed the correct Leap Motion® camera module drivers for your platform: Leap Motion V2**.

* Windows 7 users must manually install a separate USB driver. Some users have reported poor performance due to the Leap Motion® camera module’s processing requirements.

** Leap Motion’s Orion has been known to disconnect intermittently on Windows platforms while running the demo app.

Can we create our own products using Ultrahaptics technology?

While the Evaluation Kit and Development Kit are not designed for end-use products, we encourage our customers to use them in their demonstration and proof-of-concept applications. You can find some tips and guidance about doing this here. We provide the Sensation Editor and reference code example, as well as the SDK and API, allowing customers to implement their own sensations and applications. We also provide additional support to customers who wish to integrate Ultrahaptics into end-use products or with developing custom form factors, as part of our NRE services. Contact us at for more information.

What is Amplitude Modulation?

Ultrahaptics uses high frequency ultrasound to transmit sensations to the surface of the hand. The surface of the skin is not sensitive to ultrasound alone and is therefore modulated at a much lower frequency, which the hand is sensitive to. This is called Amplitude Modulation (AM).

Ultrahaptics uses Amplitude Modulation to refer to its first-generation modulation scheme. This uses a fixed modulation frequency – control point positions and intensity can be updated at this frequency, requiring less processing power than Time Point Streaming. Many of the sensations used in our demo suite and the Sensation Editor use AM, and is supported by both the Evaluation and Development Kits.

Can my application use more than one array?

Our SDK is capable of connecting to multiple Ultrahaptics arrays. You can read more about how to use multiple arrays in the SDK documentation. The number of arrays you connect will depend which Ultrahaptics arrays you are using and on the limitations of the host system, for example, processor power and number of available USB connections.

Currently, only a single Leap Motion® camera module can be hosted at any one time.