ControlFlash 1

Introduction to ControlFlash

ControlFlash is a firmware update utility.   When replacing modules in a ControlLogix system, the program is configured to look for a specific revision of a module.   When you replace a module, you may need to use ControlFlash to update the module’s firmware.    The firmware is similar to an Operating System on board the module.   The firmware instructions the module how to communicate with the processor, and handles on board diagnostics for the module.  When the programmer writes a program, he will usually set a revision that the processor expects to see in a chassis.  The programmer might be taking advantages of features of a particular version of firmware.  These features might not have been present in earlier versions of the firmware.

Warning!!  If the flash is interrupted, or flashed incorrectly, you might render a module useless!!

Finding a modules revision

If the module you are replacing is still able to communicate with the backplane, you might be able to get the revision by using your web browser, or by looking at the properties of the old module in RSLinx.   The best way to find what version the processor expects, though is top open the current ControlLogix file.  In the I/O Configuration, just go to the properties of the module.   The general tab will usually tell you what the firmware revision needs to be.

I/O Configuration

Once you are on the properties screen, you will see the revision the project expects to see.  Notice there are three options for Electronic Keying.

IO Properties

Notice the processor expects version of this module to be 2.006.   2 Major, and 6 minor.   Also, notice the keying is set to “Compatible Keying”.  This means that if we replace the module, it will need to have firmware revision 2.006 or higher.   There are two other options for Electronic Keying:  Disable, meaning any revision of this module will work, and Exact match, meaning the replacement module must be flashed to version 2.006.

In this example, we will flash a 1756-L1 processor.   The procedure is very much the same for most any module you wish to flash.   Be sure to choose the correct module and the correct path for your application.  Before starting, ensure you have communication with the chassis.  Most likely, you will use the Ethernet Devices driver.  You could also use the DF1 Driver, but it’s going to be very slow.   If you have an L7x or higher processor, or another module with USB communication, that would also be a good option.

Flashing a module

First, Open ControlFlash.   This will typically be found under Start | All Programs | Flash programming tools.

Be sure to read all information in each dialog box.   You will need to know the catalog number of the module, the path to the module, and the revision that you are flashing the module to.  Click “Next”

Next, select the catalog number of your module.

ControlFlash Catalog Number

Third, we will select the path to our module.   Here, the path will be through the Ethernet Devices driver.

ControlLogix Select Path

Fourthly, we will choose the revision for the module.   If the revision you need to go to is not in your list, download the firmware from  Here, you will find a matrix of all modules, and all firmware revisions from each module.   After the firmware has been downloaded, run the file to install support for the module, then re-open ControlFlash.

ControlFlash Choose Revision


Now, click Next.  Be sure to read the warning about the ControlFlash utility.   When you are flashing the module, it will be unable to do it’s normal job.  Remember if you are flashing a communication module, all connections through the module (including I/O devices) will be broken.   Chances are that if we are flashing the module, we are down anyway though.

ControlFlash Dangers

Finally, press Finish, and confirm that you want to update the module.    When you are finished, you will get a message that the update was successful.

ControlFlash Success


— Ricky Bryce

Leave a comment

Your email address will not be published. Required fields are marked *

forty six + = 55

One thought on “ControlFlash