Thorlabs Kinesis Controllers

Thorlabs Kinesis software is used to control a wide variety of Thorlabs devices. ScanImage® can now leverage the Kinesis drivers to run essentially all controllers and stages which are used through Kinesis software.

Compatible Devices

The following Thorlabs device classes are supported by the ScanImage driver:

  • Cage Rotator

  • LabJack

  • Long Travel Stage

  • KCube Brushless Motor

  • KCube DC Servo

  • KCube Stepper

  • TCube Brushless Motor

  • TCube DC Servo

  • TCube Stepper

  • Vertical Stage

  • Benchtop Brushless Motor Controller

  • Benchtop Servo Controller

  • Benchtop Stepper Motor Controller

Device Setup

Connect the controller to the PC via supplied USB cable. Connect the controller to power via the appropriate power adapter.

Software Setup

Download the Thorlabs Kinesis 64-bit software from the Thorlabs Motion Control Software Page

Next open the Kinesis software and load the stage. This will load appropriate parameters for the stage into the Kinesis system. Before proceeding with the ScanImage configuration, unload the stage in the Kinesis software.

Launch ScanImage® and open the configuration window. Under ‘Devices’, select the ‘+’ button. Select the category ‘Thorlabs’, and select the appropriate stage type.


You will be able to select your motor by its serial number in the Serial Number dropdown.


After clicking Apply, the Controller model and stage model will appear under the dropdown, which you can then use to confirm that the correct stage was selected via serial number.


Proceed to the Advanced Tab to view and edit the homing move timeout field. For some stages with long travel and slower homing velocity, the homing speed will need to be adjusted. You can also set the units to μm or degrees. Lastly, the motor settings can be loaded from either

  1. Device Settings

  2. File Settings

  3. Configured Settings

  4. Default Settings (No settings argument to LoadMotorConfiguration)

Device Settings are loaded in ScanImage by default. If settings currently on the device have an incorrect scaling of device units to real world units, one can choose either the File Settings or Default Settings options to correct it.

For more information, refer to the Thorlabs.MotionControl.DotNet_API.chm help file located in C:Program FilesThorlabsKinesis regarding command LoadMotorConfiguration(). To quickly open the help file to the relevant pages, just execute the following from matlab:

For a description of options 1,2, and 3, execute the following in matlab:

system('HH.EXE ms-its:C:\Program%20Files\Thorlabs\Kinesis\Thorlabs.MotionControl.DotNet_API.chm::/a04051_a2ededd03f504395379c0eeded924f03c.html#a2ededd03f504395379c0eeded924f03c');
system('HH.EXE ms-its:C:\Program%20Files\Thorlabs\Kinesis\Thorlabs.MotionControl.DotNet_API.chm::/a04467_ab47a7d79592ab4191670d62fe83918d0.html#ab47a7d79592ab4191670d62fe83918d0f3863c0ae1c50e');

For a description of option 4, see:

system('HH.EXE ms-its:C:\Program%20Files\Thorlabs\Kinesis\Thorlabs.MotionControl.DotNet_API.chm::/a04467_a5d73ba00ab531ba446f3863c0ae1c50e.html#a5d73ba00ab531ba446');

Stage Parameter Configuration

Using the Kinesis software, various aspects of motion control can be tailored for each stage connected. To do so, open the Kinesis Software, and load the stage. You can then select the cog to alter device settings. Navigate to the second tab. These parameters can be changed. Once finished editing parameters, the Persist Settings to Device checkbox must be checked. The changes can be applied by clicking OK.

To ensure that the settings are applied in ScanImage, close ScanImage and exit out of Matlab. Restart Matlab and ScanImage. The new settings will now be read in from the Kinesis system.