Configuring CX-Programmer for Home Use: CXP Files and Licensing

James Nishida12 min read
HMI ProgrammingOmronTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview

CX-Programmer is Omron's native development environment for the CP, CJ, CS, and legacy C-series programmable logic controllers. The application supports ladder diagram (LD), structured text (ST), and instruction list (IL) editing, real-time monitoring, PLC-to-PC upload/download, and I/O table configuration. It is delivered as a component of the larger CX-One / CX-One Lite integrated tool suite, which also bundles CX-Integrator for network configuration, CX-Simulator for offline debugging, CX-Designer for NS/PT HMI screen development, CX-Motion for motion control, CX-Protocol for serial protocol macros, and CX-Drive for inverter and servo commissioning.

Students and contract engineers who completed training on a school workstation or shop-floor PC frequently need to continue the same project on a personal computer. The migration raises three engineering questions that must be answered before any installation attempt: (1) which file types does CX-Programmer own, (2) which license key is required for legal off-site use, and (3) which Omron PLC families are addressable from a home copy. This reference answers all three with field-verified details and provides a reproducible procedure for transferring, opening, and re-saving projects between sites.

Engineering note: CX-Programmer is the only commercial application that reads and writes the native .cxp and .opt project files. There is no public conversion path from CX-Programmer projects to the ZEN smart relay programming environment. Code reuse between the two platforms requires manual rewrite, not file conversion.

Prerequisites and System Requirements

Verify the home workstation meets the following criteria before installing CX-Programmer. The values below reflect the requirements published in the CX-One V4.x and V5.x release notes.

Component Minimum Recommended
Operating system Windows 7 SP1 (32/64-bit) Windows 10 Pro/Enterprise 64-bit
CPU Intel Core 2 Duo, 1.6 GHz Intel Core i5/i7, 2.0 GHz+
RAM 2 GB 8 GB or more
Free disk space 4 GB 10 GB SSD
Display 1024 x 768 XGA 1920 x 1080 Full HD
Communication port USB 1.1, RS-232C USB 2.0+, Ethernet
Runtime layer .NET Framework 4.5.2 .NET Framework 4.8
License media USB license key or activated file USB license key (hardlock)

CX-Programmer does not run on macOS, Linux, or Windows RT. A virtualization layer (VMware, Hyper-V, Parallels) can host a Windows guest on Apple Silicon Macs, but USB license keys must be passed through to the guest, which requires vendor support or a software-based license activation.

Watch point: On Windows 10 22H2 and Windows 11 23H2, you must install the Omron USB driver package before first PLC connect or CX-Programmer will fail to enumerate the serial-to-USB bridge with error 0xE0000203.

Omron PLC File Format Reference

CX-Programmer uses several distinct file types. Each serves a specific role in the project workflow, and recognizing them prevents accidental data loss when copying projects between PCs.

Extension Format Role Openable in CX-Programmer
.cxp Compound binary (project database) Primary project file, current CX-Programmer format Yes
.opt Binary (editor/option settings) Workspace and editor preferences; older tool default Yes (with .cxp)
.cxt Text (UTF-8 or CP932 export) Read-only export for review, archive, or third-party tooling Yes (Import Text Project)
.lsc Binary (ladder logic section cache) Compiled program section; not user-editable Auto-generated
.smp Binary (symbol/comment database) Global and local symbol table plus rung comments Auto-managed
.prj Binary (legacy CV-series project) Pre-CX-Programmer DOS project Yes (with conversion)
.cpe Text (CV/CVM1 export) Read-only export of legacy CV projects Import via File > Open

The .cxp file is the project of record. It contains the PLC model, I/O table, program sections, function block definitions, and (in modern versions) the symbol/comment database. The companion .opt file holds editor layout, recent file list, and per-user preferences; it is regenerated on first save. Older training labs sometimes deliver projects as a .cxt text export. To import a .cxt, use File > Import Text Project and select the target PLC family; CX-Programmer will rebuild the binary database.

Field tip: When copying a project to a USB stick for home use, always copy the entire project folder. The .cxp alone is sufficient to open the project, but missing .opt and .smp files may force CX-Programmer to rebuild them and lose section ordering and user comments.

Supported PLC Families

CX-Programmer V9.x is the final release that supports the legacy CV-series and C200H controllers. CX-One V4.x supports CP1, CP2, CJ1, CJ2, CS1, and the older C-series. The Omron programmable controllers catalog lists the active product families and the firmware versions each CX-One release targets.

Family Typical CPU units CX-One compatibility Notes
CP2E CP2E-Nxx, CP2E-Sxx, CP2E-E14/E20 CX-One V4.61+ Compact, low-cost
CP1E CP1E-Nxx, CP1E-Sxx, CP1E-E10..E40 CX-One V4.20+ Compact, no Ethernet
CP1H CP1H-XA, CP1H-X, CP1H-Y CX-One V3.0+ High-performance compact
CP1L CP1L-M, CP1L-L, CP1L-EM/EL CX-One V3.0+ Compact with built-in Ethernet on EM/EL
CJ2M CJ2M-CPU11..CPU35 CX-One V4.20+ Modular, pulse I/O option boards
CJ2H CJ2H-CPU64..CPU68 CX-One V4.20+ High-speed, FB/ST-capable
CJ1M CJ1M-CPU11..CPU23 CX-One V3.0+ Modular compact
CJ1G/H CJ1G-CPU42..CPU45, CJ1H-CPU65..CPU67 CX-One V2.0+ Modular legacy
CS1G/H CS1G-CPU42..CPU45, CS1H-CPU63..CPU67 CX-One V2.0+ Modular, large I/O count
CS1D CS1D-CPU42S/CPU44S/CPU65S/CPU67S CX-One V3.0+ Redundant CPU
C200H C200H-CPU01..CPU43 CX-Programmer V3.x Legacy; use CX-Programmer V3
CV/CVM1 CV500..CV2000, CVM1-CPU01..CPU21 CX-Programmer V2.x/V3.x Legacy; CX-Programmer V9 only

CP1W expansion I/O such as the CP1W-40EDR (40-point relay output expansion, 24 inputs / 16 outputs, DIN-rail mount) is supported by CX-Programmer via the I/O table editor. Add the unit by right-clicking the rack in the project tree and selecting Expansion Racks > Add Unit. Refer to the Omron programmable logic controller family page for the current expansion module matrix.

License Options for Home and Educational Use

CX-Programmer enforces a license check at launch. There are four license models a home user can pursue; each has a different impact on what the user can do with the tool.

License model Cost Functional scope Notes
Full commercial Paid, USB key Complete functionality, no I/O count or section limit Standard for production engineering
Educational / academic Discounted or free in some regions Complete functionality, watermarked printouts Requires proof of enrollment; issued by Omron regional office
Junior license Low-cost or free (region-specific) Limited to a small number of I/O points and program sections Used in European and Canadian training programs
Demo / trial mode Free, 30 days Full functionality for 30 days; save/print restrictions after expiry Activated by selecting "Demo" on first launch
Engineering note: Omron regional offices (for example, the Toronto office that supplies CX-Programmer CD-ROMs to academic users) issue demo-mode and junior-license media. Contact the local Omron Automation distributor with proof of enrollment to obtain either an academic license or a time-limited demo activation.

A USB hardlock is the license medium that survives operating-system reinstallation. Software-based activations tied to the host's MAC address or hard-disk serial number are also offered, but they cannot be transferred between machines without first deregistering.

Installation Procedure

Follow the procedure below to install CX-Programmer on a home workstation. Steps assume CX-One V4.x media and a Windows 10 64-bit host.

  1. Insert the CX-One installation DVD or mount the ISO. If the autorun does not start, run Setup.exe from the root of the media as Administrator.
  2. Accept the license agreement and enter the product key from the box. The key is case-sensitive and must match the regional SKU.
  3. Select Custom Install. Enable at minimum: CX-Programmer, CX-Server, USB Serial Driver, and FB Library. Optional: CX-Simulator for offline testing, CX-Integrator for routing, and CX-Designer if NS/PT HMI screens are part of the curriculum.
  4. Choose the install location. The default C:\Program Files (x86)\OMRON\CX-One is recommended; do not install to a network share or an external USB drive.
  5. Insert the USB license key when prompted. The installer writes a registration record to C:\ProgramData\OMRON\CX-One\License\License.dat.
  6. Reboot the workstation. CX-Programmer requires a clean start to register the CX-Server communications service.
  7. Launch CX-Programmer. On the first start, the activation dialog appears. Select Use License Key for a hardlock, Use Demo Mode for the 30-day trial, or Use Software Activation for an academic key.
  8. Verify the activation status via Help > About CX-Programmer > License. The dialog should show the license model, expiration date, and bound PLC family.

Project Migration Workflow

Transferring a project from a school workstation to a home PC follows a documented sequence. Skipping steps leads to corrupted symbols or stripped I/O tables.

  1. On the school PC, open the project in CX-Programmer.
  2. Select File > Save As. Choose CX-Programmer Project (Binary) and confirm the .cxp extension. Do not use Save As Text unless the receiving system must import via File > Import Text Project.
  3. From the project folder, copy the .cxp file plus its companion .opt, .smp, and .lsc files. Verify total size matches the on-disk project.
  4. Copy the folder to a USB stick formatted as NTFS or exFAT. FAT32 fails for projects larger than 4 GB.
  5. On the home PC, paste the project folder under Documents\CX-Programmer Projects\. Avoid the Desktop or Downloads folders - the long-path and read-only attribute issues there break CX-Programmer's project lock files.
  6. Launch CX-Programmer at home, then File > Open and select the .cxp.
  7. If the home PC runs a newer CX-One release, the Project Version Conversion wizard appears. Review the listed CPU type, I/O table, and FB changes. Accept to convert; decline to abort.
  8. Compile the project with Program > Compile All. Resolve any warnings before online connection.
Watch point: Projects authored in CX-Programmer V7 cannot be opened directly in CX-One V4 if they use CV-series function blocks. Convert the project to CP/CJ-compatible function blocks first, or install CX-Programmer V9 alongside the V4 release for legacy work.

Online Connection and Transfer

Connecting CX-Programmer to a CP, CJ, or CS PLC from home uses one of the standard Omron toolbus protocols. The default port and cable choices for each family are listed below.

Family Default port Cable / option board Default IP / address
CP1E / CP1L-L USB-B Standard USB-A to USB-B (printer cable) No IP (serial toolbus)
CP1L-EM/EL, CP1H Ethernet (built-in) CAT5e patch to switch 192.168.250.1 (default)
CJ2M / CJ2H Ethernet (built-in port) CAT5e patch to switch 192.168.250.1
CJ1M / CJ1G-H RS-232C on CPU XW2Z-200S-CV or CS1W-CN226 USB No IP
CS1G/H/D RS-232C port on CPU XW2Z-200S-CV or CS1W-CN226 No IP
CS1 with ETN21 Ethernet (CS1W-ETN21) CAT5e patch 192.168.250.1

To connect, open the project, press Ctrl+Shift+T or click Online in the toolbar, then select the network type. For Ethernet, set the destination IP to the PLC's address. For serial toolbus over USB, select CX-Server > USB as the driver and choose the virtual COM port assigned to the Omron USB driver.

Once connected, use PLC > Transfer > To PLC to download the project, or PLC > Transfer > From PLC to upload the live program. Always back up the PLC program with To File before a To PLC operation. After transfer, switch the PLC to Run or Monitor mode using the toolbar dropdown.

ZEN Smart Relay Considerations

Omron's ZEN smart relay is a separate product line with its own programming environment, the ZEN Support Software (also marketed as ZEN-SOFT01-V4). ZEN projects use the .zpd file extension and ladder logic with a stripped-down instruction set tailored to smart-relay applications. There is no bidirectional converter between .cxp and .zpd projects.

Engineering note: The ZEN smart relay product line reached end-of-life in several regions. Newer alternatives are the CP2E series with relay output and the ZEN-V2 firmware. If a school assignment requires ZEN, install the dedicated ZEN Support Software; do not attempt to use CX-Programmer for ZEN targets.

If a course requires both CX-Programmer and ZEN work, install both packages side by side. They do not conflict at the registry or service level, but only one may be active at a time if a single USB license key is shared between them.

Verification and Troubleshooting

After installing CX-Programmer and opening a project, run the verification checks below before connecting to hardware.

Check How to verify Expected result Common fault
License activation Help > About > License Shows model, expiration, family "No license" indicates missing hardlock or expired demo
CPU type match Project tree > PLC root node CPU matches the target hardware Mismatch prevents online connect with error 0x0001
Compile clean Program > Compile All No errors, no warnings Syntax errors in ST sections break transfer
I/O table Double-click I/O Table node Rack layout matches physical hardware Extra slots in CX-Programmer block transfer
Communication path Online > Select Network and Test "Connected" status within 3 s Timeout indicates wrong IP, wrong cable, or firewall
PLC mode Toolbar dropdown "Program" for download, "Run" for live Download while in Run mode prompts confirmation but completes

The following troubleshooting matrix addresses the most frequent home-use failures:

Symptom Likely cause Resolution
"CX-Server not found" at launch CX-Server service stopped or never installed Re-run CX-One installer with Modify and enable CX-Server
USB enumeration fails, error 0xE0000203 USB driver signature not installed Run the bundled USBDriver\setup.exe as Administrator
Cannot open .cxp from school Newer CX-One release cannot read older .cxp Use File > Import Text Project or upgrade the school PC first
Compile error on SET/RESET with BOL ST function block syntax mismatch Re-import function blocks from the FB library
Ethernet connect times out PLC IP and host IP not in same subnet Set host IP to 192.168.250.2/24 for default PLC 192.168.250.1/24
Transfer fails with 0x0400 PLC in Run mode with write-protect DIP set Move the PLC's write-protect switch to OFF
Symbols appear as "???" in monitor Symbol table not downloaded Check Transfer Comments in the Transfer dialog

Frequently Asked Questions

Can I open .cxp files without CX-Programmer?

No. The .cxp binary format is a proprietary compound document owned by Omron. Only CX-Programmer (and the legacy CX-Programmer V2/V3 for old CV-series projects) can read or write the file. Text exports (.cxt) can be opened in any text editor, but the file is not editable in a meaningful way without CX-Programmer to re-import it.

What is the difference between .cxp and .opt files?

The .cxp file is the project of record and contains the program, I/O table, function blocks, and symbol database. The .opt file stores editor options, recent file list, window layout, and per-user preferences. CX-Programmer always opens the .cxp; the .opt is regenerated automatically the first time a project is saved by a new user.

Can I convert a CX-Programmer project to a ZEN smart relay program?

No automatic converter exists. ZEN projects use a different instruction set, different I/O model, and the .zpd file extension. Code reuse between the two platforms requires a manual rewrite. For new designs, replace the ZEN with a CP2E-Nxx or CP1E-Nxx and keep the project in CX-Programmer.

Does CX-Programmer demo mode allow saving and downloading to a PLC?

The 30-day demo activation is fully functional: programs can be created, saved, compiled, and downloaded to a CP, CJ, or CS PLC. After 30 days the editor still opens, but compile, transfer, and print operations are disabled until a paid or academic license is registered.

Which Omron PLC families are supported by CX-Programmer V9.x?

CX-Programmer V9.x is the final release line for the CV-series and C200H controllers. CX-One V4.x covers the CP1, CP2, CJ1, CJ2, CS1, and the CQM1/CQM1H legacy lines. Newer families such as NX/NJ require Sysmac Studio rather than CX-Programmer. Refer to the Omron programmable controllers catalog for the current product matrix.

Back to blog