How difficult is it to update a program in the field on a password protected Micro820

I wouldn't say that it's too difficult. More time consuming. But I don't believe it can be done with just one MicroSD card? Or not at once anyway?

If you don't know the current password, and you want to replace the current program, then you will need to flash the Micro820 controller to either the same or suitable firmware for the new project. This will clear its memory. It will then be possible to download a new program to the controller.

To flash the controller you must first place the controller into Program Mode. If it is password protected, and you don't know the password, then you cannot use CCW software to place the controller into Program Mode.

However, you can use a suitable MicroSD card to first place the controller into Program Mode by creating a text file specifically named ConfigMeFirst.txt on the root of the MicroSD card. This configuration file is automatically executed when the controller is power cycled with the MicroSD card inserted.

In the text file simply enter the commands...

[PM]
[END]

PM = Program Mode command.

Insert the MicroSD card into the controller and power cycle. This will force it into Program Mode.

We'll call that 'MicroSD1'.

You can also use a MicroSD card to perform the reflash, or flash upgrade.

Note: Flashing via MicroSD card is only supported for firmware revision 8.x, or higher.

In the same file on another card use the commands...

[FWFILE = firmware\2080-LC20-20QBB\2080-LC20-20QBB_xx_xx_xx.nvs]
[FWDOWN = 0]
[END]

Where ...xx_xx_xx.nvs represents the actual revision number of the firmware file you are using...

Example: 2080-LC20-20QBB_08_11_07.nvs

The firmware nvs file is typically stored on the MicroSD card using the folder path mentioned above...

firmware\<catalog number>\<firmware file>.nvs

This is a default folder path but you can create your own if you wish. However, you must enter the correct folder path for the FWFILE command in the text file. You have to create these folders yourself. You also have to find or procure the necessary firmware file yourself. If you need help with that then shout.

Insert the MicroSD card into the controller and power cycle. This will perform the firmware flash upgrade.

We'll call that card 'MicroSD2'.

Next, you can use another MicroSD card to perform the program download, or "Restore"...

In CCW, for the new program you wish to download, go to...

Controller>Startup>Mode Behavior and select Remote Run Mode

Save, build and download this into a firmware compatible test Micro820 controller, if you have one, and then perform a backup of the program from the controller to another suitable MicroSD card. On the root of this card also create a ConfigMeFirst.txt file and enter the following commands...

[RSD = Micro820]
[END]

Where...

RSD = Restore Directory command
Micro820 = Default Controller Name under General in CCW

The default controller name is 'Micro820'. So here a program backup will automatically create a folder on the MicroSD card's root named 'MICRO820'. Inside this folder the backup will always create a subfolder named 'USERPRJ', no matter what the controller name folder happens to be. So that is...

MICRO820/USERPRJ

So if you named your controller 'MyNewProj' then a backup will create the following on the root of the MicroSD card...

MYNEWPROJ/USERPRJ

Note how the backup always capitalizes the controller name.

The actual project, or program file, is stored under the 'USERPRJ' folder. If you don't happen to have a spare Micro820 controller to perform a backup from, then you can manually create the folders on the card and copy the project file into the 'USERPRJ' folder. Don't forget to assign the correct folder name you create on the card to the RSD command...

Example:

Folders on card:

MYNEWPROJ/USERPRJ

Text file command:

[RSD = MyNewProj]
[END]

Note: Capitalization does not matter.

Insert the MicroSD card into the controller and power cycle. This should automatically restore the project saved on the card into the controller and force it to go to Remote Run Mode. You can then remove the MicroSD card.

We'll call that 'MicroSD3'.

You could create three separate MicroSD cards for the above sequence of tasks, or alternatively, you could prepare three filesets to be loaded onto a single MicroSD card in turn, performing each task one by one with said single card.

Or, you could ignore all that, because I've never done any of it before, with this particular controller. I could be incorrect up there somewhere?

If you're intending on sending some "lay person" just a MicroSD card, or going into the field yourself a bit unsure, then I would highly recommended you benchtest the above before doing so, if you have a spare Micro820 controller.

Make sure whomever is supplying the MicroSD cards that they are compatible...

The Micro820 controllers support either Class 6 or Class 10 SDSC or SDHC MicroSD cards.
Class 4 cards are not supported.
They must be formatted for either FAT16 or FAT32.
They must contain only one file partition.
Single Level Cell (SLC) flash technology SD cards are preferred over Multi-Level Cell (MLC) SD cards due to the MLC's limited erase cycles. This is only important for frequently used SD cards.

Now, after all that, I'm just hoping you don't start a third thread asking this same question again while correcting yourself on yet again having inquired about the wrong controller in this thread!

Regards,
George
 
Last edited:
Geospark,

Thanks for the great reply. Our controllers are password protected, and we want to make sure that the updated program can not be loaded to a controller that does not have a matching password. Does this effect the process at all?

And sorry about the thread duplication. If I could I would delete the original thread.
 
I was only joking about the thread duplications!

Humans are error prone, but the better models are also fault tolerant.

For a MicroSD Backup...

For the ConfigMeFirst.txt file, the Backup command [BKD] may be executed from a MicroSD card to perform a project backup to the card, even from a password protected controller. This is allowed as this is a non-destructive command which only copies the project and does not overwrite the project stored in the controller. Also, the backup will store the project's password to the card, but in an encrypted format. This way, even if someone creates a MicroSD card and performs a backup from a password protected controller, they cannot open the project stored on the card in CCW without the password.

For a MicroSD Restore...

For the ConfigMeFirst.txt file, the Restore command [RSD] may be executed from a MicroSD card to perform a project restore from the card, but the project stored on the card must have a matching password with the protected controller. This is only allowed this way as this is a destructive command which will overwrite the project stored in the password protected controller.

Note: For both Backup and Restore the controller must first be in Program Mode.

So, if updating the project in the controller via a MicroSD card, using the [RSD] command, you must place the Program Mode [PM] command before the [RSD] command in the ConfigMeFirst.txt file...

[PM]
[RSD = YourProjName]
[END]

Regards,
George
 
Last edited:
Thank you. I was able to get it to work. (OK, it took a year and a half, but I've been busy :)

However, I tried to zip the contents of the SD Card and send it to the technician so he could create his own SD Card, however, that didn't work. It appears that only the SD Card that was used to store the backup can be used to transfer the program to another PLC.

Any thoughts on this?
 
I know this thread it a little old but im doing something similar... I need to update a program and also the firmware to a 820 about 500 miles away, I got everything but I can not get the PLC to go into run, I see where George puts it into [PM] and I tried [RM] but no luck.

My code below and it updates the FW and loads the program but no luck on the run mode, anyone know where a full set of instructions, I found a couple links below (manual and RA)

https://rockwellautomation.custhelp.com/app/answers/detail/a_id/1060515/related/1

https://literature.rockwellautomation.com/idc/groups/literature/documents/um/2080-um005_-en-e.pdf

Anyone?

EDIT: Added ConfigMeFirst txt

[CF]
[FWFILE = firmware\2080-LC20-20QBBAB_12.011_1K.nvs]
[FWDOWN = 0]
[RSD=Micro820]
[RM]
[END]
 
Last edited:
Hi Mark,

Just curious, but I take it you placed the test controller in Program Mode yourself before performing the firmware flash as that is a necessary step? It's just I don't see an initial [PM] in your code?

If we review this section of my initial post, you might find what you require, and what is also outlined in the technote that KuulKuum has linked...

Geospark said:
...In CCW, for the new program you wish to download, go to...

Controller>Startup>Mode Behavior and select Remote Run Mode

Save, build and download this into a firmware compatible test Micro820 controller, if you have one, and then perform a backup of the program from the controller to another suitable MicroSD card. On the root of this card also create a ConfigMeFirst.txt file and enter the following commands...

[RSD = Micro820]
[END]

Where...

RSD = Restore Directory command
Micro820 = Default Controller Name under General in CCW

The default controller name is 'Micro820'. So here a program backup will automatically create a folder on the MicroSD card's root named 'MICRO820'. Inside this folder the backup will always create a subfolder named 'USERPRJ', no matter what the controller name folder happens to be. So that is...

MICRO820/USERPRJ

So if you named your controller 'MyNewProj' then a backup will create the following on the root of the MicroSD card...

MYNEWPROJ/USERPRJ

Note how the backup always capitalizes the controller name.

The actual project, or program file, is stored under the 'USERPRJ' folder. If you don't happen to have a spare Micro820 controller to perform a backup from, then you can manually create the folders on the card and copy the project file into the 'USERPRJ' folder. Don't forget to assign the correct folder name you create on the card to the RSD command...

Example:

Folders on card:

MYNEWPROJ/USERPRJ

Text file command:

[RSD = MyNewProj]
[END]

Note: Capitalization does not matter.

Insert the MicroSD card into the controller and power cycle. This should automatically restore the project saved on the card into the controller and force it to go to Remote Run Mode. You can then remove the MicroSD card...

Have you set that option in your project before backing it up onto the SD card? As the technote confirms, you cannot command the controller into Run Mode via the ConfigMeFirst.txt batch file. So there is no such thing as a [RM] command, but nice try!

Regards,
George
 
After updating the firmware and program using the MicroSD card, have you tried removing the MicroSD and cycle PLC power?

Yes it stays in program mode, but you may be onto something with that link, I searched everywhere for that one... I had to place the PLC (mine) in program to update the firmware and their is off the shelf new PLC that they have so its in program mode.

George said:
So there is no such thing as a [RM] command

There should be :)

I think I will try flashing the firmware then copy the program in run mode before I put it on the flash drive
 
geniusintraining said:
...I think I will try flashing the firmware then copy the program in run mode before I put it on the flash drive

Do what? Is that a cryptic answer "yes" to the question I'd asked?

i.e. by "copy the program in run mode" you mean you are going to set the Startup Mode Behaviour to Remote Run Mode and then backup to the SD card?

Or...

Are you saying you are manually copying the saved project file to the SD card after applying that setting?

I'm just trying to be clear here. The procedure is to apply the setting, save and "backup" to the SD card, using the specific backup function in the software, and not manually copy a file to the card external to the software. Not sure of the difference there, but it might be very important?

G.
 
I will try and clarify...

Reading this procedure
https://rockwellautomation.custhelp.com/app/answers/detail/a_id/1060515/related/1

Download Program to microSD card
The program can be downloaded from the controller to the microSD in program mode, so we need remove the card from the PC, and insert into the Micro820.

Connect and go-online with the controller that contains the working program. Ensuring that the controller is in Program mode, select the controller Micro820 --> Memory Card --> Backup to Memory Card.

Then this one
https://rockwellautomation.custhelp.com/app/answers/detail/a_id/765789

Backup and Restore can only occur when the controller is in PROGRAM mode

So this is where I was stuck, both procedures are with the PLC in program before you make the transfer to the SD... but reading this one

https://rockwellautomation.custhelp.com/app/answers/detail/a_id/725310

I think I just need to change the mode behavior before I transfer the program to the SD, I will try it later today
 
geniusintraining said:
I will try and clarify...

...I think I just need to change the mode behavior before I transfer the program to the SD, I will try it later today

Exactly. This is the step I had pointed out originally and yesterday to you. I just couldn't read between the lines that you were saying you were going to do this.

On the PM command being in the batch file, or not...

If the test controller you or the customer is using is already in Program Mode, then obviously the batch file doesn't need the [PM] command. You should be able to insert the SD card and power cycle to flash firmware and restore the project. Once complete, and you have the Remote Run Mode setting enabled in the project, then you should be able to power cycle again with the SD card still inserted and it should attempt to go to Run Mode.

If the batch file contains a [PM] command then it will always read this at boot and place the controller in Program Mode. So to get it to go to Run, after the SD card has executed PM, flashed firmware, restored the project, then remove the SD card and power cycle. With the same Remote Run Mode setting enabled it should also attempt to go to Run Mode.

G.
 
Still not working...

When your in Run, the button "Backup to Memory Card" is not selectable so you have to be in program mode to back up the program also you need to go online to change the mode behavior from start up in Program to start up in Run

I do not think its possible to send a SD to a customer with a PLC thats in program and have them insert the card, cycle power and it the PLC runs the program.... they need to have the LCD or a PC so they can go online

My [RM] would of been a easy fix (if it only worked)
 
You did remove that [RM] from ConfigMeFirst.txt?...

Hi Mark,

geniusintraining said:
...When your in Run, the button "Backup to Memory Card" is not selectable so you have to be in program mode to back up the program...

Yes, the user manual/technotes clearly states this. You must be in Remote Program Mode to perform a backup to or restore from the SD card.

geniusintraining said:
...also you need to go online to change the mode behavior from start up in Program to start up in Run...

Two things here...

1. To change the Startup>Mode Behavior setting you must be Offline (Disconnected), and not Online (Connected). This is clearly stated in certain reference material. When Online, the Mode Behavior setting should display as grayed out, but should display its current status. When you "Disconnect" to go Offline the setting should then become available to change.

2. When Offline, the Mode Behavior setting may be changed to either "Enabled" (checkbox ticked) or "Disabled" (checkbox unticked). However, these two states do not represent, respectively, "Startup in Remote Run Mode" or "Startup in Remote Program Mode", as you have suggested.

When Mode Behavior is "Enabled", and the controller is power cycled, it will attempt to go into Remote Run Mode, each time. To do so, there should be no faults and the controller must have already been in some "Remote" Mode before the power cycle (always "Remote" for Micro820 as no mode switch). One other stipulation is that the SD card, if still inserted at power cycle, should not have a [PM] Program Mode command in the ConfigMeFirst.txt batch file.

When Mode Behavior is "Disabled", and the controller is power cycled, then the controller will attempt to go into whichever mode it was last in before the power cycle. This could be either Remote Run Mode or Remote Program Mode.

So for "Step 1", you must explicitly "Enable" the Mode Behavior setting Offline, save it Offline, and then Download the project to the controller. Then you can go Online and check the status of this setting. It should then be grayed out, but you should see that it is "Enabled" (checkbox is ticked).

For "Step 2" - Then, while Online and in Remote Program Mode, proceed to backup this project to the SD card. The copy of the project on the SD card will now have the Mode Behavior setting "Enabled", ready for your customer (or for you to test).

Note on testing: If, as part of the preparatory steps for the SD card, you have downloaded a project to your controller with the Mode Behavior setting "Enabled" (you should have), then I would first test this functionality for the project in the controller's memory i.e. leave the SD card removed. Place the controller into Remote Program Mode and power cycle. The controller should attempt to restart in Remote Run Mode.

Next, I would go Offline and "Disable" the Mode Behavior setting, save Offline, and then Download the project once more. With no SD card inserted, leave the controller in Remote Program Mode and power cycle. Check the controller restarts in Remote Program Mode. Then I would place the controller into Remote Run Mode and again power cycle, checking once more that it restarts in Remote Run Mode. This will verify that the controller is now functioning with Mode Behavior "Disabled" i.e. reverting to last mode before power cycling.

If that is successful, and while leaving the Mode Behavior setting "Disabled", I would then proceed to test the SD card. Insert the SD card, which now has a backed up project with the Mode Behavior setting "Enabled", and place the controller into Remote Program Mode, if not already. Power cycle and watch the firmware flash sequence complete. Then wait for the project restore to complete and the controller should then attempt go to Remote Run Mode. If it doesn't, I would power down and remove the SD card and then power back up. The project restored from the SD card into the controller's memory, with Mode Behavior "Enabled", should again attempt to go to Remote Run Mode.

If you care to, or already have, followed that sequence, thereabouts, then please let us know if the results are the same or if something has changed.

My summation of the above (with the help of a good bottle of wine)...

For Mode Behavior you are either doing what I'm outlining, but describing it incorrectly, and something just isn't working, or you are doing it incorrectly and not seeing the results you're expecting. Or, I am either reading you incorrectly, and/or the considerable amount of material I've referenced, on and off over the last two days.

Wine imbibing aside, I'm sure you know by now that I don't post such information unless I'm reasonably sure to quite confident of, either what I've read, and digested, or, what I know from experience.

That is, what you are thinking cannot be done, can be done, in my estimation. We/you just need to figure out where and what is being overlooked here.

P.s. my post's title is merely a pedantic "just in case"?

G.
 

Similar Topics

Folks, I have a client with an old ABB Advant / MOD300 system (v14.4). Around y2k I installed the ABB Industrial IT MOD300 OPC Server 1.1/2...
Replies
1
Views
176
Good Morning , I'm new to the Siemens LOGO software. Have any of you had a problem downloading this Software from the Siemens website ? I...
Replies
5
Views
1,176
Good Morning , I'm trying to get a Ramp Pushbutton to work in a way that when the operator either presses the ramp button once or he keeps...
Replies
4
Views
1,564
Good Afternoon , A co-worker is having a problem at the plant with a Fanuc robot and a Robot Alarm SRVO-067 OHAL2 alarm (Grp:%d Ax:%d)...
Replies
1
Views
5,784
Hi all, I have a project where we'd like to use InTouch for the HMI for a water plant. The water plant needs to provide monthly reports to the...
Replies
7
Views
2,228
Back
Top Bottom