S7-1500 CPU in STOP with OB121, Fault_ID 16#3A after partial download, what to check?

Question

My S7-1500 CPU went into STOP mode and called OB121 with Fault_ID 16#3A. This happened right after I did a partial download to the controller. What should I check first to get it running again?

Top answer · Written by InduQT from the fault guide and manufacturer manuals cited below · Oct 28, 2026

An S7-1500 CPU in STOP mode with OB121 and Fault_ID 16#3A indicates a programming error, specifically an attempt to access a data block (DB), function (FC), or function block (FB) that is either not loaded or does not exist. This often occurs after a partial download or if a block was recently deleted. The CPU stops because neither OB121 nor local error handling caught the error.

Likely causes and checks

1Access to a missing or unloaded block

Points to it
The CPU attempted to access a DB, FC, or FB that was not present or fully loaded in its memory. This is a common consequence of partial downloads or when a block has been deleted from the project but is still referenced in the program.
Check
Perform an online/offline comparison of the blocks in the CPU with your project. Identify any missing blocks and download them to the CPU.

2Area or length error from indirect addressing

Points to it
An indirect address or array access attempted to read or write data outside its defined memory area or with an incorrect length. This is indicated by Fault_ID 16#22–16#25.
Check
Examine the diagnostics buffer to pinpoint the block and the specific access causing the error. Read the value of the index or pointer at the time of the error and compare it against the valid range of the addressed area.

3Block call nesting or local data exceeded

Points to it
The program exceeded the maximum allowed block call nesting depth or the allocated local data memory. This is indicated by Fault_ID 16#00/16#75 for nesting depth or 16#76 for local data.
Check
Review the call depth and any recursion within the block identified in the diagnostics buffer (BlockNr) to ensure it does not exceed the controller's limits.

Next check: Given the Fault_ID 16#3A and the context of a partial download, the most immediate step is to perform an online/offline comparison of the blocks in the CPU with your project and download any missing blocks.

Work on fuel trains, burners, pressure vessels and electrical equipment must be done by qualified personnel following the manufacturer’s documentation and local codes. Never bypass a safety device or interlock.

Related questions

Different symptoms on your machine?

Describe the fault or upload a photo, and InduQT checks it against the manufacturer manuals. Share the result here when it helps someone else.

Ask the free troubleshooter