Operating System Support
Information on how our products work with different operating systems.
- Included Software
- Software Development Kits
- X-keys Hardware Feature
- USB HID Data Reports
Windows
MacroWorks 3.1 Software for X-keys
- Maps keys and controls to a script saved on the PC
- Supports all shortcuts, functions, and backlighting control
- Includes Script Editor for creating custom VB macros
MacroWorks 3.1 is included on an installation disc with all X-keys devices and is also available as a free download here: MW3.1.
MacroWorks 3.1 (MW3.1) provides simple, intuitive programming for launching applications, opening files or accessing directories. Inserting special characters and symbols as Unicode text strings adds another new unique feature to the X-keys. The scripting language behind MW3 is VB.NET. The simple, straight forward language makes programming advanced features and customization for unique configurations easier than ever before. A new feature allows the user to easily create their own scriptlets to share or duplicate on other keys or devices.
Hardware Feature
- Programming stored in X-keys on-board memory
- Emulates keyboard, mouse, game controller (joystick), and multimedia* on any OS
- Programmed by MacroWorks 3.1
All current X-keys devices have the capability of emulating USB keyboard and mouse devices. Our Pi3 firmware devices (XK series) also have the capability of emulating Game Controller (joystick) and are capable of sending standard hardware messages and HID Consumer Page messages simultaneously.
*Most XK series X-keys support multimedia keys as a hardware feature. Please check with us to confirm this feature is available on a specific device.
P. I. Engineering Software Development Kit
- Supports all currently shipping X-keys devices
- Free download: PISDK
- Includes examples for (VS)Visual Studio C# 2008 Express, VS C++ 2005 and VS Visual Basic 2008 Express.
- Supports individually addressable backlighting on all XK series X-keys devices
All of our X-keys USB devices are capable of direct interaction with your application. X-keys enter the operating system as a unique HID device sending data reports to an address on the HID Consumer Page.
Mac OS X
ControllerMate for X-keys
- Maps keys and controls to a script saved on the Mac
- Supports keystrokes, shortcuts, and complex macros
- Graphical drag and drop programming
ControllerMate for X-keys is included on an installation disc with all X-keys devices and is also available as a free download here: ControllerMate for X-keys.
ControllerMate is published and maintained by OdreredBytes and supports all currently shipping X-keys USB devices.
Open Source Software Development Kit
- Supports all X-keys Pi3 devices (XK series)
- A cross platform solution for OS X, Linux, and Windows
- Reads all keys and controls and sets backlighting levels and states
Our Open Source SDK is free for download. Learn more about it here: OpenSrcSDK
Hardware Feature
- Programmed by MacroWorks 3.1 (a Windows based application)
- Programming stored in X-keys on-board memory
- Emulates keyboard, mouse, game controller (joystick), and multimedia* on any OS
All current X-keys devices have the capability of emulating USB keyboard and mouse devices. Our Pi3 firmware devices (XK series) also have the capability of emulating Game Controller (joystick) as well. Programming and updates must be performed on a Windows based PC and written into X-keys on-board memory. The X-keys may then be moved to any system supporting USB keyboard, mouse, or game controller.
*Most XK series X-keys support multimedia keys as a hardware feature. Please check with us to confirm this feature is available on a specific device.
Linux
Open Source Software Development Kit
- Supports all X-keys Pi3 devices (XK series)
- A cross platform solution for Linux, OS X, and Windows
- Reads all keys and controls and sets backlighting levels and states
Our Open Source SDK is free for download. Learn more about it here: OpenSrcSDK
Hardware Feature
- Programmed by MacroWorks 3.1 (a Windows based application)
- Programming stored in X-keys on-board memory
- Emulates keyboard, mouse, game controller (joystick), and multimedia* on any OS
All current X-keys devices have the capability of emulating USB keyboard and mouse devices. Our Pi3 firmware devices (XK series) also have the capability of emulating Game Controller (joystick) as well. Programming and updates must be performed on a Windows based PC and written into X-keys on-board memory. The X-keys may then be moved to any system supporting USB keyboard, mouse, or game controller.
*Most XK series X-keys support multimedia keys as a hardware feature. Please check with us to confirm this feature is available on a specific device.Android
Software Development Kit
- Supports all X-keys XK series devices
- Reads all keys and controls and sets backlighting levels and states
- Integrates X-keys into your Android app
Our Open Android SDK is free for download. Learn more about it here: AndroidSDK
Hardware Feature
- Programmed by MacroWorks 3.1 (a Windows based application)
- Programming stored in X-keys on-board memory
- Emulates keyboard, mouse, game controller (joystick), and multimedia* on any OS
All current X-keys devices have the capability of emulating USB keyboard and mouse devices. Our Pi3 firmware devices (XK series) also have the capability of emulating Game Controller (joystick) as well. Programming and updates must be performed on a Windows based PC and written into X-keys on-board memory. The X-keys may then be moved to any system supporting USB keyboard, mouse, or game controller.
*Most XK series X-keys support multimedia keys as a hardware feature. Please check with us to confirm this feature is available on a specific device.Microsoft Surface
USB HID Keyboard, Mouse, Game Controller, or Multimedia
X-keys devices may be configured as stand alone keyboard, mouse, or game controller (joystick) devices reporting to any operating system as a USB HID device. Programming and updates must be performed on a Windows based PC and written into X-keys on-board memory. The X-keys may then be moved to any system supporting USB keyboard, mouse, or game controller. Programming stored in memory is sent to the operating system in one of the following USB HID formats:
- Keyboard scan code (single or multiple keys and combinations)
- Mouse position or button state
- Game controller position, button state (including hat switch), or joystick position
- Multimedia scan code (Play/pause, Prev, Next, Volume Up or Down, etc.)*
*Most XK series X-keys support multimedia keys as a hardware feature. Please check with us to confirm this feature is available on a specific device.
HID Data Reports
All of our X-keys USB devices send data reports to the operating system (Input Report) and have a path for receiving data from the operating system (Output Report). We offer a compressed file containing detailed information regarding the structure of both reports to help developers understand and utilize our hardware on any operating system.
This works on all known operating systems and in any programming language (including Java).
All Others
USB HID Keyboard, Mouse, Game Controller, or Multimedia
X-keys devices may be configured as stand alone keyboard, mouse, or game controller (joystick) devices reporting to any operating system as a USB HID device. Programming and updates must be performed on a Windows based PC and written into X-keys on-board memory. The X-keys may then be moved to any system supporting USB keyboard, mouse, or game controller. Programming stored in memory is sent to the operating system in one of the following USB HID formats:
- Keyboard scan code (single or multiple keys and combinations)
- Mouse position or button state
- Game controller position, button state (including hat switch), or joystick position
- Multimedia scan code (Play/pause, Prev, Next, Volume Up or Down, etc.)*
*Most XK series X-keys support multimedia keys as a hardware feature. Please check with us to confirm this feature is available on a specific device.
HID Data Reports
All of our X-keys USB devices send data reports to the operating system (Input Report) and have a path for receiving data from the operating system (Output Report). We offer a compressed file containing detailed information regarding the structure of both reports to help developers understand and utilize our hardware on any operating system.
This works on all known operating systems and in any programming language (including Java).