APT Software


APT Software


Please Wait

Thorlabs' APT™ Suite of controllers includes a range of compact drivers, high-power benchtop controllers, and 19" rack-based units that, together, control our range of precision stages and actuators and support motion control from tens of centimeters to the nanometer range. The line of products includes stepper motor and DC motor controllers, closed-loop and open-loop piezo controllers, strain gauge readers, and solenoid drivers, together with a sophisticated feedback controller (NanoTrak®) that fully optimizes coupled optical powers in a wide range of alignment scenarios. All of our controllers are supported by unified PC-based user and programming APIs (the APT™ software suite) that enable high-level custom applications to be constructed effectively and quickly. Thanks to the USB connectivity implemented on all of our controller units, it is extremely easy to link multiple units together to realize a multi-axis motion control solution for many positioning and alignment needs.

LabVIEW can be used to communicate with any APT-based controller via ActiveX technology. In the program, the user can build an interface, known as a front panel, using a set of tools and objects and then add code using graphical representations of functions to control the front panel objects. The LabVIEW tutorial provides some information on using ActiveX to create control GUIs for APT-driven devices within LabVIEW. It includes an overview with basic information about using APT-based controllers in LabVIEW and explains the setup procedure that needs to be completed before using a LabVIEW GUI to operate an APT-based device. The page also has links to download LabVIEW virtual instrument (VI) examples provided by Thorlabs to help you get started with creating programs for your controllers in LabVIEW.

A comprehensive guide to using LabVIEW with APT can be downloaded here.

In a general sense, ActiveX Controls are reusable software components that supply both a graphical user interface and a programmable interface. Many of these controls are available for Windows applications development, providing a large range of reusable functionality including manipulating image files, connecting to the internet, or simply providing user interface components such as buttons and list boxes. With the APT system, ActiveX Controls are deployed to allow direct control over (and also reflect the status of) the range of electronic controller units.

Based on ActiveX interfacing technology, an ActiveX Control is a language independent software component. In this way, ActiveX Controls can be incorporated into a wide range of software development environments for use by client application software developers. Development environments supported include Visual Basic, LabVIEW, Visual C, C Builder, VB.NET, and C#.NET. For examples, see the Interfaces tab.

Within an application, each occurrence of an ActiveX Control is called an instance. At design time (i.e., when authoring a software application), developers will drag and drop many instances of Controls onto one or more application windows, positioning and re-sizing as required to achieve a particular layout. Control settings known as properties (described below) are also altered at design time as required. At 'run time' (i.e., when running the software application), the Controls are then available for direct user interaction (if they have a user interface; some do not), often with little extra programming required by the software developer.

ActiveX Control for APT Stepper Controller
The ActiveX Control GUI Interface for the APT Stepper Controller

The programmable interfaces of an ActiveX control are comprised of three different entities: Methods, Properties, and Events (described below).

In the case of the APT system, ActiveX Controls provide a very convenient package of software functionality, whereby a single Control can supply all of the user interface and associated programmable functions relating to a particular hardware unit.

Consider the ActiveX Control supplied for the APT stepper controller unit shown to the right. This control provides a complete user graphical instrument panel to allow the motor unit to be manually operated, as well as a complete set of software functions to allow all parameters to be set and motor operations to be automated by a client application. The instrument panel reflects the current operating state of the controller unit to which it is associated, displaying parameters such as motor position.

Updates to the panel take place automatically when a client application is making software calls into the same control. For example, if a client application instructs the associated stepper motor control to move a motor, the progress of that move is reflected automatically by changing position readouts on the graphical interface without the need for further programming intervention.

Definitions

Methods
A 'Method' is the ActiveX terminology for a software function: Methods are called, passing any necessary parameters in the same way as a function would be called. In the APT system, Methods can be used to set and retrieve hardware settings, initiate hardware actions (e.g., moving motors, switching feedback loop modes, etc.), and determine the configuration of hardware units attached to the host controller PC.

Properties
A 'Property' is essentially a parameter setting associated with the ActiveX Control. Properties can be 'read only' or 'read/write' and can be accessed at design time (depending on the development environment, often in the form of a properties window), as well as run time.

The APT system has few properties relating to hardware specific settings. Rather, most relate to generic property values found on all controls such as Left, Top, Width, and Height.

However, the HWSerialNum property is found on many APT Controls and is the primary setting that relates a specific ActiveX Control instance with a particular physical hardware unit. Further details on using this property can be found in the reference section of the APT Server help file.

Events
An 'Event' is the name given to a notification that is made to the host client application by an ActiveX Control, such as a call made by the Control to a Method implemented by the client application. This control-callable Method is more commonly referred to as an 'event handler,' and the process of calling this event handler is typically referred to as 'firing an event'.

An ActiveX Control will fire an event when it wants to inform the client application that some action, state change, or other system event has occurred. In the case of a simple button control, an event might be fired when the user clicks on the button. An event handler (implemented in the client application) will typically contain code that has been written to handle the fired event. For example, in the case of a button Control, the 'Click' event handler may display some form of message to the user.

The various Controls within the APT Server system are designed to fire events when certain important hardware events have occurred (e.g., when a motor has finished moving, a MoveComplete event will be fired). The associated event handler will then handle this change of state (e.g., measure a power level and then initiate a move to the next required position).

The APT™ (Advanced Positioning Technology) family covers a wide range of motion controllers ranging from small, low-powered, single-channel drivers (such as the T-Cubes) to high-power, multi-channel, modular 19" rack nanopositioning systems (the APT Rack System).

All controllers in the APT family share a common software platform, the 'APT System Software', which is available on our APT software download page. A support package, containing a wealth of information on using and programming these Thorlabs products is also available.

By providing this common software platform, Thorlabs has ensured that users can easily mix and match any of the APT controllers in a single application, while only having to learn a single set of software tools. In this way, it is perfectly feasible to combine any of the controllers from the low-powered, single-axis to the high-powered, multi-axis systems and control all from a single, PC-based unified software interface.

The APT System Software allows two methods of usage: graphical user interface (GUI) utilities for direct interaction and control of the controllers 'out of the box', and a set of programming interfaces that allow custom-integrated positioning and alignment solutions to be easily programmed in the development language of choice.

A range of video tutorials are available to help explain our APT system software. These tutorials provide an overview of the software and the APT Config utility. Additionally, a tutorial video is available to explain how to select simulator mode within the software, which allows the user to experiment with the software without a controller connected. Please select the APT Tutorials tab above to view these videos, which are also available on the software cd included with the controllers.

Software

APT Version 3.21.6

Includes a GUI for control of Thorlabs' APT™ system controllers, as well as a wealth of support information in the form of handbooks, help files, tutorial videos, and FAQs.

Also Available:

  • Communications Protocol
Software Download
APTConfig
APT GUI Screen

The APT video tutorials available here fall into two main groups - one group covers using the supplied APT utilities and the second group covers programming the APT System using a selection of different programming environments.

Disclaimer: The videos below were originally produced in Adobe Flash. Following the discontinuation of Flash after 2020, these tutorials were re-recorded for future use. The Flash Player controls still appear in the bottom of each video, but they are not functional.

Every APT controller is supplied with the utilities APTUser and APTConfig. APTUser provides a quick and easy way of interacting with the APT control hardware using intuitive graphical control panels. APTConfig is an 'off-line' utility that allows various system wide settings to be made such as pre-selecting mechanical stage types and associating them with specific motion controllers.

APT User Utility

The first video below gives an overview of using the APTUser Utility. The OptoDriver single channel controller products can be operated via their front panel controls in the absence of a control PC. The stored settings relating to the operation of these front panel controls can be changed using the APTUser utility. The second video illustrates this process.

APT User - Overview
APT User - OptoDriver Settings


APT Config Utility

There are various APT system-wide settings that can be made using the APT Config utility, including setting up a simulated hardware configuration and associating mechanical stages with specific motor drive channels. The first video presents a brief overview of the APT Config application. More details on creating a simulated hardware configuration and making stage associations are present in the next two videos.

APT Config - Overview
APT Config - Simulator Setup
APT Config - Stage Association


APT Programming

The APT Software System is implemented as a collection of ActiveX Controls. ActiveX Controls are language-independant software modules that provide both a graphical user interface and a programming interface. There is an ActiveX Control type for each type of hardware unit, e.g. a Motor ActiveX Control covers operation with any type of APT motor controller (DC or stepper). Many Windows software development environments and languages directly support ActiveX Controls, and, once such a Control is embedded into a custom application, all of the functionality it contains is immediately available to the application for automated operation. The videos below illustrate the basics of using the APT ActiveX Controls with LabVIEW, Visual Basic, and Visual C++. Note that many other languages support ActiveX including LabWindows CVI, C++ Builder, VB.NET, C#.NET, Office VBA, Matlab, HPVEE etc. Although these environments are not covered specifically by the tutorial videos, many of the ideas shown will still be relevant to using these other languages.

Visual Basic

Part 1 illustrates how to get an APT ActiveX Control running within Visual Basic, and Part 2 goes on to show how to program a custom positioning sequence.

APT Programming Using Visual Basic - Part 1
APT Programming Using Visual Basic - Part 2


LabVIEW

Full Active support is provided by LabVIEW and the series of tutorial videos below illustrate the basic building blocks in creating a custom APT motion control sequence. We start by showing how to call up the Thorlabs-supplied online help during software development. Part 2 illustrates how to create an APT ActiveX Control. ActiveX Controls provide both Methods (i.e. Functions) and Properties (i.e. Value Settings). Parts 3 and 4 show how to create and wire up both the methods and properties exposed by an ActiveX Control. Finally, in Part 5, we pull everything together and show a completed LabVIEW example program that demonstrates a custom move sequence.

APT Programming Using LabVIEW -
Part 1: Accessing Online Help
APT Programming Using LabVIEW -
Part 2: Creating an ActiveX Control
APT Programming Using LabVIEW -
Part 3: Create an ActiveX Method
APT Programming Using LabVIEW -
Part 4: Create an ActiveX Property
APT Programming Using LabVIEW -
Part 5: How to Start an ActiveX Control


The following tutorial videos illustrate alternative ways of creating Method and Property nodes:

APT Programming Using LabVIEW -
Create an ActiveX Method (Alternative)
APT Programming Using LabVIEW -
Create an ActiveX Property (Alternative)


Visual C++

Part 1 illustrates how to get an APT ActiveX Control running within Visual C++, and Part 2 goes on to show how to program a custom positioning sequence.

APT Programming with Visual C++ - Part 1
APT Programming with Visual C++ - Part 2


MATLAB

For assistance when using MATLAB and ActiveX controls with the Thorlabs APT positioners, click here.

To further assist programmers, a guide to programming the APT software in LabVIEW is also available here.


Posted Comments:
Yadong Wang  (posted 2024-03-22 16:26:34.053)
Hi, I am using APT and related Labview. But the apt user one cannot recognize the devices which are k10cr1/m and mff102. And APT Software cannot even be opened, or can be open without any devices connected. Meanwhile, Kinesis software works with K10CR1/M. I guess there are some competition between APT and Kinesis. So I disconnect the device to Kinesis, try it again. Still, APT can not be opened properly. Could you please help?? Thanks a lot!! Sorry that I wrote the same require in Kinesis part.
Duygu Kozal  (posted 2024-02-20 14:43:59.44)
Hello. I am looking for any python developer handbook or manual for APT Software. I would be grateful if you could enlighten me about its possibility and support me. Thanks a lot!
cstroud  (posted 2024-02-27 10:35:43.0)
Thanks for reaching out. Unfortunately we do not have a guide for using APT with Python. I will contact you directly to assist in setting this up.
Gaia Bolognni  (posted 2024-01-24 11:20:35.073)
Hello, I'm controlling the KBD101 thorugh the use of the native DLL in python (as we would like to import it in our experimental sequence which is defined through python). I have a question of what can be done with the device using an input trigger. I would like to define at the beginning of my code a set of positions (let's say [10mm, 18mm, 40mm, 5mm]) to which the device would move in a subsequent way up to a trigger signal. For example, the first time I send the trigger, the device moves to 10mm, the second time it moves to 18mm, the third to 40mm and finally for the fourth signal from the trigger it moves to 5mm. I would like to know if it is possible to implement this feature for the device through Python. I have not found any example on the internet for such a behaviour. Thank you very much.
cstroud  (posted 2024-02-09 05:35:27.0)
Thanks for reaching out. Our stages are unable to do this with the inbuilt trigger functions. However, it is possible to write a program to cycle through the required positions using the general purpose input triggers. I will reach out to you directly to discuss this further.
Nicolas DAUGEY  (posted 2024-01-22 18:11:13.69)
Dear all, This ropoduct is really easy to use and precise. Nethertheless, we need a function that I did not find in the docs. It is possible to search 'HOME' within a program. But, if program halts and motor is still online, I did not find any command to verify if 'HOME search' has already be done on the periferic/motor. Do I miss a key ? Thank for your response, Nicolas
Hai Huynh  (posted 2024-01-22 18:06:07.88)
I used motor KDC101. It reached the maximum, and could not move anymore. The error prompted on screen of motor is "Overloaded". I tried to turn-off or move to home. But it does not work. Can you help me to solve this problem?
cstroud  (posted 2024-01-23 12:25:31.0)
Thanks for reaching out, I'm sorry that you're having issues with this controller. I will contact you directly to troubleshoot this issue.
adil secilmis  (posted 2024-01-02 16:05:40.077)
Can I control TED4015 TEC controller with Jatson Nano using 'thorpy' ? Specifically, I want to set the setpoint of the device with Jetson Nano.
user  (posted 2023-09-18 15:05:34.997)
Hi there I am trying to use Micro-Manager, however, it does not recognise the APT.dll (option is greyed out). I downloaded the 64-bit and 32-bit versions for Windows, but none of them work. Could you please help?
do'neill  (posted 2023-09-19 10:08:40.0)
Response from Daniel at Thorlabs. Our APT is legacy software and may not be supported in MicroManager any more. It may be better to move to our Kinesis software. I will reach out to you directly to discuss this with you.
Sweety kumari Vishwakarma  (posted 2023-06-22 18:43:17.507)
Can you explein how can i simulate in this software, i add all the product but how can i join one another ?
do'neill  (posted 2023-06-29 09:50:48.0)
Response from Daniel at Thorlabs. You can access the simulator from the "Simulator Configuration" tab in the APT config program. After setting this up in this tab the simulated stage can be used in the same way as a non-simulated stage.
Alan Tate  (posted 2023-05-09 12:36:26.45)
LabView's for chumps. Please roll out python controls for your hardware. Thanks.
fguzman  (posted 2023-05-11 06:20:39.0)
Thank you for your feedback. Using the native DLLs, you can control our motion control devices using python. Please reach out to your local tech support team if you have questions on a particular item in our motion control range.
Rasmi Cheloor Kovilakam  (posted 2023-04-07 18:48:30.08)
Dear Thorlabs team, We are trying to control FW103 filter wheel using TST001 stepper motor controller. We are using windows 7 64 bit. When trying to associate the stage with the controller using APT config, it throws an error, "access denied, please run as administrator". We checked all the permissions and everything looked fine. We tried the controller/stage on a windows 10 machine and it works. Do you have any suggestions about the issue. Thank you.
JReeder  (posted 2023-04-13 08:43:37.0)
Thank you for your enquiry. Our software requires that the user has administrator permissions to install and run the software, this is the most likely cause of this error. I have reached out to you to troubleshoot this issue directly.
user  (posted 2023-03-26 01:24:39.093)
您好,https://www.thorlabs.us/newgrouppage9.cfm?objectgroup_id=9019 中“APT教程”标签中的视频打不开,可以发一份到breakrecord@sina.com吗?十分感谢!
do'neill  (posted 2023-03-28 05:32:53.0)
Response from Daniel at Thorlabs. I will have someone from your local team reach out to you about this.
Young Davis  (posted 2023-03-17 23:31:55.983)
Hello. I am trying to write a C++ program that uses your Apt ActiveX controls. How do you get Visual Studio (I used VS2019)to find your ActiveX controls? According to the "Apt Programming with C++" video, the ActiveX controls should appear in a popup box named "Insert ActiveX Control". I don't find them there(eg,MGMotor Control). How can I do to import the activex controls so that they appear in the "Insert ActiveX Control" box? Thank you!
JReeder  (posted 2023-03-22 04:15:50.0)
Thank you for your enquiry. I will reach out to you with a guide on how to insert ActiveX controls within Visual Studios.
Duncan Maude  (posted 2022-10-12 06:22:22.72)
I have APT ver 1.1.1 installed on a windows 7 64 bit machine since 2013. I installed the latest version downloaded from this site yesterday. I installed the 32 bit version for 64 bit windows (previous installation was also 32 bit). APT config/user no longer worked with "missing mfc140.dll". I deinstalled all APT software and made a clean install. This did not fix the issue. I found mfc140.dll on internet and copied it to the system32 directory. Problem was not fixed. I then copied mfc140.dll to the Program Files (x86)\Thorlabs\APT\ config/server and user directories. This solved the problem. Please fix this issue. I lost three hours of my time with this problem. To add insult to injury, when submitting feedback, if you type a wrong security code, instead of asking to repeat, you lose the entire message and have to start again.
cwright  (posted 2022-10-13 09:58:52.0)
Thank you for your feedback. We are sorry to hear you had this issue. Fortunately this does not appear to be a common problem. mfc140.dll is part of the Microsoft Visual C++ 2015 Redistributable Update 3 RC package and when updating from before this time it may not be installed on your PC. An issue is most likely to arise if your PC is not connected to the internet during installation and cannot download the required packages. I will inform the web team of your issues with the security code and see if this can be changed.
Ludovic Al  (posted 2022-09-29 08:55:52.693)
Dear Thorlabs, Is there a APT-library for a python environment on linux ?
DJayasuriya  (posted 2022-09-29 10:23:12.0)
Thank you for your inquiry. Unfortuantely we do not have a APT library for a python environment on linux. However we do provide our Communications Protocol document which would give access to the device as a serial port: https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control. We have got in touch with you directly for more information.
Bastian Jülich  (posted 2022-09-16 08:59:05.84)
Dear Thorlabs Team, short Question: Is it possible to controll the Kinesis from a python environment? Best regards Bastian
DJayasuriya  (posted 2022-09-20 09:04:29.0)
Thank you for your inquiry. Yes this is possible. We do provide the Dlls that can be used in a python environment. The Dlls can be found in the installed directory. We have got in touch with you directly to get more information.
Rik Strobbe  (posted 2022-06-27 09:58:01.383)
I want to control a TDC001 with Delphi / Lazarus using the APT ActiveX Control. Is an instruction manual or code examples available?
DJayasuriya  (posted 2022-06-28 08:56:49.0)
Thank you for your inquiry. Unfortunately we do not have any instructions or examples with Delphi / Lazarus. We have got in touch with you directly for to help with your request.
BATUHAN YILMAZ  (posted 2022-06-03 18:34:18.703)
Dear Thorlabs, We are using TDC001 motor drivers with a Windows XP computer. Unfortunately, we had to change hard drive and lost Thorlabs APT software. Would you have a chance to share the installer of APT software for Windows XP? Best, Batuhan
cwright  (posted 2022-06-07 04:38:59.0)
Response from Charles at Thorlabs: Thank you for your query. We will reach out to you with a copy of APT which will work with XP. It should be noted though that this will not have all the additions of the later versions and not all of our devices will be recognised. We would recommend upgrading to Windows 10 where possible.
xiaoping jiang  (posted 2022-03-15 20:09:32.73)
Hi, I'm using three Z825B with KDC101 controller and APT software. 1). In APT config, there seems be only Z825 but no Z825B. I don't know if they are compatible with each other. 2). I chosed Z825 for my Z825B in APT Config, in APT user, there seems to be always a small error between actual values displayed ontop KDC101 and set value on APT User. 3). I used a Python script to control the stage. The set value and the actual value differ hugely. Say I set 1mm, the actual value is only 0.6. If I set 2mm, it is 1.6mm.
DJayasuriya  (posted 2022-03-22 06:04:31.0)
Thank you for your inquiry. We have reached out to you directly to troubleshoot your issue.
Li zijian  (posted 2022-03-07 04:26:07.2)
hello,I can't see the video of APT user software tutorial. Please send it to my email. And if there are other more detailed APT user tutorial videos or files, please also send them to me. Thanks.
DJayasuriya  (posted 2022-03-07 09:01:01.0)
Thank you for your inquiry. Please find APT software tutorial: https://www.thorlabs.com/newgrouppage9.cfm?objectgroup_id=9019. We will get in touch with an example.
Zachary Butikofer  (posted 2022-02-04 14:25:53.947)
Hello. I am trying to write a C++ program that uses your Apt ActiveX controls. How do you get Visual Studio to find your ActiveX controls? According to the "Apt Programming with C++" video, the ActiveX controls should appear in a popup box named "Insert ActiveX Control". I don't find them there. What do I need to do to import the activex controls so that they appear in the "Insert ActiveX Control" box? Thank you!
jgreschler  (posted 2022-02-24 11:37:16.0)
Thank you for reaching out to Thorlabs. I have reached out to you directly to discuss software control of our APT program with C++.
Yingzhong Ma  (posted 2022-01-27 12:24:33.02)
Hello! Do you happen to have an old version of the APT software that would work under Windows XP? Thanks a lot! Yingzhong
cdolbashian  (posted 2022-01-31 05:22:08.0)
Thank you for reaching out to us at Thorlabs. I have reached out to you directly with the requested version of our APT software! For inquiries such as this, please feel free to contact our tech support team at Techsupport@thorlabs.com
user  (posted 2022-01-20 09:12:54.887)
When looking at the tutorials posted i'm a little confused where I would find APTUser and APTConfig. I'm trying to follow along with the videos to get some sense of where to start because I'm completely lost. I downloaded the APT package but after that I can't seem to even get to the first step in any of the posted tutorials
Kevin Lee  (posted 2022-01-14 00:13:32.043)
I download apt software, but it cannot successfully open after installed. I could see a running picture after click APT User, but it would suddenly disappear and no only response.
cwright  (posted 2022-01-17 03:46:47.0)
Response from Charles at Thorlabs: Hello, in order to know why this error is being raised, we will require more information. We would need to know the operating system you are using, including build number and bit type, as well as the version of our software you are running and its bit type. I will contact you directly in order to assist with troubleshooting.
David Scheiman  (posted 2022-01-11 14:42:19.497)
Using APT software 1) BSC202 is not on list of controllers 2) ActiveX *.ocx are not registered
DJayasuriya  (posted 2022-01-12 11:18:14.0)
Thank you for your inquiry. We will get in touch with you directly to resolve your issue.
user  (posted 2021-12-01 16:08:23.027)
Hello, I am working with APT.dll and a custom application to control KDC101 and KBD101 drives. I have come across a weird bug, that happens rather randomly: After sending a command MoveAbsoluteEx (using Wait=False), the motors occasionally do not move at all, although the error code returned by the command is '0'. Have you ever come across similar behaviour? Do you have any idea how to approach such problem? greetings Zuza
YLohia  (posted 2021-12-23 12:15:18.0)
Thank you for your feedback. Error code 0 means that the function hasn't been run correctly, so the command was sent to the device ok. With bWait set to False, you will need to see if the MoveComplete event works after the function has been executed. The easiest way to do this is to use EnableEventDlg(bEnable), this will cause a dialog box to pop up every time a move is complete.
LIU yajun  (posted 2021-11-11 10:19:21.497)
Hello, I have two TDC001 and Z825B, I downloaded the latest version of APT (64-bit window10,32-bit APT) .After I configured APT config, I use APT user to manipulate the displacement stage. As a result, it had no response. Meanwhile, the device can be identified on Kinesis, but when connected, it shows: the device does not respond to the error. So what is the problem? Do you have a detailed installation instructions?
user  (posted 2021-07-30 09:51:10.987)
Hello, I am using an apt - dc servo controller from 2011. At that time I used to controll a Z612B actuator with the apt software version 1.0.22. I know want to do the same again, however, the PC is not the same anymore. I installed the 64bit version of this original sorftware on a windows 10 laptop. But the only thing I get is an empty black window. I therefore installed the latest version from your website. But all I get is an empty grey window... When unplugging the USB cable, I get an error log, telling me, that somehow something is communicating. Where is the problem? Can you please advise? Thank you very much in advance, Friederike
DJayasuriya  (posted 2021-08-02 06:07:15.0)
Thank you for your inquiry. We will get in touch with you directly to resolve your issue
user  (posted 2021-06-09 13:31:38.767)
Hello, My Name is Faisal Saeed and i am working on Thor Lab KBD101 Brushless motor controller and also attached DDSM100/M to it, I want to design my program in Labview using Active X APT server although i have installed the APT software (32 bit) and working Labview 2020(32 bit) but my problem is that when i open control pallete on front panel of Labview then go to .NetActive X and then select Active X container and then right click on it and go to insert Active X object container in labview by right click then i do not get MG17Motor control on it. Kindly suggest me what to do? Thank you Best Regards
DJayasuriya  (posted 2021-06-09 11:02:01.0)
Thank you for your inquiry. We will reach out to you directly to resolve your issue.
Steve Burke  (posted 2021-04-13 12:46:34.577)
Event log is below. If I run the APT software stand alone it works fine. And when I run several calls strung together it also works fine. But when I incorporate into a larger LabVIEW framework I get this error. Any call after the Start Control errors in this way. Delay after Start Control doesn't help. I am running LV2018. Any suggestions? Thank you ***************************************************************************** Event Log generated 12:37:20 Tuesday, April 13, 2021 Thorlabs APT Logging Server (Built: Dec 12 2013 11:36:11). Server Version:- 1:6:0:0. 12:35:17:0044> [SN 40847248] CMGMotorCtrl::StartCtrl() [Internal Code: 17352111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:22:0813> [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103) [Internal Code: 12220411; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:25:0519> [SN 40847248] CMGMotorCtrl::GetPosition(v,rv) [Internal Code: 19060901; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:26:0398> [SN 40847248] CMGMotorCtrl::EnableHWChannel(0) [Internal Code: 23452901; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:27:0402> [SN 40847248] CMGMotorCtrl::MoveHome(0, 0) [Internal Code: 16411703; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:29:0941> [SN 40847248] CMGMotorCtrl::LLSetEncoderCount(v,v) [Internal Code: 15560807; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:30:0392> [SN 40847248] CMGMotorCtrl::GetPosition(v,rv) [Internal Code: 19060901; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:33:0392> [SN 40847248] CMGMotorCtrl::StopCtrl() [Internal Code: 17362111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:45:0467> [SN 40847248] CMGMotorCtrl::StopCtrl() [Internal Code: 17362111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:45:0472> [SN 40847248] CMGMotorCtrl::StopCtrl() [Internal Code: 17362111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:36:52:0978> [SN 40847248] CMGMotorCtrl::StartCtrl() [Internal Code: 17352111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:36:58:0687> [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103) [Internal Code: 12220411; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:36:58:0687> Error [Code = 10109]:- [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103); Internal Code = 19110511. Description: Control HW Communications Disabled Notes: A software call has been made to a control which is not currently communicating with any hardware. This may be because the control has not been started or due to incorrect serial number or missing hardware. Extra Info: No extra information. ***************************************************************************** ***************************************************************************** Event Log generated 12:44:44 Tuesday, April 13, 2021 Thorlabs APT Logging Server (Built: Dec 12 2013 11:36:11). Server Version:- 1:6:0:0. 12:44:27:0079> [SN 40847248] CMGMotorCtrl::StartCtrl() [Internal Code: 17352111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:44:32:0812> [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103) [Internal Code: 12220411; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:44:32:0812> Error [Code = 10109]:- [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103); Internal Code = 19110511. Description: Control HW Communications Disabled Notes: A software call has been made to a control which is not currently communicating with any hardware. This may be because the control has not been started or due to incorrect serial number or missing hardware. Extra Info: No extra information. *****************************************************************************
cwright  (posted 2021-04-14 11:26:54.0)
Response from Charles at Thorlabs: Hello and thank you for your query. I will reach out to you to ask for a copy of your VI and help troubleshoot this issue. To help us provide a faster and more detailed response please reach out to your local technical support team with a copy of the VI you are running, a screenshot of the error, and a list of which controllers and actuators are attached.
Ventsislav Valev  (posted 2021-02-02 04:27:10.277)
I am running a Labview Program with several of your motors. Most of the time, it runs well, but yesterday I got the following error message. [MG17Motor, OCX] Internal Internal Code: 18310705 Hardware Notificaiton Hardware response code 35002 received from hardware unit SN 83860551. Response details: Motor Overcurrent. Could you advise please?
cwright  (posted 2021-02-02 05:16:04.0)
Response from Charles at Thorlabs: Hello and thank you for your query. Motor Overcurrent is when the motor cannot provide enough current to do the job without damage. Essentially the stage needs to overcome some issue that is making it hard to move the moving world. The controller responds to this issue by ramping up the current to the motor. If the resistance is sustained then the motor will shut down to prevent damage. The most common cause of a persistent overload error is using too much weight on the stage or applying excessive torque to the stage. Technical support will reach out to you to troubleshoot this.
wong river  (posted 2020-12-08 00:08:05.06)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, wong
cwright  (posted 2020-12-09 04:36:16.0)
Response from Charles at Thorlabs: Thank you for contacting us. We will reach out to you directly with an install link for this, please note that not all of our stages and controllers are compatible with APT for Windows XP.
Isacco Gobbi  (posted 2020-11-02 04:04:00.273)
Hi, I am trying to use APT Active X controls in a Windows Form but I am unable to import them. Could you please show a working example of Windows Form application with embedded APT controls? Thank you
Rahul Patil  (posted 2020-09-08 10:16:46.607)
Hi, I am unable to control the MFF101/M filter flipper using APT in Labview. I have gone through the APT pdf guide, it does not mention anything about the flipper or the methods that the device responds to. Can we have an illustration of the same? Thank You.
cwright  (posted 2020-09-10 05:08:57.0)
Response from Charles at Thorlabs: Hello Rahul and thank you for contacting us. The PDF guide is just an example of how to get started with various controls and is not an extensive list of examples for every controller we produce. The commands relevant to the MFF101 and our other controllers/ stages with integrated controllers can be found in the APT API which can be found in C:/ProgramFiles(This should be x86 if you use 32 bit)/ThorLabs/APT/APT Server and will have the name APT Server.chm. I will send you an email with an example.
Chenxu Lu  (posted 2020-08-06 19:38:59.343)
Hello,when we use KDC101 to drive rotation motor in windows xp, we encountered the following problems which we never met when using TDC001 as the control box. I'd appreciate it very much, if you could help to point out what's wrong and tell us the solution. If the hardware driver is wrong, can you send us the right driver for XP? Bests, Lu Error [Code = 10001]:- Description: Internal Error Notes: An APT Server internal error has occurred. Extra Info: Unknown serial number prefix. Error [Code = 10003]: Description: Invalid Parameter Notes: An invalid parameter has been passed. Extra Info: Invalid lHWType [= 1] parameter.
YLohia  (posted 2020-09-24 03:54:45.0)
Hello, thank you for contacting Thorlabs. The KDC101 was released in February 2016, while the version 3.2 of APT, which you say you are using, was released in 2014. This is why you would get the error "Extra Info: Unknown serial number prefix.", which would suggest that the device has not been programmed into the software. The latest version of APT would recognize it but is very unlikely to work with XP. We would suggest that you upgrade the operating system of the computer you are using since we do not support new releases for XP due to its age.
Chenxu Lu  (posted 2020-08-06 19:36:37.5)
Hello,when we use KDC101 to drive rotation motor in windows xp, we encountered the following problems which we never met when using TDC001 as the control box. I'd appreciate it very much, if you could help to point out what's wrong and tell us the solution. If the hardware driver is wrong, can you send use the right driver for XP? Bests, Lu Error [Code = 10001]:- Description: Internal Error Notes: An APT Server internal error has occurred. Extra Info: Unknown serial number prefix. Error [Code = 10003]:- Description: Invalid Parameter Notes: An invalid parameter has been passed. Extra Info: Invalid lHWType [= 1] parameter.
DJayasuriya  (posted 2020-08-11 09:04:30.0)
Thank you for inquiry. This could be due to an older APT version. We have reached out to you directly to resolve the issue.
Pan Shengzhe  (posted 2020-08-01 16:45:29.193)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, Pan
DJayasuriya  (posted 2020-08-04 05:57:45.0)
Thank you for you inquiry. Please note that our last release for a XP compatible version would be in 2010. We will get in touch with you directly to send this through.
Min Park  (posted 2020-07-29 08:27:19.67)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, Min
DJayasuriya  (posted 2020-08-04 05:55:02.0)
Thank you for you inquiry. Please note that our last release for a XP compatible version would be in 2010. We will get in touch with you directly to send this through.
Han Xu  (posted 2020-07-14 06:02:30.15)
I forget to mention that I have bought a new KST101 and ZST225B recently. I download the software from your website (32 bits for 32 bits windows) and install it on windowsXP system. It is not working. So I need an APT software which can support the new KST101 controller and also be able to work on XP. Is that possible? Best, Han
cwright  (posted 2020-07-15 10:50:47.0)
Response from Charles at Thorlabs: Hello and thank you for contacting us. Unfortunately, due to limitations related to the .NET framework available to Windows XP (up to 4.0.3), while it will be possible to get your PC to a point where all of the APT OCXs and other native components are installed and registered, the C# components will not be available. This means the primary GUI applications such as APT User, APT Config and the Firmware Update Utility will not work but you should be able to use the APT OCX's with LabView and other third-party tools where they are available for Windows XP. We will reach out to you directly to assist you with this.
Han Xu  (posted 2020-07-14 05:56:51.18)
Hi, could you please send me APT software which is working on Windows XP? Thank you very much! Best, Han
vmiranda  (posted 2020-07-16 10:37:48.0)
Charles Wright responded to feedback.
Ozan Aktas  (posted 2020-03-05 09:11:01.897)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, Ozan
AManickavasagam  (posted 2020-03-06 10:22:44.0)
Response from Arunthathi at Thorlabs: Thanks for your query. I have contacted you directly with the most latest XP compatible version we have.
user  (posted 2019-12-17 10:47:07.553)
I am using the "translation stage 150" with MATLAB. I am taking pictures and moving the translation stage as it is scanning my system. The latest version of MATLAB 2019 is now informing that "Warning: ACTXCONTROL will be removed in a future release. For more information, see Recommendations for Java and ActiveX Users on mathworks.com. https://www.mathworks.com/products/matlab/app-designer/java-swing-alternatives.html?s_tid=pi_app_designer_R2019b_activex" I am now wondering if there a way to call the translation stage via MATLAB without ActiveX and the command actxcontrol? I really need a solution. I would prefer MATLAB over LABVIEW.
DJayasuriya  (posted 2019-12-19 06:12:27.0)
Response from Dinuka at Thorlabs: Thank you for your enquiry. The other option is to send serial commands with our Kinesis-controlled devices from Matlab (see our communication protocol here: https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control&viewtab=1). I will get in touch with you directly with an example code.
Guy Bonneville  (posted 2019-11-14 12:58:11.027)
these motors are way too complicated for nothing. ActiveX, and .Net components. all that is needed is simple Commands. I haven't been able to control these stages properly
DJayasuriya  (posted 2019-12-03 06:01:22.0)
Response from Dinuka at Thorlabs: Thank you for your comment. I am sorry that you have difficulties here. I will contact you directly to troubleshoot this issue.
Kuo WeiLin  (posted 2019-11-12 07:12:22.03)
Hardware unit (S.N. 21807792), detected firmware version 1.0.4, latest firmware version is 1.0.8 I can't upgrad this firmware correctly. Dose any method can be slove? thanks a lot.
cwright  (posted 2019-11-12 09:54:15.0)
Response from Charles at Thorlabs: Hello Kuo, unfortunately I cannot identify your controller from the serial number provided and will need more information. I will contact you directly to help resolve this issue.
yiting Liu  (posted 2019-08-23 12:07:37.873)
Dear engineer, I met some problems when using apt. When open the software, it comes up with the information “fail to load application settings”. Please tell me how to solve it. Thank you. Regards, Yiting Liu
rmiron  (posted 2019-08-27 04:50:53.0)
Response from Radu at Thorlabs: Hello Yiting Liu. In order to know why this error is being raised, I require a bit more information. Therefore, I will contact you directly in order to assist with troubleshooting.
Dzianis Saladukha  (posted 2019-07-03 05:49:05.617)
Hi, I am currently writing software to control CR1/M-Z7 with TDC001 in LabVIEW 2014. I've read the Thorlabs guide with attention, however still meet several issues. At first I tried to use .Net (Kinesis) component as LabVIEW control. The installation went with no errors.I also added all .dll files to my project folder. However when I tried to insert "Thorlabs.MotionControl.Controls.dll" into the .Net container I've got "An error occurred trying to load the assembly. Kinesis software itself worked fine. So I had no choice rather then switch to APT software. Installation went fine and I also was able to add Ative-X component in my LabVIEW program with no problem. However APT software reads wrong stage in my system: Z606(B) instead of CR1/M-Z7. So it reads a linear stage instead of rotation one. This problem stays in both LabVIEW and APT software. I wasn't able to change the stage settings. I would appreciate if you help with those two issues and report me any possible solution. Thank You, Dzianis
rmiron  (posted 2019-07-03 07:10:48.0)
Response from Radu at Thorlabs: Hello, Dzianis. I will start by addressing the problem you have with the stage not being correctly recognised. This does not happen in Kinesis because CR1/M-Z7 is equipped with an identifying resistor which tells TDC001 that it is dealing with this stage. However, APT was not programmed to recognise stages automatically. In order to amend the problem, you will have to enter the APT Config application, go to Stage, select the serial number of your cube from the Motor drop-down menu and and associate it with CR1-Z7 from the Stage drop-down menu. Regarding your difficulty in inserting the Controls dll, have you checked whether LabVIEW's and Kinesis' bit-versions match? I will contact you directly in case that is not the underlying problem.
hakchu lee  (posted 2019-05-15 15:41:28.183)
Hi, I have K10CR1 motorized rotation stage. I'm looking for APT sample codes for remote interfacing using embarcadero C++ Builder programming environment. Thank you
rmiron  (posted 2019-05-16 07:37:38.0)
Response from Radu at Thorlabs: Unfortunately, we do not have any suitable sample codes at the moment. I recommend that you contact your local technical support team. They will be able to offer you some assistance towards writing the C++ program that you require.
Dawei Liu  (posted 2019-03-23 11:55:19.597)
Hello, I just use MATLAB to run the APT and control the stage MAX341/M. Now I meet the problem "Control HW Communications Disabled". According to the previous problem, I have added the wait time to "identify" process but it still has the "disabled" problem. Can you give me some solutions? Thank you very much
user  (posted 2019-03-27 05:15:04.0)
Response from Arunthathi at Thorlabs: Thanks for contacting us. Can APT see the device without MATLAB? The error you see may be due to an incorrect serial number (please could you ensure the serial number showing in APT config has been used and whether it is the same as the one printed on the device) or this may be because the control has not been started. If the error still persists please contact techsupport@thorlabs.com directly to troubleshoot further.
david.lowndes  (posted 2018-12-07 16:46:17.537)
I think I have found a typo in "APT_Communications_Protocol.pdf" version 20 (issue 23). The command structure for MGMSG_MOT_REQ_ENCCOUNTER lists the first byte as 0x11 which I looks like a copy/paste from MGMSG_MOT_REQ_POSCOUNTER. From the function description I assume the first byte should actually be 0x0A?
rmiron  (posted 2018-12-10 12:02:55.0)
Response from Radu at Thorlabs: Thank you for taking the time to let us know, David. Having checked our source code files, I can confirm that you are correct. The first byte is 0x0A. We will amend the documentation of our serial communications protocol shortly.
shuwen.zeng  (posted 2018-11-08 16:03:36.38)
Dear friend, Can you send me an APT software that is for Windows XP? Many thanks and best regards, Shuwen ZENG
rmiron  (posted 2018-11-09 11:46:47.0)
Response from Radu at Thorlabs: Dear Shuwen, we keep an archive containing all the previous iterations of APT. I will contact you directly in order to send you the latest version that is compatible with XP.
user  (posted 2018-08-08 00:14:50.083)
Hello, i am currently developing the C# program to control the K10CR1/M, i would like to ask if the minimum requirement of the .Net framework supports the Active X module? Thank you very much
rmiron  (posted 2018-08-09 12:23:31.0)
Response from Radu at Thorlabs: APT is based on ActiveX controls and .NET is not used within the server. However, given that Windows 2008 Server is the oldest OS compatible with APT, one can assume that the software requires at least the 3.5 version of the .NET framework.
kokbin  (posted 2018-06-18 23:37:03.417)
Hi, We have a LTS300/M in our lab, we want to automate it by using activeX control instead of the pre-made one from Thorlabs (APTuser, APTconfig). However, we face a problem right from the beginning of writing the code using Microsoft Visual Studio. The steps were referred to your APT Tutorial video, but when we try to execute the program, the GUI opened in new window only shows the design, but all the buttons(jogger, enable, home, etc) and numbers(positions, velocity, etc) didn't show up. The steps that we've done so far are as follows: 1. Install "LTS300/M" APT software from Thorlabs. 2. In Microsoft Visual Studio, open "Windows Forms Application" 3. Import "MGMotor Control" from COM components under "Tools" >> "Choose Toolbox Items". 4. Draw "MGMotor Control" from "Toolbox" 5. Changed "HWSerialNum" under "Properties" to our respective serial number 6. Write code: ****************************************************************** Public class Private Sub Form_Load() AxMG17Motor1.HWSerialNum = 45847108 AxMG17Motor1.StartCtrl() End Sub End Class ****************************************************************** 6. Run. This code is executable, but having the problem as mentioned above (absent of buttons and numbering). We would like to know what is the actual problem and how do we solve the problem. Thank you and I looking forward to your reply. Thanks with best regards. Ng kokbin@um.edu.my
rmiron  (posted 2018-06-26 06:32:44.0)
Response from Radu at Thorlabs: I think this issue occurs because AxMG17Motor1 is not properly initialised and therefore its methods and properties are not recognised. Are you certain that you are not receiving any error messages or that your code only consists of the lines written above? I suggest that you change the code to: "Public Class Form1 Private Sub AxMG17Motor1_Enter(sender As Object, e As EventArgs) Handles AxMG17Motor1.Enter AxMG17Motor1.HWSerialNum = 45847108 AxMG17Motor1.StartCtrl() End Sub End Class" I will contact you directly in case this does not fix the problem.
carmen.buttler  (posted 2018-03-26 07:30:42.183)
We are having a problem with our APT software and three FW103 motors. Windows 7 recognizes the drivers when the USBs are connected and the motors show up in the firmware update window, but whenever these motors are connected, neither APT user nor APT config will run. Both throw a windows error window saying they have stopped working, with a "Problem Event Name: APPCRASH" We have several TDC001 motors connected to this same computer that run just fine when the FW103's are not connected, but APT User and Config will not run if any of the FW103's are connected, whether the TDC001's are connected or not. Any idea what the problem might be?
bhallewell  (posted 2018-04-03 12:15:41.0)
Response from Ben at Thorlabs: I will contact you directly to troubleshoot this problem. When it comes to solving software errors, it's usually best to contact your local Technical Support team directly.
matteo.bernardello  (posted 2018-03-12 10:41:26.317)
To whom it may concern, I am using a FW103H filter wheel, connected to the BSC201 High-Speed Switching Controller. I would like to control them through LabVIEW and APT software, through ActiveX. I manage it, but I would like to know more about the methods parameters. For example, I am using the MoveAbsolute method, but I don't know what does the bWait parameter imply, at the input and output of the method. Also, there are different methods that I could probably use, but I don't know what they actually do (e.g. MoveAbsoluteEnc, MoveAbsoluteEx, and many more)and I don't know what do their input and output paramenter's role. Is there an list with the description of all the methdos and ALL their input and output parameters? Thank you very much, Bests, Matteo Bernardello
bhallewell  (posted 2018-03-16 08:18:58.0)
Response from Ben at Thorlabs: Thank you for your feedback here. The bWait parameter specifies the way in which the Move command methods return. If the bWait parameter is set to 'False', the method returns as soon as the move has been initiated. If bWait is set to 'True', MoveRelative for example returns only after the motors have completed their moves. In either mode, a MoveComplete event is fired once the motor moves have been completed. You can find a full list of commands which apply to the Filter wheel within the APTServer help file > Motor Control methods.
adavid  (posted 2018-02-22 16:27:17.56)
I am using an old version of APT (1.0.22) on Windows XP. I use it with various stages connected to TDC001 cubes without issue. I have recently acquired an MFF101 motorized mount, connected by USB. The mount shows as "APT USB device" in the Windows hardware manager, so it looks like the driver installed without issue. However, the MFF101 doesn't appear in the APT User software. - Do I understand correctly that the MFF101 should show up directly in APT User? Or do I need to configure it in APT Config first? if so, how? (it doesn't appear as a motor like other stages in the pull-down menu) - Is the NFF101 not showing because my APT version is too old? If so, where can I find a software version compatible with win XP which would recognize this stage? Thanks!
bhallewell  (posted 2018-03-01 05:52:53.0)
Response from Ben at Thorlabs: Thank you for your feedback. This version of APTUser you’ve referenced is a part of the following APT Software Versions 2.11.0 (Released 17-09-10) 2.12.0 (Released 09-05-11) 2.13.0 (Released 23-01-12) The MFF* series was released at the end of 2013. I have a more recent Windows XP compatible version of Software I will send you which includes support for the MFF* series mount. It is worth checking the Change Log for our APT Software for awareness of changes in functionality across software updates. An icon for this can be found next to the Download icon for APT. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
kgosc  (posted 2018-02-06 16:33:22.12)
For different reasons I need to make my software to work on Win7 and later as well as on WinXP x86. From earlier posts I see that I'm not alone in that. The hardware used is TDC001. Will it be possible to get the latest archive version of the APT software that works with XP 32bit? Regards Krzysztof Goscinski
bhallewell  (posted 2018-02-09 03:51:26.0)
Response from Ben at Thorlabs: I'll contact you directly with an archived APT version which will generally support TDC001 on Windows XP. Please note however that there may be limitations on the hardware & functionality that this version supports. We would always recommend customers to use the latest version of our new Kinesis or APT software from this webpage. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
jinic.kim  (posted 2018-01-20 15:25:27.033)
Hello, I have LTS150 & 300 and running APT Active X on VBA. But recently, I found one of computer for a device is running under Windows XP and current version 3.21.1 seems not working on XP. Can I have APT Active X for XP if you have? Thanks!
bhallewell  (posted 2018-02-06 10:28:04.0)
Response from Ben at Thorlabs: We no longer support XP versions of software. I may be able to obtain an archived XP compatible version for you with reduced functionality. I'll contact you directly.
kkim  (posted 2018-01-02 22:31:20.123)
We have problem in using your 'Active X' module. The OS system we use and the other vision systems which go with the Thorlabs stages are in 64bit, so we tried to use 64bit APT to control the stages but, the 64 bit Active X of APT would not be installed. When we install 32bit APT, we could make it work on Visual Studio 2013 but, it made problem with other 64 bit sources. Would you please check the 64 bit SDK?
rmiron  (posted 2018-01-12 12:54:35.0)
Response from Radu at Thorlabs: Thank you for letting us know. We will contact you directly to get more information about the errors that were raised. If the SDK appears to be bugged, we will gladly look for the problem and fix it for the next release.
Eoin-S.Bolger  (posted 2017-11-07 11:54:31.403)
All of these products would be improved if Thor labs supplied a simple programming manual instead of having to use the DLL's supplied. for example simple VISA/GPIB commands.
bhallewell  (posted 2017-11-10 09:36:03.0)
Response from Ben at Thorlabs: Thank you for your feedback. Aside from the .NET & ActiveX dlls available within APT & Kinesis, we also publish our low level serial communications protocol which can be found within the 'Communications Protocol' tab within the following link. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
yamoussa.sanogo  (posted 2017-10-17 14:11:13.4)
Hello, I'm trying to interface a BSC203 in my LabVIEW application following the instructions in the manual Kinesis-LabVIEW. I'm stacked because of the lack of clear information on interfacing this instrument using LabVIEW...When use Kenesis versus APT Software? In any cases, unlike what's shown in the manual Kinesis, I didn't see any way to interface this instrument using .Net approach in LabVIEW. It would be better to make information more clear and case-oriented instead of giving a tutorial on LabVIEW, which is obviously the missions of National Instruments guys.
bwood  (posted 2017-10-20 08:36:16.0)
Response from Ben at Thorlabs: Thank you for your feedback. Kinesis is designed to be the successor to APT, which is considered to be legacy software. In most circumstances we would recommend Kinesis over APT. You can find a guide on how to use Kinesis'.NET framework with LabView at the following link, but please feel free to contact your local technical support office if you are still experiencing difficulties: https://www.thorlabs.com/Software/Motion%20Control/KINESIS/Kinesis-Labview.pdf
pgrimes  (posted 2017-09-27 16:10:07.88)
Hi, I'm trying to connect to two TDC001 cubes using serial connections over USB from python on a Raspberry Pi running Raspian linux. I can get the IDENTIFY command to run once, but it will fail after that. Using the InstrumentKit python package, I can also get a response from the TDC001 to a Hardware request by tailing the devices, but not within the python programs. Are there any particular serial configuration elements required (termination characters, etc.) to get communication to work? Most of the work in writing a pure python driver has been done by the InstrumentKit team, but some configuration information is missing. Thanks, Dr Paul Grimes, Smithsonian Astrophysical Observatory Receiver Laboratory
bhallewell  (posted 2017-11-20 05:37:24.0)
Response from Ben at Thorlabs: Thank you for getting in touch with us. I see that the InstrumentKit will communicate with APT devices through Serial communication via a Virtual COM Port. The Virtual COM port you create will need to hold parameters as outlined on page.12 of the Thorlabs APT Controllers Host-Controller Communications Protocol document which can be found in the following link. Here details of the message structure & methods are detailed also. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
fyk15isy  (posted 2017-09-21 09:30:10.07)
Hi! I'm using an LSM 300/M Rev B translation stage along with the APT User software (version 3.3.6274). However, recently the software just stopped wokring. Whenever I try to launch it, it gives me an "APT User has stopped working". OS is Windows 10. Thank you!
bhallewell  (posted 2017-09-28 10:04:33.0)
Response from Ben at Thorlabs: I will contact you directly to troubleshoot the problem with you.
aquiles  (posted 2017-08-30 16:39:55.757)
I cannot find documentation on the Thorlabs APT dll. That would be extremely helpful for developing custom GUIs and command-line applications in Python.
bhallewell  (posted 2017-09-11 08:06:31.0)
Response from Ben at Thorlabs: Thank you for your post. You can retrieve APT.dll from within the 'APT Software' setup.exe download in the following link. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control Within this link we have the APTServer help file outlining each function contained. You can also find further reference to the communications protocol within the following link. https://www.thorlabs.com/Software/Motion%20Control/APT_Communications_Protocol.pdf Whilst we don't directly support Python, a following Open Source Python wrapper can be found on the following site. https://github.com/UniNE-CHYN/thorpy
vinx-d  (posted 2017-08-22 13:20:07.497)
hi, i'm using an APT stage, but when i run the software an internal error with the internal code 15492511 appears. I wanted to know i solve this problem. thanks
bhallewell  (posted 2017-08-23 09:13:27.0)
Response from Ben at Thorlabs: This is an APT Server error which is typically related to a driver error. I'd recommend a full uninstall & re-install of the latest version of software which can be downloaded from here... https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control I'd also recommend considering updating to our new software package Kinesis, which includes a refined interface with improved Move Sequence manager, USB-HID joystick control & device connectivity management.
lu_yan  (posted 2017-07-26 18:35:28.85)
Hi, I wanted to work with micromanager to control one of our APT stage, but it seems that I will need to install 64-bit APT user v1.0.0.3. Could you please send me a copy of the software? Thanks, Lu
bhallewell  (posted 2017-07-27 10:51:53.0)
Response from Ben at Thorlabs: I will contact you directly to assist you
dolerite  (posted 2017-05-23 13:04:58.667)
Dear Manager, After Installed APT Software. I tried to Active X of APT to make a program with Visual C++ to control KDC101. But It is impossible to insert "Active X" in the dialogue box because "MGMotor Control" is not listed in the list of Active X. Please let me know how to insert "Active X" supplied by APT software in the Visual C++ program.
bhallewell  (posted 2017-06-02 09:17:53.0)
Response from Ben at Thorlabs: You can find our video tutorials in the following link to clarify the steps for inserting the ActiveX control in your Visual C++ project. https://www.thorlabs.com/tutorials/APTProgramming.cfm If the Active X control doesn't exist in this, this may be due to installing a version of APT which isn't compatible with platform type of Visual Studio e.g. running 64-bit APT ActiveX controls within a 32-bit platform. I will contact you directly to assist you.
jiezhang  (posted 2017-05-11 13:51:00.073)
I have a TDC001 motor controller and a linear stage with Z812B motor attached. The serial umber is 83829586. I am trying to use LabVIEW to operate. It worked fine for a while, but stops working now. Doesn't matter what I do, the "active" led is always flashing. The only way to stop its flashing is to unplug the power supply. Can anybody help me to understand what is wrong? Thanks, Jie
bhallewell  (posted 2017-05-22 08:30:26.0)
Response from Ben at Thorlabs: Most commonly the Active LED is configured to flash when the motor reaches a forward or reverse limit switch, or when the Ident button is pressed in the GUI panel. It can also be configured to be lit when the motor is moving. It is worth checking what states are assigned to flash the LED from Settings > Advanced in Kinesis. I will contact you directly to troubleshoot this with you.
giulia.sinnl93  (posted 2017-04-04 06:18:02.557)
Is there a way to solve the "Control HW communications disabled" error? I'm trying to connect your motorized stage MTS50-Z8 with Labview but I keep getting that message. The VI is pretty basic: I set the serial number, then I use StartCtrl method, then I have the executing loop, and finally StopCtrl. As I connect the motorized stage to the PC the APT User interface works fine, while when I create the ActiveX panel in my VI the GUI remains dead. I've already tried the following things: using the correct serial number, restarting the computer, shutting down the apt software while running LabView. Any suggestions?
bwood  (posted 2017-04-11 11:56:08.0)
Response from Ben at Thorlabs: Thank you for your feedback, we will contact you directly to troubleshoot this issue. One potential cause of this issue is that StartCtrl may not have completed initialising. If you are using this in LabView or other 3rd party environment then please add a Wait after the StartCtrl method to allow this to complete before calling any further methods.
erfan.qaderi  (posted 2016-11-15 04:31:57.38)
my apt software does not recognize my thorlabs piezo control module - the serial number does not appear in view>graphical panel>piezo - what should I do?
bhallewell  (posted 2016-11-15 10:31:24.0)
Response from Ben at Thorlabs: We will contact you directly to configure your setup. I would advise using our new Kinesis software package as configuring hardware is more straightforward than in APT.
alenciouslo  (posted 2016-08-30 19:45:53.82)
Is there a version of the APT software that support 32 bits WinXP? If so, how do I obtain it?
bwood  (posted 2016-08-30 10:32:14.0)
Response from Ben at Thorlabs: Thank you for you question. I will be in contact with you directly with the latest archive version of APT which is compatible with XP.
pananrin_1  (posted 2016-01-18 05:14:38.063)
I want to download software old version. How to download?
bhallewell  (posted 2016-01-18 11:02:55.0)
Response from Ben at Thorlabs: Thank you for your question. You can find previous versions of APT & Kinesis Motion Control software in the 'Archive' tab in the link below. Should there be an alternative version you require, please contact your local support entity & we can sort this for you. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control