6.2 Software
Software Differences
This page is currently under development. As the release of the CMD-2ED-SA gets closer this page will be updated with the most current information.
The current goal is for the CMD-2ED-SA to be fully backward compatible with the PMX-2ED-SA.
A new PMX DLL is available, enabling your existing PMX software and command set to run on CMD hardware. In most cases, no application rewrite is required.
To access the new features available with the CMD-2ED-SA controllers, you will need to switch to the CMD DLL and software, which is more powerful and more flexible.
Choose your communication path
How much software change you need depends on how your application talks to the controller.
|
How your application communicates |
Command set on the CMD-2ED-SA |
What you need to do |
|
USB, through PerformaxCom.dll and SiUSBXp.dll |
PMX-2ED-SA command set, 100% backward compatible |
Install the CMD-2ED-SA compatible PerformaxCom.dll and SiUSBXp.dll. No change to your application code. |
|
USB, through CMDHidApi.dll (32-bit) or CMDHidApi64.dll (64-bit) |
Full Commander command set |
Use the Commander commands. See the differences in this section. |
|
RS-485 |
Full Commander command set |
Update your commands to the Commander command set. See the differences in this section. |
|
Note: The backward-compatible command set is available only over USB through PerformaxCom.dll and SiUSBXp.dll. RS-485 applications must be updated to the Commander command set. |
Standalone programs must be recompiled for the CMD-2ED-SA whichever path you use; see Standalone programs below.
The full Commander command set is described in the Commander command set reference.
USB driver and DLLs
|
Item |
PMX-2ED-SA |
CMD-2ED-SA |
|
USB interface |
USBXpress, Arcus/Performax USB driver |
USB HID compatible; no driver signature required (per the CMD-2ED-SA manual). Confirm whether a Windows driver is installed with the Commander DLLs. |
|
Backward-compatible DLLs |
PerformaxCom.dll, SiUSBXp.dll |
PerformaxCom.dll and SiUSBXp.dll, CMD-2ED-SA compatible versions (version numbers and download location to be added) |
|
Commander DLLs |
Not available |
CMDHidApi.dll (32-bit Windows), CMDHidApi64.dll (64-bit Windows) |
|
Firmware update |
Bootloader |
In-field update over USB with the FWUP command |
Windows GUI
The PMX-2ED-SA Windows GUI (version 116) looks for "2ED" in the device name and uses the PMX-2ED-SA standalone compiler. For the CMD-2ED-SA, use the Commander Control Software or the NPA Terminal Utility. Confirm the recommended GUI and whether the PMX-2ED-SA GUI works with the compatible DLLs.
Command set differences (Commander command set)
The tables below apply when you use the Commander command set (RS-485, or USB through CMDHidApi.dll). Only commands documented in the PMX-2ED-SA manual are listed. Commands not listed work the same way on both products.
General
|
Topic |
PMX-2ED-SA |
CMD-2ED-SA |
|
Command case |
Upper case only |
Not case sensitive; spaces are ignored |
|
Error replies |
Short forms, for example ?Moving |
?Error forms, for example ?Error Moving, ?Error +Limit |
|
Device name / ID |
DN reads or sets 2ED00 to 2ED99 |
DN is not supported. Use ID (00 to 99) |
|
ID reply |
Performax-2ED-SA |
CMD-2CR-xx (xx = device ID) |
|
Default RS-485 address |
@00 |
@01 |
|
Setting the RS-485 address |
DN=, then STORE and power cycle |
ID=nn (confirm whether STORE and a power cycle are needed) |
Motion parameters
|
Command |
PMX-2ED-SA |
CMD-2ED-SA |
|
ACC |
Acceleration time in ms. Default 300 |
Default 100. Can also be set per axis (ACCX, ACCY) |
|
DEC |
Used only when EDEC=1. Default 300 |
Always used. Default 100. Must not be more than 2 × ACC |
|
EDEC |
Selects separate DEC |
Not supported. DEC is always separate |
|
HSPD |
Default 1000 pps |
Default 10000 pps. Can be set per axis. Must be ≥ LSPD |
|
LSPD |
Default 100 pps |
Default 100 pps. Must be ≤ HSPD |
|
SCV |
S-curve on/off for all axes. Default off |
Set per axis (SCVX, SCVY). Default on |
|
SSPDM |
0 to 9 |
0 to 7 |
|
SSPD |
Not allowed with S-curve on |
Allowed with S-curve on; error reply ?SSPD Error |
Moves and homing
|
Command |
PMX-2ED-SA |
CMD-2ED-SA |
|
I[X]:[Y] |
Immediate linear interpolated move |
Buffered move (requires buffer mode, BO). For an immediate interpolated move, send X and Y on one line, for example X1000Y500 |
|
T |
On-the-fly target change |
Same function; error reply is ?Override Failed |
|
HX+/-, HY+/- |
Home using the home input |
H[axis][+/-][mode], 13 homing modes. Mode 0 is home input at high speed |
|
HLX+/-, HLY+/- |
Home at high then low speed |
H[axis][+/-]1 |
|
LX+/-, LY+/- |
Home to the limit input |
H[axis][+/-]6 |
|
ZHX+/-, ZHY+/- |
Home input then Z index |
H[axis][+/-]2 or 3 |
|
ZX+/-, ZY+/- |
Home to Z index only |
Z now moves a set number of index pulses (ZCNT). Use the H command homing mode that matches your sequence |
|
HCA, LCA, RZ |
Position clear options for homing |
Not supported |
Status, I/O and other commands
|
Command |
PMX-2ED-SA |
CMD-2ED-SA |
|
MST |
MST with no axis returns X status |
An axis is required (MSTX, MSTY). Bit layout changed; see the table below |
|
POL |
Polarity bit layout as in the PMX manual |
Bit layout changed; see the Commander command set |
|
EO, EOBOOT |
2 driver enable bits (0 to 3) |
4 bits (0 to 15). Existing values still work |
|
AI1, AI2 |
Reply 0 to 5000 (mV) |
Reply 0 to 3300 for the 0 to 5 V input range (confirm scaling) |
|
DB |
Out-of-range value is set to 1 (9600) |
Out-of-range value returns an error |
|
TOC |
Communication time-out |
Not supported |
|
JO, JF |
Joystick on and off |
Use JENA |
|
JV, JL |
Joystick speed and limit tables |
Use JSPD, JMAX, JMIN, JTOL, JDEL and JLIM |
|
ABORT |
Stops all axes and turns the joystick off |
Stops all axes and disables the motion buffer |
MST status bits
|
Bit |
PMX-2ED-SA |
CMD-2ED-SA |
|
0 |
Accelerating |
Accelerating |
|
1 |
Decelerating |
Decelerating |
|
2 |
Constant speed |
Constant speed |
|
3 |
Not used |
Alarm input |
|
4 |
+Limit input |
+Limit input |
|
5 |
-Limit input |
-Limit input |
|
6 |
Home input |
Home input |
|
7 |
+Limit error |
Slowdown input |
|
8 |
-Limit error |
+Limit error |
|
9 |
Z index |
-Limit error |
|
10 |
Joystick |
Alarm error |
|
11 |
Communication time-out |
In position |
|
12 |
- |
Deviation counter clear |
|
13 |
- |
Z index |
|
14 |
- |
External start |
|
15 |
- |
Emergency stop |
|
16 to 20 |
- |
Additional stop and wait states |
Standalone programs
Compiled PMX-2ED-SA standalone programs do not run on the CMD-2ED-SA. Recompile your program source for the CMD-2ED-SA and download it again. While doing so, update any commands listed in this section.
|
Item |
PMX-2ED-SA |
CMD-2ED-SA |
|
Number of programs |
2 |
4 (PRG 0 to 3) |
|
Program memory |
1,275 lines |
Confirm maximum line count (query with SAMAX) |
|
Subroutines |
32 |
32 |
|
Variables |
V0 to V63; V32 to V63 kept at power-down |
V0 to V99; V50 to V99 kept at power-down |
|
Run at power-up |
SLOAD bit mask |
SLOAD[n]=1 for each program |
|
Run control |
SR |
SR or SACTRL |
|
Homing commands |
HOME, LHOME, HLHOME, ZHOME, ZOME |
HOME[axis][+/-][mode] |
Power-up defaults
|
Parameter |
PMX-2ED-SA |
CMD-2ED-SA |
|
HSPD |
1000 pps |
10000 pps |
|
LSPD |
100 pps |
100 pps |
|
ACC / DEC |
300 ms / 300 ms (DEC follows ACC) |
100 ms / 100 ms (independent) |
|
Speed profile |
Trapezoidal |
S-curve |
|
RS-485 address |
@00 |
@01 |
|
Baud rate |
9600 bps |
9600 bps |
|
Note: If your application relies on the PMX-2ED-SA power-up defaults, set HSPD, LSPD, ACC, DEC and the S-curve setting explicitly after power-up, or store your values with STORE. |
New features
These features are new on the CMD-2ED-SA and are available through the Commander command set:
- Soft limits
- 13 homing modes
- Emergency stop and external start and stop inputs
- Position latch (pins 20 and 24)
- Motion buffer
- Software-selectable microstepping up to 1/128
- In-field firmware update
For full details of the CMD-2ED-SA hardware, see the CMD-2ED-SA manual.
Last updated Friday, October 16, 2026