Rockwell Automation ControlFLASH User Manual

User Manual

ControlFLASH User Manual

Original Instructions
ControlFLASH User Manual
personal injury or death, property damage, or economic loss.
Attentions help you identify a hazard, avoid a hazard, and recognize the consequence.
IMPORTANT
SHOCK HAZARD: Labels may be on or inside the equipment, for example, a drive or motor, to alert people that dangerous voltage may be present.
temperatures.
for Personal Protective Equipment (PPE).

Important User Information

Read this document and the documents listed in the additional resources section about installation, configuration, and operation of this equipment before you install, configure, operate, or maintain this product. Users are required to familiarize themselves with installation and wiring instructions in addition to requirements of all applicable codes, laws, and standards.
Activities including installation, adjustments, putting into service, use, assembly, disassembly, and maintenance are required to be carried out by suitably trained personnel in accordance with applicable code of practice.
If this equipment is used in a manner not specified by the manufacturer, the protection provided by the equipment may be impaired.
In no event will Rockwell Automation, Inc. be responsible or liable for indirect or consequential damages resulting from the use or application of this equipment.
The examples and diagrams in this manual are included solely for illustrative purposes. Because of the many variables and requirements associated with any particular installation, Rockwell Automation, Inc. cannot assume responsibility or liability for actual use based on the examples and diagrams.
No patent liability is assumed by Rockwell Automation, Inc. with respect to use of information, circuits, equipment, or software described in this manual.
Reproduction of the contents of this manual, in whole or in part, without written permission of Rockwell Automation, Inc., is prohibited.
Throughout this manual, when necessary, we use notes to make you aware of safety considerations.
WARNING: Identifies information about practices or circumstances that can cause an explosion in a hazardous environment, which may lead to
ATTENTION: Identifies information about practices or circumstances that can lead to personal injury or death, property damage, or economic loss.
Identifies information that is critical for successful application and understanding of the product.
Labels may also be on or inside the equipment to provide specific precautions.
BURN HAZARD: Labels may be on or inside the equipment, for example, a drive or motor, to alert people that surfaces may reach dangerous
ARC FLASH HAZARD: Labels may be on or inside the equipment, for example, a motor control center, to alert people to potential Arc Flash. Arc Flash
will cause severe injury or death. Wear proper Personal Protective Equipment (PPE). Follow ALL Regulatory requirements for safe work practices and
Preface
ControlFLASH Firmware Kit
Install ControlFLASH
Configure ControlFLASH policy
Upgrade firmware with Use the command line

Table of Contents

Purpose of this manual ............................................................................... 5
New features and benefits ......................................................................... 5
Who should use this manual ...................................................................... 5
Legal Notices ................................................................................................ 5
Chapter 1
System requirements ................................................................................. 7
Before you begin ......................................................................................... 8
Chapter 2
Introduction ................................................................................................ 9
About firmware kits .............................................................................. 9
Install ControlFLASH through installation package ...............................10
Locate and download the installation package ..................................10
Install ControlFLASH .......................................................................... 11
Step 1: Launch the Setup wizard and start the installation ........ 11
Step 2: Read and accept license agreements................................ 12
Step 3: Start the installation .......................................................... 13
Step 4: Finish the installation........................................................ 13
Install ControlFLASH with command-line parameters .......................... 14
Perform silent or unattended installation ......................................... 14
Command-line parameters for silent or unattended installation ... 15
Install ControlFLASH through firmware ................................................. 17
Locate and download firmware kits ................................................... 17
Install ControlFLASH .......................................................................... 18
ControlFLASH
Chapter 3
Introduction ............................................................................................... 21
Configure ControlFLASH policy in FactoryTalk policies ........................ 21
Chapter 4
Introduction .............................................................................................. 25
Prepare for firmware upgrades ............................................................... 25
Prepare the device for upgrades .............................................................. 25
Use ControlFLASH to upgrade firmware ................................................ 25
Access help .................................................................................................. 31
Chapter 5
Introduction ............................................................................................... 33
Command line mode ................................................................................. 33
Table of Contents
ControlFLASH and FactoryTalk AssetCentre interaction
ControlFLASH error codes
Create a custom interface to
Command line syntax .......................................................................... 34
Script files ............................................................................................. 36
Flash multiple devices .......................................................................... 37
Example: script file ............................................................................. 38
Example: script file for instance number ........................................... 39
Example: script file for NVS file updating ......................................... 39
Example: script file for DMK file updating ........................................ 39
Troubleshooting ........................................................................................ 40
Error Log .............................................................................................. 40
Aborted script file ................................................................................. 41
Stop a command line or script application ........................................ 41
Chapter 6
Introduction ............................................................................................... 43
Information monitoring ........................................................................... 43
Event Log .............................................................................................. 43
Audit Log ............................................................................................... 43
FactoryTalk AssetCentre ............................................................................ 43
Logging the device update status .......................................................44
Logging the exit of ControlFLASH ..................................................... 45
process firmware downloads
Appendix A
Introduction ............................................................................................... 47
Appendix B
Introduction .............................................................................................. 49
Example automated flash tool ................................................................. 49
How a custom upgrade tool works ..................................................... 51
Example Visual Basic .NET code ........................................................ 52

Preface

Purpose of this manual

New features and benefits

Who should use this manual

Legal Notices

This manual describes how to use the ControlFLASH™ software to upgrade
device firmware.
There are no new or enhanced features in ControlFLASH version 15.04.00.
You should use this manual if you need to maintain firmware revisions. Refer
to your product release notes to determine whether it support firmware updates via ControlFLASH.
You should also have the following knowledge:
A basic understanding of networking concepts.
A basic familiarity of RSLinx software.
Rockwell Automation publishes legal notices, such as privacy policies, license
agreements, trademark disclosures, and other terms and conditions on the
Legal Notices
End User License Agreement (EULA)
page of the Rockwell Automation website.
You can view the Rockwell Automation End User License Agreement (EULA) by opening the license.rtf file located in your product's install folder on your hard drive.
The default location of this file is:
C:\Program Files (x86)\Common Files\Rockwell\license.rtf.
Open Source Software Licenses
The software included in this product contains copyrighted software that is licensed under one or more open source licenses.
You can view a full list of all open source software used in this product and their corresponding licenses by opening the index.html file located your product's OPENSOURCE folder on your hard drive.
The default location of this file is:
C:\Program Files (x86)\Common Files\ControlFLASH\ControlFLASH Release
Notes\OPENSOURCE\index.htm
Y
ou may obtain Corresponding Source code for open source packages included in this product from their respective project web site(s). Alternatively, you may obtain complete Corresponding Source code by contacting Rockwell Automation via the Contact form on the Rockwell Automation website:
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 5
http://www.rockwellautomation.com/global/about-
Preface
us/contact/contact.page. Please include "Open Source" as part of the request
text.

System requirements

Chapter 1
ControlFLASH Firmware Kit
This chapter helps you get started with using the ControlFLASH Firmware Kit with your application.
ControlFLASH works within the system requirements of all Rockwell
Automation® software products. For the latest information regarding software platform support, refer to Rockwell Automation Product Compatibility and Download Center at
http://compatibility.rockwellautomation.com/Pages/home.aspx
Hardware requirements
.
An Intel® Core 2 Duo processor running at 2.8 GHz or faster or another processor with equivalent specifications
4 GB or more memory RAM
At least 16GB of available hard drive space
Software requirements
Operating systems
ControlFLASH is tested on operating systems installed from original Microsoft® media only. ControlFLASH runs on either the 32-bit or 64-bit versions of the following Windows® or Windows Server operating systems:
Windows 10
Windows 10 Enterprise LTSC 2019
Windows Server® 2019
Windows Server 2012 R2
Windows Server 2012
Windows Server 2016
Preferred operating systems
Preferred operating systems are prioritized for support, testing, and post­release patch qualifications. These operating systems are preferred for this release:
Windows 10 Professional (64-bit)
Windows Server 2016 Standard (64-bit)
Chapter 1 ControlFLASH Firmware Kit

Before you begin

Windows Server 2012 R2 Standard (64-bit)
Rockwell Automation Test Environment
Rockwell Automation tests software products under a standard configuration of operating systems and antivirus software. For additional information see the Knowledgebase Document ID:
Antivirus Software.
PN24 - Rockwell Software Products and
Additional software
One of the following communications software packages must be installed before running ControlFLASH:
RSLinx® Classic Lite
RSLinx Classic
RSLinx Enterprise version 6.20 or FactoryTalk® Linx™ 6.20
Supported browsers
The following web browsers have been tested and are supported for use with this release:
Google® Chrome™ browser
Internet Explorer® 11
Mozilla® Firefox®
Before you start using ControlFLASH Firmware Kit, you need to:
Verify that you have a version of RSLinx software installed.
Configure your configuration drivers in the RSLinx software.
Verify your communication drivers operate correctly.
Important:
ones you see here.

Introduction

About firmware kits
Chapter 2
Install ControlFLASH
ControlFLASH is installed when you install Studio 5000 Logix Designer® version 28.00 or later.
You can download the standalone installation package from
Rockwell Automation Product Compatibility and Download Center (PCDC). See Install ControlFLASH through installation package on page 10.
When you download an older version of firmware kits from Rockwell Automation PCDC, ControlFLASH version 12.00 or earlier is also included. See Install ControlFLASH through firmware on page 17
The illustrations shown in this manual are samples. Because your system configurations or the firmware kits are different, the dialog boxes you see when running the tool may be different from the
.
In ControlFLASH version 12.00 and earlier, each firmware kit is delivered as
an MSI install. It always includes the ControlFLASH application, the firmware NVS and BIN files. You always need to run the MSI file to install ControlFLASH and the included firmware kits on your computer.
Starting from ControlFLASH version 13.00, each new firmware kit is delivered as an individual Device Management Kit (DMK) file. The ControlFLASH tool is separate and needs to be installed only once.
In ControlFLASH version 15.00, family DMK and bundle DMK files are supported. A family DMK is a DMK file that contains multiple catalogs of the same revision and controller family. A bundle DMK is a DMK file that contains regular DMKs or family DMKs or both kinds of firmware kits.
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 9
Verification of DMK's publisher
The certificate of Rockwell Automation has changed since November 2019.
The new DMK is either:
Signed by Rockwell Automation with a new certificate.
Signed by a third party company.
If the new DMK's publisher is not in your system's trusted publisher list, you can log in as an administrator to choose to trust the publisher.
Chapter 2 Install ControlFLASH
Install ControlFLASH Locate and download the
through installation package
A DMK is a single, digitally signed file that contains the firmware binaries. ControlFLASH authenticates DMK's origin and validates its contents, providing enhanced protection against malicious threats. You can just download and use it, no need to install or unzip it. The file is named for easy identification and management, for example, 1756-L73_28.011.dmk. For more information, see ControlFLASH Help.
To install ControlFLASH through the installation package, complete the
following operations:
Locate and download the installation package on page 10
Install ControlFLASH on page 11
Follow these instructions below:
installation package
1. From Internet Explorer, go to the PCDC website:
http://compatibility.rockwellautomation.com/Pages/home.aspx
To use this site, you must register and log in.
2. In the Downloads area, click Find Downloads.
3. In the Find Downloads page, enter ControlFLASH and click Search.
4. Select the row of ControlFLASH and click Downloads to continue.
Tip:
If the installation does not start automatically, double-click D:\Setup.exe,
Install ControlFLASH
Step 1: Launch the Setup
Chapter 2 Install ControlFLASH
5. In this page, click the Show downloads icon to show the available downloads.
6. In the Available Downloads page, select ControlFLASH and click Downloads.
wizard and start the installation
7. Follow instructions on the web to download the installation package.
Starting from ControlFLASH version 13.00, when the installation completes, FactoryTalk® Security is enabled by default. When launched, ControlFLASH
logs on to the FactoryTalk Network Directory.
To install ControlFLASH, follow the steps below:
Step 1: Launch the Setup wizard and start the installation on page 11
Step 2: Read and accept license agreements on page 12
Step 3: Start the installation on page 13
Step 4: Finish the installation on page 13
1. Close all open programs.
2. Place the ControlFLASH installation DVD in the computer's DVD drive, or double click Setup.exe within the installation package.
where D:\ is the drive containing the DVD.
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 11
Chapter 2 Install ControlFLASH
Step 2: Read and accept
3. If Microsoft .NET Framework 4.0 or later is not installed on your computer, the Microsoft .NET Framework Setup dialog box shows. Click Install.
4. (optional) On the ControlFLASH Setup page, select a language to be shown during the installation process. By default, your system language is selected.
5. To install the software using the recommended installation location, click Install now and skip to
Step 2: Read and accept license
agreements on page 12.
6. To change the installation location, click Customize.
7. On the Customize page, select the location for the software.
8. Click Install.
license agreements
End-user license agreements (EULA) spell out your rights and responsibilities. Depending on the components being installed, there may be more than one license agreement on this page. The individual license
agreements are listed above the text box.
Tip:
Step 3: Start the installation
Step 4: Finish the
Chapter 2 Install ControlFLASH
Some software products may be delivered or made available only after you agree to the terms and conditions of each of the license agreements.
installation
1. On the End User License Agreements page, select each agreement and
read the agreement carefully.
2. When all license agreements have been read, click Accept All.
If you click Decline, you will return to the ControlFLASH Setup page.
After accepting the license agreements, the Setup wizard automatically installs the software and does not require any input.
The installation completes.
To view the installation details, click Installation Summary.
To receive the latest product updates and patch notification, click
Register for updates and subscribe.
Chapter 2 Install ControlFLASH
Perform silent or
To install the latest version of Adobe® Acrobat® Reader®, click
Download it free and follow the on-screen instructions.

Install ControlFLASH with command-line parameters

unattended installation
Click Close to exit the Setup wizard.
ControlFLASH supports silent or unattended installation using command­line parameters. Silent installation runs in a quiet mode without any user interface, while unattended installation runs in a quiet simple mode and shows progress through the UI. Unattended installation does not accept any
input, but still shows error or restart messages.
Use command-line parameters to perform a silent or unattended installation of ControlFLASH.
The command-line installation requires the administrator permission. The
steps may vary slightly depending on your operating system.
To perform silent or unattended installation:
1. Close all Windows programs.
2. Open the Command Prompt window.
3. In the Command Prompt window, navigate to D:, where D: is the drive containing the ControlFLASH installation package.
14 Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020
In this example, type D: and press Enter.
Tip:
Parameter
Description
/?
Displays the usage options for installation parameters.
This parameter is required if /Q or /Record is not specified.
This parameter is required for /Q or /QS parameters.
that must be agreed to before the installation is completed.
Command-line parameters
If User Account Control dialog box shows, click Yes.
Chapter 2 Install ControlFLASH
4. Type a command with the following syntax and press Enter.
Setup.exe {/Q | /QS} /IAcceptAllLicenseTerms [/AutoRestart] [/SetupLanguage=language] [/Record] [/Playback] [/InstallDrive=drive] [/SerialNumber=serial_number] [/ProductKey=product_key] [/Version=product_version]
For more information about parameters, type Setup.exe /? or see Command-
line parameters for silent or unattended installation on page 15.
for silent or unattended installation
/Q Silent Install, install runs in a quiet mode without any user interface.
/QS Unattended Install, install runs in a quiet simple mode and shows progress through the UI, it does not
Unattended or silent install
Use command-line parameters to perform an unattended or silent installation of the software.
Command-line parameters
The following table identifies the installation command-line parameters. Command-line parameters are case-insensitive. However, if a specified value includes a space, be sure to enclose the value in quotation marks (for example, "value with spaces").
This parameter is recommended if you are deploying the software installation using an IT tool or script, and don’t expect to see any error or restart messages. When using this parameter, your IT tool or script should check the error codes, and respond as needed. For example, if the installation returns error code 1641, then the IT tool or script should restart the computer and relaunch the installation after restart. This parameter is required if /QS or /Record is not specified.
accept any input but still shows error or restart messages. When using this parameter, you will not have to check the error codes, and the installation will stop and display a prompt if there are error or restart messages. For example, if an immediate restart is required to complete the install, a restart message will be displayed for you to confirm the restart. Installation resumes automatically from the point of interruption after restart.
/IAcceptAllLicenseTerms Acknowledges acceptance of the license terms.
/AutoRestart Automatically restarts the computer after the installation is complete. Used when a restart is
required to complete the installation. This parameter is optional. If this parameter is not used silent install (/Q) will return either error code 1641 or 3010 if a restart is required, and unattended install (/QS) will result in a confirmation prompt
Chapter 2 Install ControlFLASH
Parameter
Description
operating system user interface language.
This parameter is optional.
This parameter is optional.
determine which parameter is supported.
Error Code
Value
Description
ERROR_SUCCESS
0
The installation completed successfully.
ERROR_INVALID_PARAMETER
87
One of the parameters was invalid.
ERROR_INSTALL_USEREXIT
1602
The installation was cancelled by the user.
ERROR_INSTALL_FAILURE
1603
A fatal error occurred during installation.
ERROR_BAD_CONFIGURATION
1610
The configuration data for this product is corrupt. Contact your support personnel.
/SetupLanguage="value" Specifies which language will be displayed during install process.
/Record Records the installation options chosen to a recording file.
/Playback Plays back a recording file to specify the installation options.
The value must be the one of the following:
• ENU
• CHS
• DEU
• ESP
• FRA
• ITA
• JPN
• KOR
• PTB
This parameter is optional. If this parameter is not used, the default language is the current user or
/InstallLocation="value" Or /InstallDrive="value"
Specifies the install location or install drive respectively. This parameter is optional. If this parameter is not used, the default install location is "C:\Program Files (x86)\Rockwell Software". Some software restricts the installer to only change the drive the software is installed on. Use /? to
Examples
The following examples show how to use the installation commands.
To install the software with no user interface using the default settings during the installation process. (Silent install)
Setup.exe /Q /IAcceptAllLicenseTerms
To install the software on the D: drive and display the progress, error, or complete messages during installation and restart the computer if necessary. (Unattended install)
Setup.exe /QS /IAcceptAllLicenseTerms /AutoRestart /InstallDrive=D:
Error codes
The following table identifies the error codes that can be returned by an installation.
Error Code
Value
Description
ERROR_SUCCESS_RELAUNCH_REQUIRED
3011
Restart of setup needed before installation can continue.
Locate and download
ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. After restart installation will continue. ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the installation. After restart the product is
successfully installed.
Chapter 2 Install ControlFLASH

Install ControlFLASH through firmware

firmware kits
When you download an older version of firmware kits from Rockwell Automation PCDC, ControlFLASH version 12.00 or earlier is included. The firmware kit installation file also contains these files:
ControlFLASH installation file
ControlFLASH drivers
ControlFLASH online help
Follow these instructions below:
1. From Internet Explorer, go to the PCDC website:
http://compatibility.rockwellautomation.com/Pages/home.aspx
To use this site, you must register and log in.
2. In the Downloads area, click Find Downloads.
3. In the Find Downloads page, enter the catalog number or description that you want to download. You can also use the filter to limit the search.
Chapter 2 Install ControlFLASH
Important:
version of ControlFLASH.
Install ControlFLASH
4. Find the firmware and version you need and click Downloads to continue.
5. In this page, click the Show downloads icon to show the available downloads.
6. In the Available Downloads page, select ControlFLASH and click Downloads.
7. Follow instructions on the web to download the firmware.
If you have already downloaded and installed a firmware, a version of
ControlFLASH may already be on your machine. If the next firmware you download has a newer version of ControlFLASH attached, then the newer version is installed. In all cases, any previously installed firmware remains accessible.
If the next firmware you download has an older version of ControlFLASH attached, the newer version of ControlFLASH may be overwritten. For details, refer to Knowledgebase Document ID:
QA5521 - Earlier firmware kits appear to overwrite the newer
Follow the steps below to install ControlFLASH with a firmware.
Chapter 2 Install ControlFLASH
1. Extract the file and double-click ControlFLASH.msi. In the Welcome dialog box, review the firmware information and click Next.
2. In the License Agreement dialog box, after reading the license, select I
Accept and click Next.
3. In the Select Installation Folder dialog box, if needed, browse and
select another folder. Click Next.
Chapter 2 Install ControlFLASH
Directory.
4. In the Confirm Installation dialog box, click Next.
5. Follow the instructions to finish the installation.
Tip:
When the installation completes, FactoryTalk Security is enabled by default. When launched, ControlFLASH logs on to the FactoryTalk Network

Introduction

Configure ControlFLASH
Chapter 3
Configure ControlFLASH policy
This chapter tells you how to configure ControlFLASH security policy in FactoryTalk Administration Console.
Follow the steps to configure security policy on ControlFLASH.
policy in FactoryTalk policies
1. Open the FactoryTalk Administration Console.
2. In the Explorer area, expand System > Policies > Product Policies >
ControlFLASH.
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 21
Chapter 3 Configure ControlFLASH policy
3. Double-click Feature Security. The Feature Security Properties
window is displayed. Feature Security is included in FactoryTalk Services Platform 2.30 or later.
4. In the Firmware: Update category, click Browse. The Configure
Securable Action window is displayed.
5. Configure the policy settings.
Chapter 3 Configure ControlFLASH policy
6. Click OK to complete the configuration.
Important:
ones you see here.
your device from service.
Important:

Introduction

Prepare for firmware
Prepare the device for
Chapter 4
Upgrade firmware with ControlFLASH
This chapter tells you how to upgrade firmware by using ControlFLASH.
Before you begin, make sure that you have prepared your network and device for updating. If you need help, refer to the back cover of this publication for support information.
The illustrations shown in this manual are samples. Because your system configurations or the firmware kits are different, the dialog boxes you see when running the tool may be different from the
upgrades
upgrades

Use ControlFLASH to upgrade firmware

Follow the steps to prepare for the firmware upgrades.
Important:
1. Choose an appropriate time when all processes can be stopped to
2. Verify that you can communicate to the device(s) that need firmware updating.
Follow this procedure to prepare the device for updating.
1. Back up any current programs or data on the devices that you are
2. Turn the key switch on your processor (if used) to Program mode.
3. Turn on power to the processor.
Follow these steps to use ControlFLASH to upgrade the firmware on your devices.
Devices controlled by a processor cannot be firmware updated. You cannot perform the upgrade while running a process. Before performing the upgrade, choose an appropriate time to remove
remove the device from service.
Be sure to back up any data or programs that you have downloaded to a device. When you upgrade the firmware, all data and programs are erased.
updating.
Chapter 4 Upgrade firmware with ControlFLASH
ControlFLASH uses...
If...
RSLinx Classic
RSLinx Classic is installed and RSLinx Enterprise or FactoryTalk Linx is not installed.
Your preferred RSLinx edition
RSLinx Classic and RSLinx Enterprise or FactoryTalk Linx are installed.
1. From Windows Start menu, select All Programs > FLASH
Programming Tools > ControlFLASH. The Welcome to ControlFLASH dialog box is displayed.
To view the log information, click View Log.
To show firmware releases that are available in the monitored
folders, click View Inventory.
To select another RSLinx edition as your default communication
software, click Change RSLinx Edition.
The button is enabled only if RSLinx Classic and RSLinx Enterprise version 5.90 or FactoryTalk Linx version 6.00 are installed. The default choice is RSLinx Classic. The other choice is RSLinx Enterprise or FactoryTalk Linx that can be used with devices supporting USB and EtherNet/IP communications only. The following table shows the RSLinx edition that ControlFLASH uses.
RSLinx Enterprise or FactoryTalk Linx RSLinx Enterprise or FactoryTalk Linx is installed and RSLinx Classic is not installed.
2. After you have the information, click Next. The Catalog Number dialog box is displayed. For family DMK files, it shows the family name instead of the individual catalog names. For firmware DMK files, it shows the family and regular kits included in the firmware bundle.
Chapter 4 Upgrade firmware with ControlFLASH
ControlFLASH searches and lists the available kits in the monitored folders. Click Browse to view or configure the monitored folders.
Tip:
You can also right-click the ControlFLASH icon and select Firmware Kit Locations.
When you download DMK firmware kits from Rockwell Automation PCDC, ControlFLASH automatically saves the folder location where the DMK files were downloaded to. By default, ControlFLASH monitors three folders:
C:\Program Files (x86)\ControlFLASH for 64-bit operating systems or C:\Program Files\ControlFLASH for 32-bit operating systems
C:\Users\<user name>\Downloads\RA
C:\Users\Public\Documents\Rockwell Automation\Firmware Kits
For best performance, we recommend you not using shared folders on a network, disk root folders, or a large number of folders. We don't recommend that you store DMK files in the ControlFLASH installation folder. This is because in some situations, the uninstalling of ControlFLASH causes its installation folder and the DMK files contained in it to be deleted. Keeping DMK files in the other monitored folder avoids the DMK files from being deleted when uninstalling ControlFLASH.
3. Select the catalog number of the target device and click Next. The device path dialog box allows you to specify the network path of the
Chapter 4 Upgrade firmware with ControlFLASH
target module you are updating. The dialog box varies depending on the target module you are updating.
If you are updating a device with MicroXA or AB_ASA protocol
driver, the RSWho dialog box is displayed.
To specify the network path, navigate to the network where the device is located and select the target module. Click OK to go to the Firmware Revision dialog box. For more information about configuring and using RSWho, refer to RSLinx help.
If you are updating a device with AB_SNMP protocol driver, the
AB_SNMP.DLL - Enter IP Address dialog box is displayed.
To specify the network path, in the device path box, enter the IP address or host name of the target module. Click OK to go to the Firmware Revision dialog box. For more information about the device you are updating, click Get Info. The information is displayed in the Device Identification area. For more information about AB_SNMP protocol driver, click Help.
Chapter 4 Upgrade firmware with ControlFLASH
If you are updating a device with AB_PLC5 protocol driver, the
Device Path dialog box is displayed.
To specify the network path, in the device path box, enter the path in the box of the target module. Click Next to go to the Firmware Revision dialog box. For more information about the device you are updating, click Get Info. The information is displayed in the Device Identification area.
4. In the Firmware Revision dialog box, do any of the following:
To specify a firmware revision, select the revision from the list.
To sort the firmware revision list, click the Revision column.
To see all available revisions that you can upgrade to, select the
Show all revisions check box.
To view the license information, click the About Info icon.
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 29
Chapter 4 Upgrade firmware with ControlFLASH
Important:
5. Click Next to go to the Summary dialog box. Click More Info to review
6. Click Finish when you are ready to upgrade the device.
more about the revision you selected.
Note:
When a dialog box prompts you to confirm whether to trust the publisher of a DMK during the update, you can choose to trust it to continue.
7. Click Yes to continue with the update. The upgrade is in progress.
If you are attempting to flash a CompactLogix L2x or L3x controller, it is extremely important to allow the upgrade to complete without interruption. Interrupting the upgrade at this point may result in an inoperable product. Make sure the upgrade is going without interruption.
8. If the firmware kit contains EDS files, you can select whether to register these EDS files when the firmware upgrade completes.
intended application.
Chapter 4 Upgrade firmware with ControlFLASH
To register EDS files, click Continue. To perform the registration,
you need to log on to the computer as an administrator a user with administrative privileges.
To skip the EDS registration, click Skip.
9. After the upgrade, the Update Status dialog box appears. If the upgrade does not complete successfully, refer to Appendix A on page 47 of this manual for more information about errors.
Important:
Test the operation of the device you upgraded before using it in its
To view the Release Notes for this revision, click View Release
Notes.
To view the history of programming events, click View Log.
Click OK to complete the upgrade.

Access help

There is additional information in the help for this application. Access help from the button that appears on each ControlFLASH software dialog box.
For additional information about error messages, press F1 while the ControlFLASH software displays the error message.
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 31

Introduction

Chapter 5
Use the command line
This chapter explains how to use the command line to update module
firmware and simplify firmware management. You can flash multiple modules automatically and save time because you do not need to navigate through the software and select each module to flash.
Using the command line to flash modules provides the following benefits:
Create applications that flash upgrade groups of devices automatically without having to repeatedly use the ControlFLASH menus. These can be scripts or VB applications that list the modules to flash, the firmware revisions, and the path requirements.
Reduce training requirements of technicians and improve time for commissioning machines or performing field upgrades.
Leverage multi-threaded syntax to flash up to five modules simultaneously for improved performance.

Command line mode

You can use the command line interface of ControlFLASH for flashing devices
without user intervention. You can write a script file or some other Windows applications that pass the required parameters to ControlFLASH software. This can significantly improve the time required to flash large systems because each individual flash action does not have to be driven through the ControlFLASH GUI interface.
Consider the following requirements for using the command line.
Any device that you can flash with ControlFLASH software can be flashed by using the command line or scripting. You must have the proper firmware kit installed in ControlFLASH software before you use the command line or scripting.
You must use valid catalog numbers when developing your script files. Otherwise, ControlFLASH does not recognize your modules. The only way to be sure you have the correct catalog number to include in a script is to run the GUI version of the ControlFLASH software and write down the catalog number as it is shown.
For both the command line and script methods of flashing devices, it is required that a firmware kit containing the requested firmware revision is installed on the computer making the call to the ControlFLASH software. The firmware kits must be installed in the default installation folder for ControlFLASH: C:\Program Files\ControlFLASH.
Chapter 5 Use the command line
Syntax
Usage
ControlFlash.exe -D <DMKFileName> -P <Path> -E <Edition> -I <Instance> [-K] [-S]
Shows the full command line syntax of updating target devices using
<Instance> [-K] [-S]
a bundle DMK file that contains the inner DMK file.
and options are specified.
Parameter
Description
-C 1756-L63/A
-R 16.23
Command line syntax
You must have a valid installation of ControlFLASH on the computer before you can flash by using the command line or scripting versions. You must also have the kits installed on that machine for the specific modules and firmware revisions you intend to flash.
The following table shows the command line usages:
ControlFlash.exe -C <Catalog> -R <Revision> -P <Path> -E <Edition> -I <Instance> [-K] [­S]
ControlFlash.exe -N <NVSFileName> -P <Path> -E <Edition> -I <Instance> [-K] [-S] Shows the full command line syntax of updating target devices using
ControlFlash.exe -B <BundleDMKFileName> -D <DMKFileName> -P <Path> -E <Edition> -I
ControlFlash.exe -F <FileName> Points to command lines in a specific script file, where target devices
ControlFlash.exe -? Shows the help information.
Shows the full command line syntax of updating target devices using catalog and revision.
an NVS file.
a regular DMK file or a family DMK file. Shows the full command line syntax of updating target devices using
The following table shows details for each parameter:
-C Specifies the catalog number of device as registered with the current installed ControlFLASH.
To identify installed kits, refer to the GUI version of ControlFLASH. Example:
-R Specifies the firmware revision you need to flash the device to. This revision must be registered for this device with the current install of
ControlFLASH. To identify installed kits, refer to the GUI revision of ControlFLASH. Example:
Path = -P AB_VBP-1,1,16
-F MyScript.txt
-N C:\Users\Public\ControlFlash\Firmware\1756-L6xS\R20_12_72 (V20.01)\556xS.nvs
-P Specifies the RSLinx path to the target device.
Example:
Path = -P AB_DF1-1,0,1
Chapter 5 Use the command line
Example:
-E Specifies the RSLinx edition to communicate the target device. The value can be RSLC that stands for RSLinx Classic or RSLE that stands for RSLinx Enterprise or FactoryTalk Linx. If omitted, the default value is RSLC. Example:
-E RSLE
-F Specifies the full path name to script file where target devices and options are specified.
Example:
-N Specifies the full path name to the NVS file that is used to update target devices. Note: If the -N parameter is specified, the -C and -R parameters will be omitted.
Example of a full path to an NVS file:
Chapter 5 Use the command line
-D 1756-L7x_28.012.dmk
-I 5.
Important:
Script files
-D Specifies the full path to the regular DMK or family DMK file that is used to update target devices, or the regular DMK or family DMK file name
included in the bundle DMK file. Example of a full path to a regular DMK file:
-D C:\Users\Public\ControlFlash\Kits\Regular\1756-L73_21.011.dmk Example of a full path to a family DMK file:
-D C:\Users\Public\ControlFlash\Kits\Family\1756-L7x_28.012.dmk Example of a regular DMK file name:
-D 1756-L73_21.011.dmk Example of a family DMK file name:
-B Specifies the full path to the bundle DMK file that contains inner DMK file to update target devices. Example of a full path to a bundle DMK file:
-B C:\Users\Public\ControlFlash\Kits\Bundle\1756-Redundancy_24.052.dmk
[-K] Not including this parameter causes the device requested to flash even if it is already at the same revision your moving the device to.
Including this parameter skips the flash request if the target device’s firmware is already at the requested firmware revision.
[-S] Not including this parameter causes a second command window to open and displays progress on the current flashing activity.
Including this parameter starts Silent mode, no progress status (percentage completion) or command window is displayed.
-I Specifies the instance or port number of the device supporting multiple assemblies. The value should be between 0 and 15. Example:
-? Shows help information.
ControlFLASH.exe is under the following locations:
(32-bit operating systems) C:\Program Files\ControlFLASH\ControlFlash
(64-bit operating systems) C:\Program Files (x86)\ControlFLASH\ControlFlash
ControlFLASH opens a status window indicating the progress. You can set the
-S parameter to disable this function and run in the silent mode.
If you disable the status window, there will be no visual indication that a flash operation fails or is in progress. In such condition, we recommend that you provide some other user interaction forms through your own application to indicate the status information.
See also
Device Management Kit
Script files
With ControlFLASH, you can create script files or execute your own C#, Java,
or other language to have ControlFLASH push firmware to your devices. Your application can interact directly with ControlFLASH through a command line with status and diagnostics available in the ControlFLASH log or echoed back to your application directly.
Each device that you need to flash must have a unique Device#. ControlFLASH begins flashing devices with [Device1], [Device2], and so forth.
parts of the architecture.
Entry
Description 1: stop flashing the remaining devices.
1: skip.
NumberDevices
Specifies the first number of devices to flash in this script file, begin with [Device1].
When the value is 1, you will not receive any flash status feedback.
refer to the GUI revision of the ControlFLASH software, for example, 16.23.
Flash multiple devices
Chapter 5 Use the command line
ControlFLASH flashes the number of devices as indicated by the NumberDevices field. When you number your devices, do not skip a number and do not use [Device0]. The order of the file does not matter, as long as each number exists once in the file.
In the script file, you can flash up to five devices simultaneously by setting the
MultiFlash option.
When flashing a network communication device, for example, Ethernet, ControlNet, DeviceNet, or SERCOS, always disable MultiFlash by setting it to 0.
When flashing I/O modules, enable MultiFlash by setting it to 1.
When creating a script file, there is a switch in the header that lets you flash up to five devices simultaneously.
Important:
You should not use this option if flashing network or bridging type devices. ControlFLASH may start flashing a network card that is currently being used as part of the path to flash other devices under that communication card. This could render the child device unusable and require a return to the factory. Use the Multi-flash mode only for devices that are not required to gain access to other
The table below show options in the script file:
Version Specifies the version of the script file. AbortOnFail Specifies whether to abort flashing when flashing a device fails.
0: continue flashing the remaining devices.
SkipOnFirmwareMatch Specifies whether to skip flash the device if the device to flash already has the matching firmware as stated in the
script. 0: do not skip.
SilentMode Specifies whether to show the ControlFLASH console window and the flash progress.
0: show. 1: do not show.
MultiFlash Specifies whether to flash multiple devices concurrently.
0: flash only one device at a time. 1: flash up to five devices concurrently.
Catalog Specifies the catalog number of device as registered with the current installed ControlFLASH.
To identify installed kits, refer to the GUI version of ControlFLASH, for example, 1756-L63/A.
Revision Specifies the firmware revision you need to flash the device to.
This revision must be registered for this device with the current install of ControlFLASH. To identify installed kits
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 37
Chapter 5 Use the command line
Entry
Description
NVSFileName
Specifies the full path name of the NVS file. The file will be used to flash the target device.
Path Specifies the RSLinx path to the target device.
Examples:
DMKFileName Specifies the full path name of the DMK file. The file will be used to flash the target device. RSLinxEdition Specifies the RSLinx edition to communicate the target device.
Example: script file
The value can be RSLC that stands for RSLinx Classic or RSLE that stands for RSLinx Enterprise or FactoryTalk Linx. If omitted, the default value is RSLC.
[FlashScript]
Version = 0.1
AbortOnFail = 1
SkipOnFirmwareMatch = 0
NumberDevices = 4
SilentMode = 0
MultiFlash = 0
[Device1]
Catalog = 1756-ENBT
Revision = 3.3.7
Path = AB_ETH-1,192.168.166.7,0 1,1
[Device2]
Catalog = 1756-CNBR/D
Revision = 5.45.10
Path = AB_ETH-1,192.168.166.7,0 1,2
[Device3]
Catalog = 1756-ENBT
Example: script file for
instance number
Example: script file for NVS
Revision = 3.3.7
Path = AB_ETH-1,192.168.166.7,0 1,3
[Device4]
Catalog = 1756-DNB
Revision = 6.2.1
Path = AB_ETH-1,192.168.166.7,0 1,4
[Device5]
Catalog = 1756-CNBR/D
Revision = 5.45.10
Path = AB_ETH-1,192.168.166.7,0 1,5
[FlashScript]
Version = 0.1
AbortOnFail = 0
SkipOnFirmwareMatch = 0
NumberDevices = 1
Chapter 5 Use the command line
file updating
SilentMode = 0
MultiFlash = 0
[Device1]
Catalog = PowerFlex 70
Revision = 2.9
Path = AB_ETH-1, 10.108.90.43
Instance = 1
[FlashScript]
Version = 0.1
AbortOnFail = 0
SkipOnFirmwareMatch = 0
NumberDevices = 2
SilentMode = 0
MultiFlash = 1
[Device1]
Path = AB_ETH-1,10.108.187.85,1,4
Example: script file for DMK file updating
NVSFileName = D:\Firmware\556xS.nvs
[Device2]
Path = AB_ETH-2,10.108.186.79,1,0
NVSFileName = D:\Firmware\556x_20_01_34.nvs
[FlashScript]
Version = 0.1
AbortOnFail = 0
Chapter 5 Use the command line

Troubleshooting

Error Log
SkipOnFirmwareMatch = 0
NumberDevices = 3
SilentMode = 0
MultiFlash = 1
[Device1]
Path = AB_ETH-1,10.108.187.85,1,4
DMKFileName = C:\Users\Public\Firmware\Regular\1756­L75_28.012.dmk
RSLinxEdition = RSLC
[Device2]
Path = AB_ETH-2,10.108.186.79,1,0
DMKFileName = C:\Users\Public\Firmware\Family\1756­L7x_31.001.dmk
RSLinxEdition = RSLC
[Device3]
Path = AB_ETH-1,10.108.186.80,1,0
BundleDMKFileName = C:\Users\Public\Firmware\Bundle\V31.001_Bundle.dmk
DMKFileName = 1756-L7x_31.001.dmk
RSLinxEdition = RSLC
The first step to finding errors in your application is to use the ControlFLASH
software log file. This file provides details about why your flashing script or command line request did not complete. This log file resides in the ControlFLASH directory. Before you spend a lot of time analyzing the log file however, make sure that you check the following:
Target devices you are flashing have the correct firmware kit installed.
ControlFLASH software has the correct RSLinx communication paths
set up.
The catalog number in your application matches the number in the ControlFLASH GUI.
Stop a command line or
Chapter 5 Use the command line
You can open the Error Log by clicking View Log on the ControlFLASH software dialog boxes.
Aborted script file
script application
If you have to abort a script file before completion or if the ControlFLASH
software aborted the script because it received an error from a device, you can re-start that script. ControlFLASH starts flashing from the beginning of the script. You can, however, use the SkipOnFirmwareMatch switch to tell ControlFLASH software to not flash any devices that are already at the requested revision.
If you need to stop a flash operation that has already started, press
CTRL+ALT+F. ControlFLASH stops executing the current script.
ControlFLASH completes flashing any devices currently in the process of being flashed to prevent risk of damaging the target device. Other modules not started in the script are not flashed.
If you are using your own interface to send commands to ControlFLASH, such as a script or C# application, pressing CTRL+ALT+F may not abort the operation and you must manage abort operations by using your application. Refer to the developer of that application for information on how to perform an abort.
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020 41

Introduction

Information monitoring

Audit Log

FactoryTalk AssetCentre

Chapter 6
ControlFLASH and FactoryTalk AssetCentre interaction
ControlFLASH uses FactoryTalk AssetCentre to log user actions such as
flashing a device or starting the application. The following information is included in the log:
Windows credentials
Device being flashed
Path to the device being flashed
Status of the operation
The following information is also available in the ControlFLASH log file, as it was in previous versions.
Event Log
In FactoryTalk-enabled software products, information such as system events
and user actions are recorded in the Event Log and Audit Log.
The Event Log displays database information regarding events that occur in
the system. Events are generally system-initiated. For example, an upload occurred as scheduled, or an alarm condition occurred. Only events that occur in FactoryTalk-enabled products are recorded in the Event Log.
The Audit Log displays database information regarding actions that users
perform in the system, such as editing a Logix Designer project or checking­out a file from the FactoryTalk AssetCentre database. Audit records are generated by FactoryTalk-enabled products.
FactoryTalk AssetCentre offers a centralized repository for tracking and
auditing the changes made to a plant-wide system. Any information related to an application is logged in to the FactoryTalk AssetCentre server.
The details of the log usually contain the following fields:
Date/Time
User Name
User Description (full user name, based on user information held in a
security token or domain name; required for audit messages)
Severity of message (error, warning, information, audit)
Audience for message (operator, engineer, developer, FactoryTalk
AssetCentre)
Message text (text or resource ID that resolves to text when retrieved or passed between machine boundaries)
Chapter 6 ControlFLASH and FactoryTalk AssetCentre interaction
Field
Description
Date and Time
Date and Time at which the update process has finished for the device.
Source
Application name, for example, ControlFLASH
Location
Computer name on which ControlFLASH is being executed.
Resource
Name of the resource that is ControlFLASH.
Username
FTAssetSecurity Login, if present, else Windows login
Logging the device update
Argument list (optional placeholders in message text)
Any additional details, apart from the basic fields listed here, can also be logged on to FactoryTalk AssetCentre server. For example, the resource field of the Audit log is not a part of the basic message format and is considered an additional field.
The following ControlFLASH activities are logged:
Launch of ControlFLASH
Flash burn started. Includes the following details:
Date/Time the flash began
Firmware Revision, both From and To
Username
Path to the device being flashed
Device Target Module Name and Identifier
Flash Burn Status (Success/Failure)
Exit of ControlFLASH
The ControlFLASH activities are logged only if the client is properly configured with FactoryTalk AssetCentre server. ControlFLASH logs the current windows user login. ControlFLASH software activities are logged into the log_AuditEventLog table of the FactoryTalk AssetCentre server.
status
If the connection between the client and server is lost while ControlFLASH is used, all of the events are cached into a local log and are then updated into FactoryTalk AssetCentre server when the connection resumes.
The connectivity of the client to FactoryTalk AssetCentre server, if present, is identified with the help of the following registry entry.
HKEY_LOCAL_MACHINE\SOFTWARE\Rockwell Software\ FactoryTalk AssetCentreClient\EventLog Key- Server Value- (Server Name)
This registry search is done during the launch of the ControlFLASH application.
The update status (Success or Failure) is logged into the FactoryTalk AssetCentre server. You can view the reasons for the Success or Failure in the ControlFLASHlog. The status of the update process is logged into FactoryTalk AssetCentre with the following details:
Field
Description
Message Text If update succeed:
is "device path".
Field
Description
FTAssetSecurity Login, if present, otherwise Windows login.
Logging the exit of
ControlFLASH
Date and Time Date and Time at which ControlFLASH application is closed. Source Application name, for example, ControlFLASH Location Computer name on which ControlFLASH is closed. Resource Name of the resource, for example, ControlFLASH.
Username Message Text ControlFLASH application closed.
The device "device name" is SUCCESSFULLY updated from version "x.x" to "y.y" and the path to the device being flashed is "device path". If update failed: The update process of the device "device name" from version x.x to y.y FAILED and the path to the device being flashed
Chapter 6 ControlFLASH and FactoryTalk AssetCentre interaction
When you exit ControlFLASH, a message is created and logged into the FactoryTalk AssetCentre Event Log with the following details.
RSLinx Classic software is properly configured.
new data file.
The slot used for the controller is not a trusted slot. Make sure to use a trusted slot for the controller.
a different catalog number.
selected device. Unpredictable system operation could result.
representative for help in resolving this problem.
your technical support representative to verify that the correct drivers is loaded.

Introduction

Appendix A
ControlFLASH error codes
This appendix describes common error messages you may see when running the ControlFLASH software.
Error Message Description
Authenticate Error The download restrictions placed on the selected revision could not be validated. Files containing validation
information are corrupted or have been deleted. Check with a technical support representative for help in restoring your restriction files.
Catalog Registry Error The catalog registry database could not be read. Check with your technical support representative to verify that
the correct database is loaded.
Catalog Directory Error The catalog directory database could not be read. Check with a technical support representative to verify that
the correct catalog database has been loaded.
Communication Error An error occurred while the ControlFLASH software tried to communicate with the target device.
Verify that:
All cable connections are secure.
The target device has power.
Data File Error The data file used in programming could not be read. Check with a technical support representative to obtain a
Failed to communicate to the target device. You do not have the permission to perform this operation.
Invalid Catalog Number The catalog number of the target device you selected does not match the catalog number selected in the
Invalid Revision The upgrade revision selected is not compatible with the selected target device. The selected firmware revision
Instance Validation Error The target device did not report enough information to be properly identified. Check with a technical support
Load Driver Error The ControlFLASH software could not find an essential support file for the selected catalog number. Check with
Log Viewer Error The event log viewer (Notepad.exe) could not be found
Mode Error The target device is in a mode in which it cannot be programmed. Place the device into the appropriate mode.
The error might be caused because that:
The security authority identifier of the target device does not match the identifier in FactoryTalk Services Platform. Make sure you have the permission to perform the operation.
Catalog Number dialog box. You selected an incorrect target device or catalog number. Select a device that matches the catalog number or
is either:
older than the firmware currently on the target device.
incompatible with the revision level of the target device.
ATTENTION: Do not continue with the upgrade until you have verified that the upgrade is compatible with the
Verify that the Notepad application is installed on your system.
Appendix A ControlFLASH error codes
Error Message
Description
• Purchasing additional RAM, if necessary.
Shutting down and restarting your computer.
that RSLinx Classic software is properly installed and configured.
obtain a new script file.
Out of Memory Error Your system is low on or out of RAM memory. The ControlFLASH software could not allocate enough memory for
Out of Memory Error Log File Error The log file could not be accessed because of a file error. Either the log file could not be:
Restriction System Error The download restriction system could not read the master key disk. Check with a technical support
RSLinx not installed Make sure RSLinx Classic or RSLinx Enterprise version 5.90 or FactoryTalk Linx version 6.00 is installed.
RSLinx Load Error An error occurred while the ControlFLASH software tried to install the network protocol driver (DTL32.DLL). Verify
data. Free up RAM space by:
Shutting down other applications currently running.
• Increasing the size of your virtual memory.
• Opened.
Written to because of an error.
Written to because the disk is full.
ATTENTION: Check with your application engineer or supervisor before deleting any files. Verify that you are not deleting any files necessary for system operation. If the disk is full, you can free up disk space by:
Deleting files from your C:\windows\temp directory.
Uninstalling any unnecessary applications.
representative for help in resolving this problem.
Script File Error The script file associated with the selected upgrade is corrupt. Check with a technical support representative to

Introduction

Example automated flash
Appendix B
Create a custom interface to process firmware downloads
This chapter gives you an overview on how you can create a custom interface to batch process firmware downloads.
As discussed in previous chapters, you can automate firmware flashing by using a text file that lists devices and single command line. Create a text file that lists all the devices to be flashed and then use a single command line to flash everything on the list.
This functionality provides the following benefits:
tool
Flash groups of devices automatically, without having to repeatedly use the ControlFLASH menus.
Create your own applications that automates firmware upgrades.
The following example application represents a tool that you might want to create to configure ControlFLASH to read the text file at a command line that automates your system upgrades. This tool was created with Visual Basic®
.NET.
In this type of custom tool, select the ControlFLASH Setup tab.
Appendix B Create a custom interface to process firmware downloads
Using the fields created, specify the path to the ControlFLASH executable, as well as the text script files you want to use.
This example uses separate script files to flash controllers, I/O modules, communication modules, and drives, but it is not required that they be separated.
Assuming that the location of the executable and the script files do not change, these configurations need to be set only once. After configuration completes, click the Run Updates tab and select the actions that you want to perform, which include four boxes for the four different script files. Click Execute to run the selected actions.
How a custom upgrade tool
Appendix B Create a custom interface to process firmware downloads
While modules are flashing, the tool displays the progress on the right hand side of the window and success or failure messages in the status box at the bottom.
Once all selected upgrades are run, the status box shows the overall completion status.
works
The tool in this example was created using Visual Basic .NET, but any major programming language can be used. The script files are created manually in a text editor. The tool itself first reads the script file to get the number of devices being flashed, including the names and revision numbers. The tool
uses this information to form the display.
Appendix B Create a custom interface to process firmware downloads
Example Visual Basic .NET
The tool then uses the System.Diagnostics.Process.Start function of the .NET framework to launch ControlFLASH software, giving as the arguments the path to the script file with a -T flag in front of it.
Example:
fileName = "C:\Program Files\ControlFLASH\ControlFLASH.exe"
arguments = "-T C:\samplescript.txt"
The tool then monitors the ControlFLASH process to detect when it has finished running so the tool can move on to the next step.
The easiest way to view the status of the flash upgrade by using this method is to edit the ControlFLASH script file and set SilentMode = 0 to use ControlFLASH software's built in status display.
If developers want to show the progress themselves, as the example tool does, they can use the registered window messages to show progress with external applications. Some knowledge of Microsoft Windows messages is needed.
code
ControlFLASH registers two Windows messages: WM_CFPROGRESS and WM_CFCOMPLETE. The WM_CFPROGRESS message is sent whenever ControlFLASH needs to report a change in progress of flashing a device. The WM_CFCOMPLETE message is sent whenever ControlFLASH finishes flashing a device. These messages can be received by any application that also registers messages of the same name.
Refer to MSDN:
http://msdn.microsoft.com/en­us/library/ms644947(VS.85).aspx where lpString is WM_CFPROGRESS or
WM_CFCOMPLETE
Private Declare Function RegisterWindowMessage Lib "user32" Alias "RegisterWindowMessageA" _ (ByVal lpString As String) As Integer Dim WM_CF_PROGRESS As Integer = RegisterWindowMessage("WM_CFPROGRESS") Dim WM_CF_COMPLETE As Integer = RegisterWindowMessage("WM_CFCOMPLETE")
WM_CF_PROGRESS and WM_CF_COMPLETE are simply variable names used to store the integer values associated with the messages.
After registering the two messages, an application must override the form's WndProc method to actually listen for these messages.
For more information, see MSDN:
http://msdn.microsoft.com/en-
us/library/system.windows.forms.form.wndproc(VS.71).aspx
Important:
Appendix B Create a custom interface to process firmware downloads
Example:
Protected Overrides Sub WndProc(ByRef recWinMessage As Windows.Forms.Message)
In WndProc, you first need to determine if the message received is one of the two registered ones. This is done by checking (in this example):
recWinMessage.Msg = WM_CF_PROGRESS (as defined in the above example) or recWinMessage.Msg = WM_CF_COMPLETE
Assuming the message is one of the two, the details of what the message means are as follows:
If the message is WM_CFPROGRESS:
recWinMessage.WParam.ToInt32 is the number of the device
currently being flashed. These numbers should correspond to the numbers listed in the script file
recWinMessage.LParam.ToInt32 is the actual progress of the
current device (as a percentage).
Because of the way the system is designed, if recWinMessage.LParam.ToInt32 is 100, that does not mean the flashing of that device is complete. Flashing is only complete when the WM_CFCOMPLETE message is sent.
If the message is WM_CFCOMPLETE:
recWinMessage.WParam.ToInt32 is still the number of the device recWinMessage.LParam.ToInt32 indicates success or failure. If
the value is 1, the flash succeeded; if 0, it failed.
For more information, see MSDN http://msdn.microsoft.com/en-
us/library/system.windows.forms.message_members(VS.71).aspx
In this tool, the progress messages are used to set the values of the progress bars, and the complete messages are used to trigger the success and failure status messages in the lower status box.
At the end of your override of the WndProc method, you must call the base class' WndProc method to handle any other messages sent, or your application will not work. Example:
MyBase.WndProc(recWinMessage) End Sub
Technical Support Center
updates.
Knowledgebase
Access Knowledgebase articles.
rok.auto/knowledgebase
Literature Library
find associated firmware.
Rockwell Automation support
Use these resources to access support information.
Local Technical Support Phone Numbers
Product Compatibility and Download Center (PCDC)
Find help with how-to videos, FAQs, chat, user forums, and product notification
Locate the telephone number for your country. rok.auto/phonesupport
Find installation instructions, manuals, brochures, and technical data publications. rok.auto/literature Get help determining how products interact, check features and capabilities, and
rok.auto/support
rok.auto/pcdc
Documentation feedback
Your comments help us serve your documentation needs better. If you have any suggestions on how to improve our content, complete the form at
rok.auto/docfeedback
.
Waste Electrical and Electronic Equipment (WEEE)
At the end of life, this equipment should be collected separately from any unsorted municipal waste.
Rockwell Automation maintains current product environmental information on its website at rok.auto/pec.
Allen-Bradley, expanding human possibility, Logix, Rockwell Automation, and Rockwell Software are trademarks of Rockwell Automation, Inc.
EtherNet/IP is a trademark of ODVA, Inc.
Trademarks not belonging to Rockwell Automation are property of their respective companies.
Rockwell Otomayson Ticaret A.Ş. Kar Plaza İş Merkezi E Blok Kat:6 34752, İçerenkÖy, İstanbul, Tel: +90 (216) 5698400 EEE YÖnetmeliğine U ygundur
Rockwell Automation Publication - 1756-UM105K-EN-E - December 2020
Rockwell Automation Pub lication - 1756-UM105J-EN-E - December 2019 Copyright © 2020 Rockwell A utomation Technologies, Inc. All Rights Rese rved. Printed in the U.S.A.
Loading...