Taking Over an Undocumented PLC System: A Survival Guide
Practical step-by-step guide for technicians taking over an unknown PLC system. Covers the first-week checklist: hardware audit, program backup, risk assessment, spare parts, and building system knowledge from scratch.
Taking Over an Undocumented PLC System: A Survival Guide
When you inherit an undocumented PLC system, your first priority is survival: back up the program, identify critical spare parts, and understand enough of the system to keep it running. Documentation comes second. This guide covers the first-week checklist that every maintenance technician needs when taking over an unknown system.
This happens constantly in industry. The previous technician retired. The integrator who built the system went out of business. The company was acquired and nobody transferred the knowledge. You are now responsible for a machine or plant that runs on a PLC you have never seen before, with a program nobody understands, and documentation that either never existed or was lost years ago.
Day 1: Don't Touch Anything — Observe and Record
Rule number one: If the system is running, do not make changes. Not to the program, not to the wiring, not to the parameters. A running system is infinitely more valuable than a stopped one. Your goal on day one is observation only.
Walk the plant. Take photos of everything:
- Every electrical cabinet: open door, photograph the PLC rack, I/O modules, power supplies, communication modules
- Every label: CPU model number, firmware version, serial number, IP addresses
- Every cable: network connections, fieldbus cables (PROFIBUS, PROFINET, MPI), sensor/actuator wiring
- Every HMI/operator panel: model, connected to which PLC, what screens are displayed
- The machine nameplate: manufacturer, year, machine type, serial number
Record what you see on the PLC hardware:
| Item | What to Record | Why |
|---|---|---|
| CPU | Model (e.g., CPU 315-2DP), order number (6ES7...), firmware version | Determines software needed, spare part ordering |
| I/O modules | Module type, order number, slot position | Needed for hardware configuration and spare parts |
| Communication | MPI address, PROFIBUS address, IP address, network topology | Needed to connect your laptop |
| Power supply | Model, voltage (24V DC input?) | Spare part identification |
| Memory card | Type (MMC, MC), size | Contains the program — critical spare |
| Battery | Present? LED status? | S7-300 CPUs need batteries for retentive data |
Do NOT upload/download anything yet. Just observe and record.
Day 2: Back Up the Program
This is the single most important action. If the PLC fails tomorrow and you have no backup, the machine may be down for weeks or permanently.
For Siemens S7-300/400 (STEP 7 Classic):
- Connect via MPI adapter, PROFIBUS, or Ethernet (depending on CPU type)
- In SIMATIC Manager: PLC → Upload Station to PG
- Save the project, then File → Archive to create a backup .zip
- Copy to USB drive AND network storage
For Siemens S7-1200/1500 (TIA Portal):
- Connect via Ethernet (PROFINET)
- In TIA Portal: Online → Upload device as new station
- Project → Archive to create a backup
- Copy to multiple locations
For Siemens S5:
- You need STEP 5 software or S5 for Windows (S5W) with a PG cable (AS511 protocol)
- If you don't have the software: the program may be on an EPROM module in the CPU. Remove and store it safely — that IS your backup
- If you can connect: upload all blocks and save as .S5D file
For Allen-Bradley:
- Connect via serial, Ethernet/IP, or DH+
- RSLogix 500: Communications → Upload
- RSLogix 5000 / Studio 5000: Communications → Upload
Critical: Verify the backup. After uploading, compare the online program (in the PLC) with your offline copy. If they match, your backup is valid. If they don't match, upload again.
Store backups in at least three locations: USB drive in the cabinet, network storage, and your laptop. Label each with: machine name, date, PLC type, and "VERIFIED".
Day 3: Assess the Risks
Now prioritize what could fail and what the impact would be:
Hardware risk assessment:
| Risk | Check | Action |
|---|---|---|
| CPU failure | How old is the CPU? Is it still manufactured? | Order a spare if possible |
| Power supply failure | Is there a spare? | Check stock, order if needed |
| Memory card / EPROM | Do you have a programmed spare? | Create one from your backup |
| Battery (S7-300) | Is the battery LED showing low? | Replace preventively, keep spares |
| Communication module | Single point of failure? | Identify and stock spare |
| I/O module failure | Are there spare modules? | Identify most critical modules, stock spares |
| Programming cable | Do you have one that fits this CPU? | Acquire one — you cannot maintain a PLC without being able to connect |
Software risk assessment:
- Do you have the correct programming software version? STEP 7 V5.x for S7-300/400, TIA Portal for S7-1200/1500, STEP 5 for S5
- Is the software license available? If the license was on the previous technician's laptop, it may be gone
- Are there any know-how protected blocks (password-protected FBs/FCs)? If yes, you cannot view or edit them without the password
Knowledge risk assessment:
- Is there anyone in the company who understands parts of the system? Talk to operators, maintenance staff, the person who has been here the longest
- Are there any paper documents in the cabinet? Wiring diagrams, commissioning notes, even handwritten notes can be invaluable
- Was the original integrator / machine builder still in business? Contact them — they may still have the project files
Day 4–5: Understand the System Architecture
Now start building a mental map of how the system works:
Create a system overview diagram:
- Which PLC controls what part of the machine/plant?
- How do PLCs communicate with each other? (MPI, PROFIBUS, PROFINET, Ethernet)
- Where are the HMI panels? What PLC do they connect to?
- Are there safety systems (safety PLC, safety relays, light curtains)?
- Are there drives (frequency inverters, servo drives)? How are they connected?
Identify the program structure:
- Upload the cross-reference list (see our PLC documentation guide)
- Identify OB1 (main cycle) and what it calls
- Look for OB35 or other cyclic interrupt OBs (often used for PID control or fast I/O)
- Check for alarm OBs (OB40–OB47 for hardware interrupts)
- Look for startup OB (OB100) — this initializes the system after power-on
Talk to the operators:
- What does the machine do? What are the normal operating steps?
- What goes wrong most often? What error messages appear?
- Are there known quirks ("you have to press start twice" or "if this sensor triggers, restart the PLC")?
- When was the last time something was changed in the program?
Operators often have deep process knowledge even if they know nothing about PLC programming. Their input is critical.
Week 2 and Beyond: Build Documentation
Once the immediate survival tasks are done, begin systematic documentation:
- Create the symbol table / variable table (see our documentation guide)
- Document all I/O with physical locations and wiring
- Add network comments to the program explaining each function
- Create a spare parts list with order numbers and sources
- Document known issues and workarounds
- Set up a change log for every future modification
The Spare Parts Emergency Kit
Every PLC cabinet should have these items stored nearby or clearly inventoried:
- Programmed memory card (with verified current program)
- CPU battery (for S7-300, S5)
- Programming cable appropriate for the CPU type
- Spare I/O module for the most critical inputs/outputs
- Spare fuse set matching the power supply requirements
- Copy of the programming software on a USB drive or accessible network location
- Printed I/O list taped inside the cabinet door
How PLCcheck Pro Helps
When you inherit an undocumented system, the fastest way to understand the program is to let AI analyze it:
- Upload the AWL/STL code → get a plain-language summary of what each block does
- Automatic I/O identification → see which inputs and outputs are used and where
- Timer and counter summary → all timing values with calculated durations
- Pattern recognition → identifies self-holding circuits, sequences, PID loops, safety interlocks
- Exportable report → instant documentation you can hand to your manager
This doesn't replace going to the machine and tracing wires. But it gives you a 2-hour head start instead of spending 2 days staring at raw code.
Frequently Asked Questions
What is the very first thing I should do when taking over an unknown PLC system?
Back up the program. Before you do anything else — before you document, before you trace wiring, before you add comments — make a verified backup copy of the program and store it in at least three locations.
What if I don't have the programming software?
For Siemens S7-300/400: you need STEP 7 V5.x. For S7-1200/1500: TIA Portal. For S5: STEP 5 or S5 for Windows. If the license is gone, contact your Siemens distributor. For Allen-Bradley: RSLogix 500/5000 or Studio 5000. Software licenses are often the first bottleneck.
What if the PLC program is password protected?
Some blocks may be "know-how protected" (encrypted). Without the password, you cannot view or edit these blocks, but you CAN still back them up and download them. Contact the original machine builder for the password. As a last resort, third-party tools exist that can unlock some types of protection, but this may have legal implications.
Should I upgrade an old PLC system immediately?
No. Stabilize first: back up, document, stock spare parts. Only consider migration when the system becomes unmaintainable (no spare parts, no software, no qualified personnel). See our S5 to S7 Migration Guide when you reach that point.
Maintained by PLCcheck.ai. Last update: March 2026. Not affiliated with Siemens AG.
Related Articles
How to Document a PLC Program Without Original Documentation
Practical step-by-step method for documenting an undocumented PLC program. Covers block inventory, I/O tracing, cross-reference analysis, symbol table creation, and generating useful documentation from raw code.
15 min read
plc-documentationReading and Understanding S5 AWL Code: A Practical Guide
Learn to read Siemens S5 AWL (Instruction List) code from scratch. Covers the accumulator model, bit logic, load/transfer, timers, counters, jumps, and data blocks with real code examples and line-by-line explanations.
16 min read
thought-leadershipPLC Obsolescence: The Spare Parts Crisis in Industrial Automation
The PLC spare parts crisis explained: Siemens S5 (EOL 2020), S7-300 (production stopped Oct 2025), and what plant operators must do now. Lifecycle timelines, pricing trends, and mitigation strategies.
12 min read
Analyze your PLC code with AI
PLCcheck Pro explains, documents, optimizes, and migrates PLC code — automatically.
Try PLCcheck Pro →Not affiliated with Siemens AG. S5, S7, STEP 5, STEP 7, and TIA Portal are trademarks of Siemens AG.