MX Subversion Repositories

Here may be found the Subversion repositories for MX and its associated packages:


MX - Contains the MX server, MX autosave server, MX motor client, and utility programs such as mxget and mxput. It also contains a set of dynamically loaded modules that implement interfaces to proprietary vendor software.

Language Interfaces

MP - A Python API wrapper that exports most of MX's functionality. Currently only supports Python 2.x.

MxTcl - A Tcl API wrapper for MX. It does not implement support for more recently added device classes, such as "area_detector".

MxIDL - A very limited IDL API wrapper for MX. At present, it only supports raw mxget and mxput commands as well as a subset of MX area detector functions.

GUI Programming

MpWx - Provides wxPython widgets for displaying and controlling MX network variables.

MpWxCa - Provides wxPython widgets for controlling EPICS PVs.

Graphical User Interfaces

Mpad - wxPython-based GUI for area detector control.

MpMca - wxPython-based GUI for multichannel analyzer control.

Utility Programs

Area Detector

mp_ad_copy - Monitors a directory for the arrival of new image frames generated by an area detector and copies them to archival storage. (Not complete yet)

mx_ad_tools - A set of small programs for operating on files produced and used by MX-controlled area detectors.


mp_joystick - An interface for controlling MX motors via a Pygame-compatible joystick or gamepad.

External Control System Interfaces


MpCa - MX-compatible API wrapper for EPICS PVs.

Mx-based EPICS Channel Access Server - This server exports MX functionality to EPICS clients using EPICS PVs. It is implemented using the Channel Access Server library.


MX Blu-Ice Server - This server can act as a Blu-Ice DHS (device hardware) server. It also supports a subset of DCSS functionality.

MarCCD (now Rayonix)

MX MarCCD goniostat - This provides a MarCCD-compatible goniostat interface for MX.


MX documentation (as LaTeX source)


MxTclNet - This package implements a subset of the MX network protocol using the old, inefficient ASCII encoding. It has been replaced by the mxget and mxput programs now bundled in the core MX package, which use newer, more efficient binary encodings (raw or XDR).

Last modified by on February 4, 2014.