Developer's Corner

P.I. Engineering Software Development Kits

Note: The information on this page is for Windows operating system development. For Linux, please see our Linux SDK. Support for Mac developers can be found here: OS-X Info. Support for other operating systems can be found here: Alt OS Info.

P.I. Engineering SDK

Download it here: PIEngineeringSDK.exe (v1025) (2.92 MB) updated 10/5/2012.

Note to users of the .NET Express versions; C# Express and Visual Basic Express. These versions no longer have the Platform Target selection in the project properties. It is necessary to use a platform target of x86 when using PIEHidDotNet.dll or PIEHid32Net.dll. To do this, open the project's .csproj file (C#) or the .vbproj file (VB) in any text editor and add the line:

<PlatformTarget>x86</PlatformTarget>

This line should be in the <PropertyGroup> section just under the Platform Condition.

Users desiring a true 64-bit version of PIEHid please contact tech support.

Version 1025 Fixes/Improvements

  • Changed SDK to feature only current products. Legacy support can be found on the Legacy SDKs page.

Customers using v28 of the XK-24 firmware need to be using SDK v1016 or higher.  Users of the older version may want to upgrade their unit For more information on upgrading please contact technical support.  The older version of the SDK will mostly work and only be an issue with the mouse reflector.  OLD firmware had pid 1027 (default) as KJSiSo and pid 1029 as SiSo.  NEW (v28+) firmware has pid 1029 (default) as KMSiSo and 1027 as KJSiSo.  The reason for this change was so that an out of the box XK-24 does not show up as a game controller on the customer's machine. 

This Software Development Kit (SDK) supports all X-keys devices we are currently shipping and offers code examples for (VS)Visual Studio C# 2008 Express, VS C++ 2005 and VS Visual Basic 2008 Express.

Before downloading the SDK, please join our Private Developer's List. This is the best way for us to keep you apprised of changes in our SDKs or products. We only send out information pertinent to our products and never provide your address to anyone else.

Join our Private E-mail List

Supporting Multiple Firmware

Our X-keys firmware has evolved and improved over time.  While there is no change in the physical appearance of the X-keys, the Product ID (PID) is different and the data reports have significant differences.  Here we offer help to the programmer who wishes to support multiple versions of our firmware in the same X-keys device. 

More Code Samples

Though the samples in our standard SDK above fit a wide variety of developers' needs, occasionally we've had cause to write special samples. These odd ducks do not fit in with the other samples in our SDK, but you can find them here. If you don't find what you're looking for, please contact us.

Legacy SDKs


In most cases software developers should use our latest SDK since it supports all devices we are currently offering and works on the most current operating systems.  These legacy SDKs offer support for older firmware versions of our X-keys. 

Visit Our RailDriver Division:

RailDriver.com
Review xkeys.com on alexa.com