1. Launch Lexium MDrive Software Suite.
  2. Launch Lexium MDrive Ethernet Interface.
  3. Select appropriate NIC adapter from the drop down menu and press the “Select” button. For the purpose of this example NIC adapter was used.
  4. Enter the IP address in the upper right corner and press “Connect” to establish communication. For the purpose of this example, the motor IP address was
  5. Press “Read All” to test communication and verify application protocol.
  6. The default application protocol for the Lexium MDrive is MODBUS/TCP. In order to create/save user-defined data types, we must change the application protocol from MODBUS/TCP to Ethernet/IP. Please select Ethernet/IP from the Application Protocol drop-down menu and press the “Set”  button.
  7. Press the “OK” button from the Fieldbus application change message and cycle power to the unit from the AC side of the power supply or press the “Reset Drive”   button to save
    the application protocol change.
  8. Press the “Connect” button in the upper right-hand corner to re-establish communications.
  9. Press the “Read All” button to verify that the application protocol change was successfully saved.
  10. Select E.I.P tab to configure implicit inputs and implicit outputs.
  11. Press the “Get”  button to receive the motors current implicit input and implicit output configuration.
  12. Modify the implicit input and implicit output configuration as necessary. Press “Set” after changes have been made.
  13. To create the user-defined data types that can be imported into RS Logix 5000, select File, then select “Save EIP User-Defined Data Types”
  14. Choose the location to save the implicit output user-defined data type and the implicit input user-defined data type. Please note it is not recommended to change the file name from the default value.
  15. Disconnect and Close the Lexium MDrive Ethernet Interface.


Ethernet/IP Communications examples for RS Logix 5000 to Run on a CompactLogix L23E PLC These two examples are done using version 17 of RS Logix 5000.  Both examples use implicit Messaging as well as Explicit Messaging.  Example 1 is meant for a minimally configured LMDOE42x while the larger one is configured for an LMDCE57x or LMDCE85x.  Their function does not vary when running on an IP-65 drive with M12 circular connectors or an IP-20 drive with pluggable terminal strips.  The logic is designed to show the functions in a way that allows the toggling of a single bit while providing a place in the rung to enter/monitor the data being sent/received.


Allowing resident MCode program scripts to function in protocol EtherNet/IP with Lexium MDrive Ethernet devices that include TCP/IP application version and up, is now available.

Lexium MDrive Ethernet TCP/IP Configuration Utility contains an “E.I.P.” tab with a frame in the lower left-hand corner labeled “I/O Implicit connection test”. Two Boolean entities are described as follows on their function regarding the enabling of resident program operation with EIP.

To allow resident MCode program scripts to run:

  1. Turn off I/O implicit writes.
    • If ‘Halt Motion’ is ON, an ‘EX 1’ will be issued on every valid EIP implicit I/O connection and an ‘Esc’ will be issued on an I/O connection lost.
    • If ‘Halt Motion’ is OFF, then no ‘EX 1’ or ‘Esc’ commands are issued allowing an ‘SU’ label to be used in an MCode script.
  2. Observe the following closely in your MCode script to be executed via EIP:
    • Always use “H 1000” on the first line following all “SU” labels or methods residing @ address “1”.
    • Do not use or save any “PR”, “L” or “EM” mnemonics in resident programs or saved parameter statements.The following additions have been added to the explicit EIP class 0x64
  3. The following additions have been added to the explicit EIP class 0x64:
    Access Class Instance Attrib Data type Mnemonic
    WO 0x64 0x01 0x06 MDRV_STRING EX
    RO 0x64 0x01 0x07 MDRV_BIT BY
    RW  0x64 0x01 0x08 MDRV_I32 V1
    RW 0x64 0x01 0x09 MDRV_I32 V2
    RW 0x64 0x01 0x0A MDRV_I32 V3
    RW 0x64 0x01 0x0B MDRV_I32 V4
    RW  0x64 0x01 0x0C MDRV_I32 V5
    RW 0x64 0x01  0x0D  DRV_I32 V6
    RW 0x64 0x01  0x0E MDRV_I32  V7
    RW 0x64 0x01 0x0F MDRV_I32 V8

    Note variables V1 through V8 need to be defined as user variables in order to be utilized.