Problems connecting to PI stages


I am building a light-sheet microscope and I am having issues connecting my PI stages to Micro-Manager.

For example, one of the stages is the M-605.2DD with controller C-863 connected via USB to a Windows 10 computer. I can connect and control my stage with PIMikroMove but Micro-Manager’s Hardware Configuration Wizard does not recognize it. If I use PI_GCSController_DLL: PI GCS DLL Controller and fill the initialization properties, I get the following error:

“Error in device “PI_GCSController_DLL”:Invalid DLL Name or DLL not found (113)”

If instead I try to use the C-863.11: PI C-863.11 Controller, I get the error:

“Error in device “COM19”: Unknown error in device (1)”

I am using Micro-Manager 2.0-gamma.

Can anyone help me?


Hi Adria,

Have you copied the appropriate (32-bit or 64-bit) DLL to the Micro-manager directory as per the instructions here (search for the bit labelled DLL Name)?:


Hi Sunil,

Thanks for your reply.

I have indeed copied both PI_GCS2_DLL.dll and PI_GCS2_DLL_x64.dll to the Micro-Manager directory. I have tried both of them as “DLL Name” in the Initialization Properties table but neither of them works and I get the same error quoted in the previous message.



Hi Adria,

the error message is generated when the adapter can not find or load the DLL. Can you provide screenshots of the configuration dialogs for both cases (32bit/64bit) ? Where did you put the DLL files? It should be in the same folder as “ImageJ.exe” and “mmgr_dal_PI_GCS_2.dll” are located. What version of the PI_GCS2_DLL do you use (PIMikroMove can show you this)?


Hi Steffen,

Thank your for your message.

Both DLL files (PI_GCS2_DLL.dll and PI_GCS2_DLL_x64.dll) are in the Micro-Manager-2.0gamma folder along with “ImageJ.exe”, “mmgr_dal_PI_GCS.dll” and “mmgr_dal_PI_GCS_2.dll”.

Looking at the Version Info in PIMikroMove (attached below), I understand that I should use “PI_GCS2_DLL.dll”. However, if I do so, I get the error: “Error in device “PI_GCSController_DLL”:Invalid DLL Name or DLL not found (113)” (Attached below as well). The PI_GCS2_DLL version shown in PIMikroMove is as you can see in the screenshot.

On the other hand, if I use “PI_GCS2_DLL_x64.dll” with the same configuration as shown above, Micro Manager seems to recognize it:

But then if I go to Stage Control to control it, Micro Manager finds nothing:

Kind regards,


Hi Adria,

I think everything works fine on your side. PIMikroMove is a 32bit application and needs PI_GCS2_DLL.dll. Your micro-manager version seem to be 64bit and needs PI_GCS2_DLL_x64.dll. So you can load the controller device. :white_check_mark:

Now you need to define stages. You can have multi-axes setups where one controller controls several xy- and z-stages. But you can have only one connection between micro-manager and the controller. So you need to define controller and stages separately. We have described this here: PI GCS 2 - Micro-Manager , search for “After this you add the stages”.


Hi Steffen,

Thank you for your help.
I have managed to control the stages individually as Z-Stage but I cannot control two of them at the same time as an XY-Stage.

I am going to list the steps I followed in case I have missed something. The stages I am trying to control are two M-605.2DD with two C-863.

1- I connected the stages to PIMikroMove and once they had been referenced, I saved parameters to non-volatile memory. I closed PIMikroMove.

2- I configured two PI_GCSController_DLL controllers with different SN corresponding to each stage connected with USB to the computer.

3- I configured an XY-Stage with the parameters you can see in the following screenshot. Until this point everything seemed to be OK. (I am unsure which HomingMode I should use, I have tried with REF).

4- When I open Stage Control, X position always stays at 0um but Y keeps showing random numbers like the one in the following screenshot. If I try to move the stages, they do not move.


5- If I go to Stage Position List and I do “Set Origin”, the stages make a sudden short movement but then the following error appears on the screen:

I am probably missing some important step but I cannot figure out what I am doing wrong. I hope you can see what it is.

One final question, is Micro Manager able to control 4 stages (X,Y, Z and rotation) at the same time?

Thank you again.