TOUCH Development Kit

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 STRATOS Explore and Evaluation Kit (UHEV1) support the more advanced Time Point Streaming (TPS) API. 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 demo 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 FAQ).

Minimum SDK requirements:

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

Recommended Unity requirements:

  • 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:

Sensation Editor:

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

Where can I find my serial number?

There are a number of places for locating your serial number, depending on which kit you have:

  • For the STRATOS Explore Development Kit and TOUCH Development Kit, there is a label on the back of the smaller logic board. Serial numbers begin USX-00 for STRATOS Explore Development Kits and UHDK5-00 for TOUCH Development Kits.Ultrahaptics TOUCH Logic Board
  • For the Evaluation Kit (UHEV1), the serial number can be found on a white label on the bottom of the logic board or on the original box. Some older kits may not have a visible label on the board.
  • Using Sensation Editor, connect your device and hover over the device icon in the top-left corner of the viewing panel.

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 STRATOS Explore Development Kit and TOUCH Development Kit have 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.

I’m using Windows 7 and can’t get the demo to run.

While Windows 7 is not actively supported you can still install and run the Ultrahaptics demo with a suitably powerful machine*. You must follow some additional steps to manually install the USB driver with the Zadig installation tool:

  • Connect your Ultrahaptics array
  • Download Zadig and run with Administrator privileges.
  • Select Options->List All Devices and select your array.
  • Use the up/down arrows to select libusbK.
  • Click either Replace Driver or Install Driver.
  • Power cycle the array and restart the demo.

Our SDK also contains a short video showing these steps.

* Some underpowered Windows 7 machines have exhibited poor performance with the demo due to intermittent Leap Motion failure, unresponsiveness and crashing.

How should the transducer array be oriented?

There are no restrictions on the orientation of the array itself, but the array must not be covered by any solid materials and the area between array and hand must not be obstructed. The hand will also need to be clearly visible to the tracking camera and, for the optimal Ultrahaptics experience, the palm of the hand should face the array.

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, either by moving it around or changing its intensity.

Amplitude Modulation (AM) is Ultrahaptics’ first generation mode of operation and uses a low-frequency signal, typically 50 Hz to 300 Hz, to change the intensity of the control points. Application programmers can control this frequency, control point positions, and strength, but updates only take effect when intensity is at its minimum (zero-crossings).

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.

Can I use a different hand tracking camera?

The STRATOS Explore, TOUCH Development Kit and Evaluation Kit (UHEV1) all come packaged with a calibrated Leap Motion® camera module, any third-party camera tracking system that provides spatial coordinates can be used*. You will need to create an alignment .xml file to match your alternative tracking system with Ultrahaptics’ coordinate systems. Please see the SDK documentation for details.

*Please note that the demo suite will only operate with the Leap Motion® camera module.


Can I cover or hide the transducer array?

The Ultrahaptics system relies on generating an acoustic field in space using ultrasound. The array should not be obstructed by solid surfaces or anything that interferes with the interaction space.

The STRATOS Explore Development Kit comes with an additional cover materials kit, containing a selection of splash proof gauzes and perforated steel covers to protect the array.

For TOUCH Development Kit users, you can purchase the cover materials as an add-on through our distributors; Arrow (Worldwide), EBV (Worldwide excl. Japan) and, in Japan, Cornes.

What is the minimum number of transducers required to feel a sensation?

The number of transducers required to create a sensation will depend on the specific application. With the existing transducers, the most basic sensations can be felt with approximately 80 transducers. More complex sensations, interaction zone and array form factor arrangements will all affect the minimum number of transducers required. We provide additional NRE services to simulate and design arrays based on your application requirements.

What kind of transducers are used on the Ultrahaptics platforms?

Currently, Ultrahaptics hardware uses 40kHz Murata through-hole mounted, piezo transducers. These are readily available on the market and used in volume in automotive applications as parking sensors and proximity sonar. The size of the transducers is dictated by piezo technology and output power. Ultrahaptics is investing in researching alternative transducer technologies with a view to reducing size and manufacturing cost, while increasing output power and efficiency.

Can the array size be reduced?

The STRATOS Explore Development Kit, TOUCH Development Kit and Evaluation Kit (UHEV1) are of fixed size and should not be broken apart or dismantled. However, your own application’s hardware may require a smaller layout: Array size is dictated by the number of transducers required, which is directly related to the size of the interaction zone and strength of sensation, while the spacing between transducers is dependent on the wavelength of the ultrasound. As a rule of thumb, the smaller the interaction space, the fewer transducers are needed. We offer additional services to simulate and design arrays based on your application requirements.

You can read more about array form factors and interaction zones here.

The surface of my Ultrahaptics array is warm. Is this normal?

Because of the nature of the transducers used by Ultrahaptics and the high output levels required, heat can build up if the array is continuously outputting ultrasound. This is quite normal but you should keep in mind that the array should be well ventilated, particularly if building it into an enclosure.

The STRATOS Explore Development Kit and TOUCH Development Kit are designed to detect thermal build-up and to protect the device from damage will stop emitting if the transducer or logic board surfaces exceed 80C and 65C respectively. The transducer components are qualified for use in automotive applications with operating temperatures between -25C and 85C. The array will begin operating once the temperature has fallen to 5C below these thresholds.

What is the correct way to connect the logic and transducer boards?

All of Ultrahaptics’ Development Kits have separate transducer and logic boards, connected using four board-to-board sockets.

The STRATOS Explore Development Kit has keyed sockets and can only be connected in one orientation. The TOUCH Development Kit should be connected with the power and USB sockets and Leap Motion® camera module facing the same way.

UHDK5 Ports

While the Evaluation Kit (UHEV1) does not have keyed sockets, they are labelled J1_CON1 to J1_CON4 and should be connected to the same on each board. Some kits indicate the correct orientation with a coloured circular sticker in the corner of both boards, which should align when connected.

While the incorrect orientation of the Evaluation Kit (UHEV1) transducer board will not cause any damage, it will result in weak haptic output. When reconnecting the boards ensure both are firmly seated by gently pressing together. Any operations and handling of the boards should be done with appropriate anti-static measures.

My Development Kit has stopped working, but is still visible from the host.

If you believe that your STRATOS Explore Development Kit or TOUCH Development Kit has developed a fault you should first check your system: ensure all cables are connected and working, the array is powered and switched on (check the switch on the board). You may need to restart the board, particularly if you’ve restarted your system or application.

Run the Ultrahaptics Demo Suite or the Sensation Editor. Is the array registering?

Check that the Leap Motion® camera module service is running, you may need to restart it.

Because of the nature of the transducers, heat can build up when the device is outputting ultrasound. The STRATOS Explore Development Kit or TOUCH Development Kit are designed to detect this and to protect the device from damage will stop emitting if the transducer or logic board surfaces exceed 80C and 65C respectively.

To continue operating, the board surfaces should be allowed time to cool to 5C below the thresholds. If it does not operate as normal after this, try power cycling the device.

If you have investigated these options please raise a support ticket.

How do I update my device’s firmware?

You can identify the firmware your device is using with the Ultrahaptics firmware tool UHFlashTool. Connect and power on your array, open UHFlashTool and click the refresh button to view the details of your device. To upgrade the firmware on your device, select a firmware image file and click the Upgrade button.

Ensure your Ultrahaptics device is connected directly to the host PC (not via a USB hub) and remains powered on during the process.

Your device should reboot after the flash process, though you may need to power cycle.

STRATOS Explore Development Kit (USX): LED2 and LED3 will flash blue for the duration of the upgrade, then solid green once rebooted. LED3 will flash green when actively outputting.

TOUCH Development Kit (UHDK5): LED8 will flash blue for the duration of the upgrade, then solid green before rebooting. Once rebooted, LED6 will flash green indicating normal operation.

Evaluation Kit (UHEV1): main LED will appear solid blue for the duration of the upgrade, then green once rebooted.

You can read more detailed information about upgrading the flash in the SDK documentation section on Device Firmware.

What do each of the TOUCH Development Kit LEDs mean?

The TOUCH Development Kit logic board has eight LEDs. You can see their positions and explanation of their function below.UHDK5 Logic board

LED1 2.5V Rail
LED2 3.3V Rail
LED3 1.2V Rail
LED4 12V Supply
LED5 20V Rail
LED6 Transducer Status Green: Ready | Red: Active control point output
LED7 Clock Heartbeat Blue flashing: clock is active between NXP processor and FPGA
LED8 Boot Status Red: Start-up process | Green: Ready