The TCMP Tappy SDK is highly modular and designed to work in both Chrome packaged app environments as well as in NodeJS utilities. If you wish to use most fundamental version of the SDK, it is best to start from documentation for the core TCMP Tappy driver on GitHub.


In order to limit unnecessary dependencies, the core Tappy TCMP library only provides the basic fundamentals of communicating with a TCMP Tappy. For most applications, it would be best to start from the abstraction wrapper library. This library has all the capabilities of the core SDK, but simplifies performing common operations by adding several convenience functions.


The JavaScript SDK can also be used for developing cross-platform mobile applications using Cordova/PhoneGap. In order to do this, you will have to develop a simple TappyCommunicator similar to the TappyNodeSerialCommunicator that wraps a USB serial port (for TappyUSBs) or Bluetooth Low Energy (for TappyBLEs) library of your choice. Currently, there are no officially supported TapTrack-authored communicators for PhoneGap/Cordova, but one of our customers has created an open-source BLE communicator and we would be happy to help any custom integrations if you choose to pursue this route.

Tappy Classic SDK

As the Tappy Classic protocol has been deprecated, the Classic SDK is deprecated as well. This SDK only supports usage in Chrome packaged apps.


There are two JavaScript SDKs for working with Tappies. The main SDK is the TCMP Tappy SDK intended for working with current TappyUSB and TappyBLE devices either in Chrome packaged apps or in NodeJS applications. The second “Tappy Classic” SDK only works with Chrome packaged apps and is specifically designed for use with older TappyUSB devices that use a protocol that predates TCMP. If you are unsure which version of Tappy you have, all TappyBLEs and any TappyUSB devices purchased after July 2015 are of the TCMP variety.


There is a step-by-step tutorial on using the TCMP SDK to develop a command-line utility in NodeJS here.