Blog

search

Posts

Introducing the New Inverse Installer 2.0: A Comparative Guide to Haply's APIs

calendar_today2/5/2024
schedule4 min read

The Inverse Installer 2.0 is the latest and most feature-packed software available to run the Inverse3 device. It is robust, and future-proofed with all of our latest features and product name changes.

temp alt

This article explains the difference between HardwareAPIs and Inverse Installer 2.0. It recommends why you might use one over the other, does a side by side comparison of the two architectures, and explains what you need to consider when you changeover to the 2.0. 


Which software should I download to run my Inverse3 device? 

If you are starting anew, we recommend downloading the Inverse Installer 2.0 which contains the Inverse SDK, documentation and tutorials, and Runtime libraries. 

This SDK is the latest and most feature-packed software available to run the Inverse3 device. It is robust, and future-proofed with all of our latest name changes. For more information, please refer to our release notes. It also includes bug fixes that reduce interference with haptic devices. The Runtime architecture in this release enables our software to handle device management, auto discovery, and device pairing, which aims to greatly simplify your job as a developer. This release supports multiple clients, and log files for device connection information, which *teaser* will lead to the unveiling of new features in the future (more TBA next month!). It will be the most forward-compatible solution currently available to you. Our team highly recommends the switch to this 2.0. SDK. 

Note: The API language is C and C++, and it is currently compatible only with MS Windows OS. Other OS support will be rolled out in the coming months. 

When or why should I use the HardwareAPIs? 

Haply’s APIs can be used if your system is not running Windows OS. These APIs have outdated product names like handle (renamed to ‘VerseGrip’).

  • HardwareAPI C++ is the most robust option for our direct Hardware APIs in terms of function and feature set. It is configurable for Windows, Linux, macOS, and aarch64.

  • HardwareAPI Python holds all the same functionality as the HardwareAPI C++, and is popularly used by students and roboticists for their preference of the python language and platform. Like the other HardwareAPI, it is configurable for Windows, Linux, macOS, and aarch64.

When or why should I use the Inverse SDK Integrations?

The Inverse SDK for Unity allows haptitians to develop basic haptic integrations in Unity Game Engine with a low technical barrier to entry. This API, which is available for download in the Unity package manager, or from our developer website, has an emphasis on learning the basic tips and tricks to building your first scene in the familiar game platform. The SDK contains tutorials and documentation that allow you to follow along. For high caliber haptic physics simulation, Haply does not recommend the use of Unity’s native physics. There are limitations imposed by Unity Engine which limit the communication speed, such that the simulation is unable to reach the 1000 Hz closed-communication loop desired for haptics. 

We understand the diversity in your applications for the Inverse3,so we are working hard to ensure you have a toolbox that is robust and easy to use. If you have any questions, do not hesitate to reach out to us at [email protected].

Updating to the Inverse Installer: Advantages and Changeover

Why should you move to the Inverse Installer from the HardwareAPIs? The Inverse Installer is running a service layer behind the scene which is managing the device autodiscovery, device port management, and device pairing. No more port management headaches. 

Architecture advantages of the Inverse Installer (over the the HardwareAPIs):

  • Device management

  • Device auto discovery

  • Device pairing

  • Multiple client support

  • Support for future features

    • Diagnostic

    • Dashboard

  • Log support

  • Showing connection / device working

  • Better backwards compatibility

  • Less things to do in client software

  • Less changes to make when updating

Updating to Inverse Installer 2.0 (from Inverse Installer 1.0):

This release has breaking changes.

  • Our newest software releases will all be updated with our official product names which will replace their previous generic names. Check out our comprehensive list of naming updates and see how these changes will enhance your user experience.

  • Fix bug where the `haply-inverse-service` interfered with the proper use of `Touch3DS` device

  • Add initial query the Inverse3 handedness when first added the Inverse3 to the service

  • Add Service caching the state of Inverse3 and VerseGrip

  • Add support handedness for Inverse3 in device_open_first

  • Add Tutorials in installer

  • Fix crash when request queue is overloaded

  • Surfacing better error codes for error handling

Side by Side Comparison of the Inverse Installer and the Hardware API 

Inverse SDK

Hardware APIs

Operating Systems Supported

MS Windows

MS Windows, Linux, masOS

Language Support

Support C++

Support C

Support C++

Support C#

Support Python

Architecture

Service layer handling device management

Direct communication with the device, client manages the device pairing, and discovery. 

Device Management 

Yes

No

Device Autodiscover

Yes

No

Support for Multiple Clients

Yes, can support future features like a dashboard

No

Support for Wired Development Handle

Yes

Yes

Error Handling 

Yes, shows device connection / not working

Minimal

Log Support

Yes

No

Published Documentation

Yes

Minimal

New Features

Coming soon

Not planned

The latest changelogs and release notes for all Haply software products will always be available in Releases page of the Haply Developer Hub.


Our newsletter subscribers saw this first! Click here to join our monthly newsletter for early access to the latest updates and news.