We are going to be removing an existing GE Fanuc 90-30 that is running a particular waste water program. I have an old printed version of the program with hand-written changes. These changes have been made using the old handheld programmer. The original program was written using LM90, as that's what the printout shows as the directory folder name of the logic. i.e. C:\LM90\WasteWater I need to get a copy of the current logic off of the processor to validate the old printed copies for the conversion from the GEFanuc PLC to DCS programming.

I have a copy of Proficy ME version 5.6 on an older laptop and our instrument/PLC guy who has been making the changes using the handheld programmer says he cannot get Proficy to communicate with the processor. That is the extent of my knowledge of that.

I have version 8.0 Proficy ME on its way for my newer laptop, as I contacted a "local" supplier of GEIP and he suggests that there should be no issue uploading a copy of the program. The research I have done led me to the hardware/software compatibility matrix. It shows some of the 331 CPUs as being compatible with Machine Edition and others not. How can I determine the revision of the processor I have? I see it shows 331 on the front of it, but that is it. This is a currently running system, so it cannot be shut down for this work. If we cannot get a copy of the program in the processor, then they will simply work off of the old copies and hope for the best, but I would really like to provide the actual running logic, albeit without comments/descriptions.

Second question: Is there a way to get a copy of the logic off of the processor using the handheld programmer...a copy that can be printed out to compare against our original printout?

Any and all input will be greatly appreciated. By the way, I am fairly new to PLCs in general, and am trying to gain as much knowledge and experience as I can, so please bear with me as I try to figure this out.

To check the firmware version, look at the last one or two characters of the CPU part number. It will be IC693CPU331x or IC693CPU331yy where "x" or "yy" indicate the version. That's not foolproof because someone could have installed an EPROM with a newer firmware version than indicated by the part number suffix.
Very early firmware versions may not communicate with Proficy. By "very early" I mean older than version 2.5 or 3.0. When the product line first came out, GE Fanuc made a major change at around that level and tried very hard to get everybody to upgrade. I think that the ones that never got upgraded to that minimum level may be the ones that have problems with Proficy.
When you first install Proficy, it defaults to prevent program downloads to versions earlier than 8.x or so, but there is a parameter setting that allows you to bypass that restriction.
I'm not aware of any way to create a printed copy of the program from the file stored on the handheld programmer's memory card. You would have to download to another CPU and use Logicmaster to create the printout.

To check the firmware version, look at the last one or two characters of the CPU part number. It will be IC693CPU331x or IC693CPU331yy where "x" or "yy" indicate the version. That's not foolproof because someone could have installed an EPROM with a newer firmware version than indicated by the part number suffix.
Very early firmware versions may not communicate with Proficy. By "very early" I mean older than version 2.5 or 3.0. When the product line first came out, GE Fanuc made a major change at around that level and tried very hard to get everybody to upgrade. I think that the ones that never got upgraded to that minimum level may be the ones that have problems with Proficy.
When you first install Proficy, it defaults to prevent program downloads to versions earlier than 8.x or so, but there is a parameter setting that allows you to bypass that restriction.
I'm not aware of any way to create a printed copy of the program from the file stored on the handheld programmer's memory card. You would have to download to another CPU and use Logicmaster to create the printout.

Thanks, Steve. I'm hesitant to do too much to the PLC hardware, because if we lose power, we have lost our only copy of the program running our waste water process. Would that parameter setting prevent communication for an upload or is that strictly limited to downloads to "old" processors?

because if we lose power, we have lost our only copy of the program running our waste water process

That's only the case if the battery is dead. There is an LED on the power supply module that indicates the status of the battery. If it is on the battery needs replacing. You can install a new battery while the unit is powered.
I'm not certain about whether the setup parameter places any limits on simply establishing a connection with the PLC. On your computer running the older version of Proficy, check to make sure your PLC target in the project folder is using the correct COM port. What are you using for a cable between the computer and the PLC? The port on the power supply module is RS485. You'll need a converter to connect your computer's RS232 port.
I don't think they still offer the demo version of Logicmaster.

That's only the case if the battery is dead. There is an LED on the power supply module that indicates the status of the battery. If it is on the battery needs replacing. You can install a new battery while the unit is powered.
I'm not certain about whether the setup parameter places any limits on simply establishing a connection with the PLC. On your computer running the older version of Proficy, check to make sure your PLC target in the project folder is using the correct COM port. What are you using for a cable between the computer and the PLC? The port on the power supply module is RS485. You'll need a converter to connect your computer's RS232 port.
I don't think they still offer the demo version of Logicmaster.

The battery LED indicator is off. It would probably be smart to order and swap the battery out in the meantime.

It sounds like your problem is similar to unsunghippie's. Do you still have the handheld programmer? If so, connect it and check what the PLC's port settings are. The handheld will set itself to whatever baud rate and parity the PLC is using. Also check if the PLC is using an SNP ID. Earlier firmware versions were finicky about making sure Logicmaster was asking to communicate with the correct SNP ID.
And, as was mentioned in that other thread, make sure COM1 is available and not being used by some other application. RSLinx sometimes doesn't relinquish the port even when you shut down RSLogix.

If the PLC was first supplied with a modem option it is likely that the serial port was changed to 9600,N,8,1 instead of the default 19200,O,8,1 port parameters.
Also there is a utility called PACsAnalyzer that will pull out the hardware configuration including version levels of some modules. If your hardware is not too old this will work.
Regardless of the CPU (version > 3.x) it is likely that you will be able to 'Upload" using any version of Proficy or LM990. Get the hardware first then logic, even if you cannot download to make things "Equal" it very likely will be.
Also regardless of the hardware/software versions you 'should' be able to go 'Online' with the software and look at the version of the CPU. Under 'Target > Online Commands > View Status'

I tried those new parameters to no avail. I also just received Proficy v8.0, so I installed it and gave it a shot on a newer laptop with a USB-serial adapter and the SNP cable. Same issue with both communication parameters. I guess I am going to have to source some Logicmaster software somehow.