top bar


Standa Microstep Controller adapter using XIMC library

Summary:Interface to Standa 8SMC4-USB using XIMC interface
Author: Standa (
Available since version:1.4.22

Differences between Standa adapters

There are three different device adapters for Standa motor controllers:

  • Standa8SMC4 – official adapter (this one) for operation with 8SMC4-USB motor controller which was developed by Standa motion control department.
  • Standa – adapter for 8SMC1-USBhF (old version of motor controller from Standa).
  • StandaStage – another adapter with 8SMC1-USBhF support.

Supported platforms

Currently only Windows platform is tested and supported. Device adapter can be compiled and launched on Linux and Macintosh as well but it is not tested yet.


  • Install Micro-Manager. It is straightforward procedure and there are usually no problems with setup process.
  • Download libximc-2.7.6 library distribution.
  • Copy following DLLs from extracted directory ximc-2.7.6/ximc/win32/ to the Micro-Manager directory: libximc.dll, xiwrapper.dll, bindy.dll
  • Install VC++ 2013 Redistributable Package from the extracted file ximc-2.7.6/ximc/win32/vcredist_x86.exe
  • Connect a power supply to 8SMC4-USB and set the appropriate voltage for motors in your stage. Turn a power supply on.
  • You need XiLab to check your 8SMC4-USB controllers and set it. XiLab version depends on the controller firmware version. You can download XiLab and update controller's firmware attachments this page.
  • Connect 8SMC4-USB controllers to computer via USB and open them in XiLab software. Click Restore from file... in Settings... window of XiLab and choose appropriate profile for your stage. Click Save to flash. For additional information check User guide.
64-bit version is supported too. Do not forget to use libraries from ximc-2.7.6/ximc/win64/ directory instead of win32.

UM set XiLab.png

Getting started with Micro-Manager

Run Micro-Manager


Note. When installing the Micro-Manager in C:\Program Files access to configuration files is limited and you need to have administrator privileges. To start an application as administrator right click by its icon and choose Run as administrator.

  • Run Micro-Manager from the shortcut at your desktop or start ImageJ.exe application from installation directory. First time it will greet you and suggest to type some information about yourself.
  • The next window contains drop-down list with configuration files. Choose None.

Configure hardware

In the main window choose Tools -> Hardware configuration wizard.

UM HCW.png

The process of hardware configuration consists of 6 steps:

1. At start, choose Create new configuration and click Next.

UM newconf.png

2. At the second step Micro-Manager prompts you to add hardware. If you want to use MicroManager with 8SMC4-USB motor controller choose Standa8SMC4 folder in down window with available devices. There are two drivers: Standa8SMC4Z for motor controller with one axis and Standa8SMC4XY for controller with 2 axes. When you select one of them, a dialog box with properties will appear.

UM set.png

3. In the Value column type the COM port number for motor controller in the next format:


Trailing letter n is a number of corresponding COM port (look at the screenshot above). You can find it in XiLab or in Device Manager -> Ports. Click Ok. Unit Multiplier X/Y fields are leaved with default values. These values allow you to set stage speed. 4. For Standa8SMC4Z you should type COM port and Unit Multiplier too. Z axis is usually used as a focusing stage. 5. Camera is added in the same way. You need to know correct driver name for your camera. OpenCVGrabber driver may be used for any USB camera. Choose OpenCVGrabber folder in Available Devices. The next window will appear. Click Ok.

UM set OpenCV.png

6. Click Next and Finish in the last step.

The system configuration is finished.

Device usage

We have installed and configured Micro-Manager and can check how does it work.

1. Set the pixel size parameter in Tools -> Pixel Size Calibration.... There are you should type the pixel size value and mark parameters that Micro-Manager should consider. Click New to create new pixel size. In appeared window mark resolution of your camera (with OpenCVGrabber it is OpenCVGrabber - Resolution parameter) and type pixel size (in um). If you want to calculate pixel size parameter you need to know image size from microscope, its resolution and displacement (from screw pitch) for you stage.

2. Modify UnitMultiplierX and UnitMultiplierY (Tools -> Hardware Configuration Wizard, then select Modify or explore the existing configuration, then click Next, then double click to Standa8SMC4XY in Installed Device window). It is needed for correct conversion from stage movement distance to pixel size value change.

3. Choose Tools -> Stage Position List.... Click Set Origin to set zero of your stage coordinate system. Then, in the main window click Live. Choose Scrolling Tool (like a hand) in the ImageJ window. Make sure that cursor looks like a hand on the screen. Click the windows with the video from camera. Now you can control your stage by keyboard (arrow keys to control XY axis and U,J buttons to control Z axis).

4. You can scroll an image from a camera with the mouse cursor. Click Tools -> Mouse Moves Stage (Use Hand Tool). Now click video window and drag it in the desired direction. Stage will move in the same direction. Double click will allow you to center the view on the chosen point in the image.


For example you set the pixel size is equal to 1um. And UnitMultiplierX/Y is equals to 1.0000. With 8MTF stage table one pixel shift corresponds to 12.5um. If we will set UnitMultiplierX/Y to 12.5 than movement at one pixel will corresponds to 1um.


You may decrease UnitMultiplier if the stage speed is low and increase it if the stage speed is very high.

© Micro-Manager : Vale Lab, UCSF 2006-2011 | All Rights Reserved | Contact