Intelligent Motion Control Since 1987

Support / Frequently Asked Questions

Welcome to our FAQ page. This page contains the answers to commonly asked questions, organized into the following categories...

If you can't find the answer to your question, please call us at 1-760-930-0101 or write us an email: . You can also use our convenient online form to ask us your question by clicking here.

General Questions

About the Company
How long has PMC been in business?

PMC designed its first product in 1986 and was incorporated as a California Corporation in 1987.

Can I get an annual report?

PMC is is a privately held, employee-owned company. Financial annual reports are not available to the public.

Does PMC support international customers?

Yes, PMC supports customers located in more than 40 countries. More...

Does PMC specialize in any particular industries or applications?

PMC provides general-purpose motion controllers which are deployed in a wide variety of industries and applications, including semiconductor, electronics, test & measurement, electro-optics, machine tools, robotics and general automation. More...

Can PMC provide me with a custom solution to meet my unique needs?

Yes. We specialize in working closely with OEM machine builders to deliver fast and affordable firmware, software or hardware solutions that are optimized for our customers' application and budget. More...

Pricing / Ordering / Availability
Can I try a PMC controller before buying it?

To help take the risk out of selecting a motion controller, PMC offers a full money-back guarantee to qualified machine builders through our product evaluation program. More...

Do you charge extra for your software?

No. To help keep the overall system cost low and avoid any hidden costs, PMC does not charge extra for our comprehensive suite of software tools.

What about the price of your accessories?

PMC uses widely available (and therefore low-cost) industry-standard cables and wiring accessories for all of our products.

How do PMC controllers compare in price to other competing products?

PMC motion controllers are as affordable as any comparable products on the market today. However, quality is our primary concern when designing our products - not price. Accordingly, we can confidently say that PMC controllers provide more value per dollar than any competing product.

Do you offer quantity price breaks?

Yes. We offer aggressive quantity price breaks to customers who buy in volume. Price breaks start as low as 2-piece quantities on some product lines and can exceed 50% at higher volumes. More.

How can I get a price quote?

Please contact us. Our products are not suitable for every project, or every user. Therefore, we want to ensure that our products will work well for an intended application before we quote. With the right information up-front, we can help our customers save time and avoid problems later on. For more information about how to get a price quote, and a link to a handy online form for providing us with the required information, click here.

How soon will I receive my order?

Our standard products are typically in-stock, available for immediate shipment. Confirmed orders are usually shipped within 24 hours. Orders received before noon can usually be shipped the same-day. Note: We fulfill orders on a first-come, first-served basis and cannot guarantee immediate availability of all parts, especially for large quantity orders. Please contact PMC for availability and lead-times when placing an order.

What about product life-cycles? Will I still be able to buy the same product 10 years or more from now?

Our OEM customers count on being able to obtain our products long after the initial purchase, so we do everything in our power to ensure the long-term availability of our products. By taking extraordinary steps, such as generously stockpiling components that may become discontinued, we ensure continued availability of our products so that our customers can count on uninterrupted product availability as they plan their own product life-cycles. In fact, because of these efforts, today we still manufacture and sell motion controllers that we first introduced to the market in 1989! We are confident that no other manufacturer will do more than PMC to ensure that 10 to 15 years from now you will still be able to obtain the same products you buy today.

Support / Service
Does PMC offer local support in my country?

In most countries we support our customers directly from our factory in Carlsbad, California. Our own engineers communicate with our customers via telephone, email and occasional visits to provide the most efficient and effective support possible and the fastest resolution of technical issues. In some countries, PMC works with value-added resellers and system integrator partners who can provide local design and engineering support services to our customers. More...

How can I get support?

Please visit our Customer Service page for more information about the support options we provide.

What is your warranty period?

All of our products are covered under a 2-year warranty (twice as long as most competitors). More...

Where can I get software or firmware updates for my PMC motion controller?

Users can download the most recent versions of all support resources from our product Support pages. For all PMC products except the DC2-PC100 , DCX-PC100 , DCX-VM200 and DCX-VM300, our customers can easily update the firmware by downloading the appropriate firmware file from our Support pages and then using our Windows-based Flash Wizard utility to load the new firmware file. With this easy and convenient procedure, users can update the controller firmware without having to physically replace hardware EPROM chips.

Why do you offer plain ZIP files in some of your downloads instead of self-extracting ZIP files (EXEs)?

The ZIP file format is supported on a wide range of operating systems, including Windows, Linux and the Mac OS. Self-extracting EXE files are only supported under Windows.

How do I open the files I downloaded from the PMC web site?

The answer depends on your operating system and the filename extension of the file you just downloaded:

  • If the filename ends with ".zip", then it is an archived zip file that must be expanded using an unzip utility. For Windows users, suitable choices include the built-in zip support in Windows and third party utilities such as WinZip (, PKZip (, and gzip ( To unzip a file on Microsoft Windows simply double click on the zip archive.
  • If the filename ends with ".pdf", you will need a PDF reader, such as Adobe Acrobat Reader PDF document
  • If the filename ends with ".txt", it is a plain text file that can be opened directly in almost any environment.
  • If the filename ends with ".exe", it is a self-extracting Windows executable file that will automatically unzip itself when run in a Windows environment. There is generally no support for ".exe" files in other operating systems.

NOTE: Some PMC product manuals are password protected. To unzip them, you will need to obtain a password by contacting PMC or by using our online Password Request Form.

Technical Questions

Choosing a Controller
Can PMC's PCI-bus Motion Controllers be used stand-alone (without a host computer)?

Our PCI-bus based controllers do not support stand-alone operation. If you need stand-alone operation, see our MultiFlex Ethernet Series controllers which do support stand-alone operation and can communicate to a host PC via Ethernet or RS-232.

What type of motion feedback sensors do PMC products support?

PMC motion controllers support single-ended and differential incremental encoders, with input frequencies as high as 20 MHz on our current products.

What type and size of motors can be controlled by PMC motion controllers?

PMC motion controllers can control all types of brush/brushless servo and stepper motors. However, most PMC controllers do not directly drive the motors. Our controllers are designed to send precise low-current command-and-control signals to one or more external servo amplifiers/drives or stepper drives. It is these external amplifiers/drives that power the motors and determine the type and size of motors that can be controlled. The only exception is our DCX-PCI 100 controller, which features on-board power amplifiers that can drive miniature DC servo motors directly.

Does PMC sell motors or power amplifiers/drives?

No. PMC is focused solely on providing best-in-class motion controllers and software. In fact, our OEM customers usually prefer to choose best-in-class components from different vendors to meet their specific performance and budget targets. If you need a single-source solution for all of your motion control components, then our products may not be suitable for you.

Which amplifiers/drives/motors does PMC recommend?

It is difficult to recommend specific brands or models of amplifiers, drives or motors because there are simply too many suitable choices available on the market today. Fortunately, PMC motion controllers provide industry-standard servo and stepper control signals, which means that our controllers will work with any servo or stepper drive that accepts industry-standard (non-proprietary) servo and stepper control signals such Step/Direction, CW/CCW and PWM pulses, as well as traditional +/-10 VDC for analog servo amplifiers.

Therefore, we recommend that you first select suitable electro-mechanical components (stage, motor, encoder) for the requirements of your application and budget, then select a suitable amplifier/drive to power the motors you select (in many cases, your motor supplier will provide or recommend suitable amplifiers/drives for your chosen motors). And finally, you should select a motion controller model that provides the types of control signals your motors/amplifiers/drives will require (Step/Dir, CW/CCW, PWM or +/-10VDC).

Software tools and programming
Do all PMC controllers share the same programming interface?

Yes. To maintain our commitment to cross-product compatibility, all PMC motion controllers share the same native (MCCL) command library. Furthermore, all PMC controllers (except the VME-bus based DCX-VM200 , and DCX-VM300 , which have no direct API support), share the same Motion Control API function libraries, Windows software tools and utilities.

How are PMC controllers programmed?

PMC motion controllers can be programmed by:

  • Writing a program in our native (MCCL) command language that resides and executes entirely on the motion controller.
  • Writing a program in C/C++, Pascal, LabVIEW or Visual Basic, that resides and executes on the host PC and communicates to our controllers using the Motion Control API.
  • Any combination of the two.
Do PMC controllers support non volatile storage of axis parameters?

PMC's ISA-bus and VME-bus controllers can be operated in stand-alone mode, and on-board non-volatile parameter storage is an essential requirement to support operation that is independent of a host PC. On the other hand, PMC's PCI-bus controllers must be plugged into a PC to operate, and for these controllers it is more practical to use the computer's own file system to save and load axis parameters. PMC's Motion Control Application Programming Interface (MCAPI) includes functions that allow the programmer to easily save and load the settings required to initialize the axes of any PMC motion controller.

For testing purposes can I store multiple sets of axis settings (PID and trajectory)?

PMC's Motion Dialog Library functions MCDLG_SaveAxis and MCDLG_RestoreAxis allow the programmer to save and load an unlimited number of servo setting initialization files with an application. Some of our grapical software utilities like the Servo Tuner also allow the user to save and load multiple different sets of PID and Trajectory parameters for each axis.

Do I need to learn a proprietary language to program a PMC Motion Controller?

No. Although our products do feature an on-board proprietary command language (MCCL), most applications with PMC motion controllers are developed using our MCAPI high-level function libraries for C/C++, Pascal and Visual Basic programmers.

Servo Tuning and Operation
What is servo tuning?

A servo is a type of closed-loop feedback circuit. A servo motor works by comparing the motor's actual position (as read from a feedback device - usually a position encoder) to the desired position (as calculated by the motion controller) and by dynamically adjusting the motion controller's command output signal so as to try to minimize the difference (error) between the two. The magnitude of the controller's command output not only depends on the error itself, but is also governed by the settings of the controller's digital filter parameters. PMC motion controllers use a digital filter known as a PID (Proportional, Integral, and Derivative - with velocity and acceleration feeds-forward), and the act of defining the parameters of the PID filter so as to maximize motor performance and accuracy is called Servo Tuning. Without special tools, servo tuning can be a time-consuming trial-and-error process.

What tools does PMC provide to help tune servos?

PMC provides servo tuning tools for its motion controllers: PMC's Motion Integrator includes a graphical plotting and servo tuning program to speed the trial-and-error process of tuning servos.

Can I use more than one PMC motion controller in a computer?

Yes. Each controller is given a unique ID that permits application programs to address multiple controllers. ID nubers are assigned automatically at boot-up via Plug & Play for PCI-bus controllers, and via the controller configuration applet for legacy ISA-bus controllers.

What is the difference between velocity mode motion and a velocity mode amplifier?

Velocity mode motion: Motion in a given direction (positive or negative) at a given velocity with no target position specified. The motor will continue to move until it is commanded to stop.

Velocity mode amplifier: As it relates to motion control, an amplifier is an electronic device that, based on an external command signal (typically from a motion controller), provides current to the windings of a motor, which causes the motor to move. In addition to simply moving a motor based on an external command signal, a Velocity Mode amplifier also incorporates an internal feedback circuit that is used to tightly control the velocity of the motor.

Why and how is a tachometer used to control a servo motor?

A tachometer is a speed measurement device. PMC controllers do not require tachometers for motor control. A tachometer is only used to measure and feed the motor's velocity back to a velocity mode amplifier.

Why do some servo motors oscillate around the target position?

In most cases it is because the characteristics of the load are not compatible with the PID filter settings. Generally, oscillation can be eliminated by:

  • 1) Verifying / optimizing load mechanics
  • 2) Adjusting PID filter parameters

Even if these two steps do not solve the problem, they should provide sufficient information to help determine why the oscillation remains. Often, oscillation is caused by a combination of factors, and a successful resolution may require the user to prioritize between competing application requirements. For example, an X-Y table application that couples the servo motor to a lead screw via a belt-and-pulley system will tend to induce some phase lag into the servo loop. As the belt stretches over time, the axis might begin to oscillate around the target position. It may be possible to reduce the oscillation by reducing the gain of the PID filter, but this might result in reduced position repeatability. Tightening the belt may be a more satisfactory solution.

What is the difference between a velocity mode servo amplifier and a current mode servo amplifier?

A current mode amplifier has an internal feedback loop that uses the measured electrical current going to the motor as feedback. Since motor torque is proportional to the electrical current driving the motor, a current mode amplifier is also known as a torque mode amplifier. Analog current mode (torque mode) amplifiers typically require that the user manually "tune" or calibrate the current loop of the amplifier using trim potentiometers, while following a set procedure provided by the manufacturer.

A velocity mode amplifier has both an internal current loop and a velocity loop. Typically, a tachometer is used to provide velocity feedback to a velocity mode amplifier. In this case, the ±10V analog command output signal from the motion controller is configured as a velocity command signal, and the servo controller uses a Feed Forward term (also known as Velocity Gain) in it's PID filter to calibrate the velocity command to the amplifier. For servo systems that use velocity mode amplifiers, the motion controller's PID loop closes only the position loop, and its influence is secondary to the high-gain velocity loop of the amplifier. Typically, the PID gain values of the servo controller will be very low compared to the gain values used with a torque mode amplifier.

Does the servo loop rate of your controllers depend on the number of axes being controlled?

No. PMC motion controllers are designed to provide the same servo loop performance no matter how many axes are controlled. This helps to ensure consistent, predictable performance between all axes of a given system, and between different systems that use the same motion controller.

How long does it take to execute a command?

The answer actually depends on many variables. But to give users a general idea of the speeds that are achieveable, the question can be divided into two parts 1. How fast does a command execute on-board the controller itself? 2. How fast can a host PC application communicate a command to the controller receive a response?

1. The actual execution time of a command on-board the controller will vary depending on:

  • The type of command being processed
  • The number and types of on-board tasks being executed simultaneously on the controller board at that time
  • The model/speed of the motion controller

For our MultiFlex PCI and DCX PCI series of PCI-bus controllers, the command execution speed is typically on the order of 50-100 microseconds per command. And for our MultiFlex Ethernet controllers, the command execution speed is slightly faster - about 40-70 microseconds per command. This is the speed at which the controller executes commands that it receives from the user.

2. On the other hand, the speed at which a PC-based application can send a command from the host PC and receive a response from the controller additionally depends on:

  • The speed of the host computer
  • The operating system being used on the host computer
  • The type of communication being used (PCI-bus, Ethernet, ISA-bus or serial)

When using Pentium class computers and above, PMC's legacy ISA-bus controllers can achieve up to 1,000-1,500 asynchronous command-response cycles per second (requesting and receiving current axis position for example). Our PCI-bus controllers on the other hand, such as the MultiFlex PCI series, can achieve much higher average query-response rates of 6000-8000 command-response cycles per second, while the MultiFlex Ethernet series controllers can achieve rates of 2000-4000 command-response cycles per second. However in all cases this is the average maximum command execution rate. Non-deterministic operating systems such as Windows can introduce timing uncertainties (latencies) of 10 milliseconds or more, depending on the operating system tasks and services running at the time the command is issued.