In Today’s article I walk you through how to Message data from a MicroLogix 1400 to a MicroLogix 1100 over Ethernet using the MSG instruction.

Note: In this example I have a MicroLogix 1400 at IP Address, and a MicroLogix 1100 at IP Address Both have the same subnet address, and are attached to the same network via an Ethernet switch. Each program also had the N7 file expanded to 10 words, and the MicroLogix program has a free running Timer in Rung 0 of Program File 2 as seen below:

Step 1) My first step is to add a new Rung to Program File 2 of my MicroLogix 1400 program. Then I add a MSG instruction to that rung:

Step 2) Next, I assign a MSG File to the MSG Instruction. In this example I chose MG10:100:

Step 3) Now in the MSG Setup Screen I set the Channel the MSG instruction will use to 1 since that is the Ethernet channel on the MicroLogix 1400:

Step 4) And since I’m writing data from this MicroLogix 1400 to a MicroLogix 1100, I change the Communication Command to 500CPU Write:

Step 5) Next I need to set the Data Table Address in the MicroLogix 1400 that I’ll be messaging to my target MicroLogix 1100 controller. In this example I chose N7:0:

Step 6) Next I need to set how many “Elements” I’d like to send, starting from the previously chosen Data Table Address. In this example I chose a size of 3 words.

Step 7) Now under Target Device I set the Data Table Address I want to write the data to in the target PLC, which in this example is also N7:0:

Note: The Target Device’s Data Table Address does not have to be the same address as the Source Address.

 Step 8) The final setting I need to fill in on this tab that is the Routing Information File, which for this example I use file RI11:0:

Step 9) Now I navigate to the MultiHop tab:

Step 10) Where I fill in the IP address of the target MicroLogix 1100 in the To Address field. Then I close the Message Setup Screen:

 Step 11) Back in Ladder File 2, I place an XIC in front of the MSG instruction. For the XIC instruction’s address I use the Done Bit of my existing two second free running Timer. This will trigger the message every two seconds, a slow enough period that I’d be able to see the resulting status of each message attempt before the next message attempt is made:

Note: Since A-B Programmable Controllers have limited buffer space for MSG instructions, it’s typically not recommended to have multiple unconditional MSG instructions in your program. Instead, consider interlocking messages or triggering them based on timers, to insure you never overfill your controller’s message buffer. Doing so can also eliminate unwanted network traffic that unconditional / continuous Messages can generate.

Step 12) With my program now complete, I download it to my MicroLogix 1400 and run it.

Step 13) Now any value I enter into N7:0, 1, and 2 in the MicroLogix 1400 is messaged to, and shows up in N7:0, 1, and 2 in the MicroLogix 1100 after a short delay:

To watch a video demonstration of the above, check out Episode 44 of The Automation Minute Season 4 below:

If you found this article helpful, please share it with your colleagues on LinkedIn, Facebook, Twitter or Goggle Plus!

And if you know anyone who would benefit from Allen-Bradley PLC, HMI, or SCADA training, please let them know about my affordable courses over at TheAutomation School.

You can also share your own thoughts and opinions on this subject by clicking on the “post a comment or question” link below.

Until next time, Peace ✌️ 

Shawn M Tierney
Technology Enthusiast & Content Creator

Have a question? Join my community of automation professionals and take part in the discussion! You'll also find my PLC, HMI, and SCADA courses at

If you found this content helpful, consider buying me a coffee here.

shawntierney avatar



    • The Instruction used required a file of the type RI, so I created an RI file using file 11…

      PS – if you need to know details about the RI file type, select the instruction in your program and press F1 to open up the help file… our search the help file for RI or Routing Information.


      Join my free community to follow along! You can also become a member and support our work at:

      • Mr, I have two plcs Migrologix 1100 B.

        I need to establish communication between them with MSG. The communication will be between switches, no routing.
        What will be my IR?

        • Pablo,

          The routing file (RI) you select is like the message file (MG) you select – it is used to hold information you type into the Message block (as shown in step 10.)

          Need more help than that? Buy me a coffee at I’ll answer all your questions there.



Please enter your comment!
Please enter your name here