Hardware Control

The Imatest Hardware Control package is a set of APIs and graphical user interfaces for controlling Imatest hardware devices. The APIs provide a consistent interface for sending and receiving commands from the devices, typically over USB or another computer connection. The included ControlStudio program provides visual and interactive access to the devices.

To begin, download and run the installer for your operating system from the Hardware Control download page.

Various tools, SDKs and bindings are provided inside the installed SDK directory, to help control Imatest hardware devices with a consistent API and GUI.

Supported devices

Setting the license code

When running the SDK, a license code needs to be specified at least once in the terminal session you are using. After a successful validation the license code is saved for future use. To set one, set the environment variable in your terminal session:

HC_API_LICENSECODE="<IMATEST_LICENSECODE>"

This can be added to your Windows user environment variable list for persistent use, or used in a terminal on a session-by-session basis. All Hardware Control scripts reference this environment variable to verify your Imatest license.

For example, in a bash terminal run export HC_API_LICENSECODE="123456…5432" before running a script or executable from the SDK, in the same terminal.

PowerShell

$env:HC_API_LICENSECODE="12345678987654321"

Bash

export HC_API_LICENSECODE="12345678987654321"

CMD (Windows Terminal)

set HC_API_LICENSECODE=12345678987654321

MATLAB

setenv("HC_API_LICENSECODE","12345678987654321");

When running code, the Hardware Control API deposits log files in the application data directory: C:\ProgramData\imatest-hardware-control.

Using the Hardware Control GUI

Navigate to the bin directory of the SDK (Imatest Hardware Control/bin/x86_64/Release on Windows) and run the HC_API_ControlStudio program. ControlStudio controls the supported devices through a graphical interface; add a device by selecting the controller you want from the Devices dropdown in the window header.

ControlStudio with the Thouslite LED Cubes, Lifting Column, LED Lightbox and KinoFlo controllers open, and a HopoColor Spectrometer reading a sample

Using the SDK

The SDK provides bindings for the languages and toolkits the API supports. By default it installs to C:\Program Files\Imatest\Hardware_Control\v1.X on Windows. Python, C++, C# and MATLAB are provided as language bindings.

The API reference is generated from the SDK sources and is also contained within the SDK itself:

New to the Python bindings? Start with the Python setup guide.