{
    "proto": {
        "ID": 50,
        "VAR_SPEC": 18,
        "type": {
            "REQUEST": 1,
            "ACK": 2,
            "RESPONSE": 3,
            "USERDATA": 7
        },
        "function": {
            "CPU_SERVICE": 0,
            "READ_VAR": 4,
            "WRITE_VAR": 5,
            "DOWNLOAD_START": 26,
            "DOWNLOAD_BLOCK": 27,
            "DOWNLOAD_END": 28,
            "UPLOAD_START": 29,
            "UPLOAD_BLOCK": 30,
            "UPLOAD_END": 31,
            "PLC_CONTROL": 40,
            "PLC_STOP": 41,
            "COMM_SETUP": 240
        },
        "transport": {
            "BIT": 1,
            "BYTE": 2,
            "CHAR": 3,
            "WORD": 4,
            "INT": 5,
            "DWORD": 6,
            "DINT": 7,
            "REAL": 8,
            "DATE": 9,
            "TOD": 10,
            "TIME": 11,
            "S5TIME": 12,
            "DATE_AND_TIME": 15,
            "COUNTER": 28,
            "TIMER": 29,
            "IEC_COUNTER": 30,
            "IEC_TIMER": 31,
            "HS_COUNTER": 32,
            "LREAL": 48
        },
        "dataTransport": {
            "NULL": 0,
            "BBIT": 3,
            "BBYTE": 4,
            "BINT": 5,
            "BDINT": 6,
            "BREAL": 7,
            "BSTR": 9
        },
        "syntax": {
            "S7ANY": 16,
            "PBC_ID": 19,
            "ALARM_LOCKFREESET": 21,
            "ALARM_INDSET": 22,
            "ALARM_ACKSET": 25,
            "ALARM_QUERYREQSET": 26,
            "NOTIFY_INDSET": 28,
            "DRIVEESANY": 162,
            "DBREAD": 176,
            "1200SYM": 178,
            "NCK": 130
        },
        "area": {
            "SYSINFO": 3,
            "SYSFLAGS": 5,
            "ANAIN": 6,
            "ANAOUT": 7,
            "COUNTER": 28,
            "TIMER": 29,
            "COUNTER200": 30,
            "TIMER200": 31,
            "PERIPHALS": 128,
            "INPUTS": 129,
            "OUTPUTS": 130,
            "FLAGS": 131,
            "DB": 132,
            "DI": 133,
            "LOCAL": 134,
            "V": 135
        },
        "retval": {
            "RESERVED": 0,
            "DATA_HW_FAULT": 1,
            "DATA_ACCESS_FAULT": 3,
            "DATA_OUTOFRANGE": 5,
            "DATA_NOT_SUP": 6,
            "DATA_SIZEMISMATCH": 7,
            "DATA_ERR": 10,
            "DATA_OK": 255
        },
        "retvalDesc": {
            "0": "Reserved",
            "1": "Hardware fault",
            "3": "Accessing the object not allowed",
            "5": "Invalid address",
            "6": "Data type not supported",
            "7": "Data type inconsistent",
            "10": "Object does not exist",
            "255": "Success"
        },
        "block": {
            "type": {
                "OB": 56,
                "DB": 65,
                "SDB": 66,
                "FC": 67,
                "SFC": 68,
                "FB": 69,
                "SFB": 70
            },
            "subtype": {
                "OB": 8,
                "DB": 10,
                "SDB": 11,
                "FC": 12,
                "SFC": 13,
                "FB": 14,
                "SFB": 15
            },
            "language": {
                "AWL": 1,
                "KOP": 2,
                "FUP": 3,
                "SCL": 4,
                "DB": 5,
                "GRAPH": 6
            }
        },
        "userData": {
            "method": {
                "REQUEST": 17,
                "RESPONSE": 18
            },
            "type": {
                "PUSH": 0,
                "REQUEST": 4,
                "RESPONSE": 8
            },
            "function": {
                "MODE_TRANSITION": 0,
                "PROG_COMMAND": 1,
                "CYCLIC_DATA": 2,
                "BLOCK_FUNC": 3,
                "CPU_FUNC": 4,
                "SECURITY": 5,
                "PBC": 6,
                "TIME": 7
            },
            "subfunction": {
                "PROG_COMMAND": {
                    "REQDIAGDATA1": 1,
                    "VARTAB1": 2,
                    "ERASE": 12,
                    "READDIAGDATA": 14,
                    "REMOVEDIAGDATA": 15,
                    "FORCE": 16,
                    "REQDIAGDATA2": 19
                },
                "CYCLIC_DATA": {
                    "MEMORY": 1,
                    "UNSUBSCRIBE": 4,
                    "MEMORYDB": 5
                },
                "BLOCK_FUNC": {
                    "LIST": 1,
                    "TYPE": 2,
                    "BLOCKINFO": 3
                },
                "CPU_FUNC": {
                    "READSZL": 1,
                    "MSGS": 2,
                    "DIAGMSG": 3,
                    "ALARM8_IND": 5,
                    "NOTIFY_IND": 6,
                    "ALARM8LOCK": 7,
                    "ALARM8UNLOCK": 8,
                    "SCAN_IND": 9,
                    "ALARMACK": 11,
                    "ALARMACK_IND": 12,
                    "ALARM8LOCK_IND": 13,
                    "ALARM8UNLOCK_IND": 14,
                    "ALARMSQ_IND": 17,
                    "ALARMS_IND": 18,
                    "ALARMQUERY": 19,
                    "NOTIFY8_IND": 22
                },
                "SECURITY": {
                    "PASSWORD": 1
                },
                "PBC": {},
                "TIME": {
                    "READ": 1,
                    "SET": 2,
                    "READ_FOLLOWING": 3,
                    "SET2": 4
                }
            },
            "varTab": {
                "AREA_MB": 1,
                "AREA_MW": 2,
                "AREA_MD": 3,
                "AREA_EB": 17,
                "AREA_EW": 18,
                "AREA_ED": 19,
                "AREA_AB": 33,
                "AREA_AW": 34,
                "AREA_AD": 35,
                "AREA_PEB": 49,
                "AREA_PEW": 50,
                "AREA_PED": 51,
                "AREA_DBB": 113,
                "AREA_DBW": 114,
                "AREA_DBD": 115,
                "AREA_T": 84,
                "AREA_C": 100
            },
            "varTabType": {
                "REQUEST": 20,
                "RESPONSE": 4
            }
        },
        "error": {
            "OK": 0
        },
        "errorCodeDesc": {
            "0": "No error",
            "272": "Invalid block number",
            "273": "Invalid request length",
            "274": "Invalid parameter",
            "275": "Invalid block type",
            "276": "Block not found",
            "277": "Block already exists",
            "278": "Block is write-protected",
            "279": "The block/operating system update is too large",
            "280": "Invalid block number",
            "281": "Incorrect password entered",
            "282": "PG resource error",
            "283": "PLC resource error",
            "284": "Protocol error",
            "285": "Too many blocks (module-related restriction)",
            "286": "There is no longer a connection to the database, or S7DOS handle is invalid",
            "287": "Result buffer too small",
            "288": "End of block list",
            "320": "Insufficient memory available",
            "321": "Job cannot be processed because of a lack of resources",
            "32768": "Function already occupied",
            "32769": "The requested service cannot be performed while the block is in the current status",
            "32771": "S7 protocol error: Error occurred while transferring the block",
            "33024": "Application, general error: Service unknown to remote module",
            "33025": "Hardware fault",
            "33027": "Object access not allowed",
            "33028": "This service is not implemented on the module or a frame error was reported",
            "33029": "Invalid address",
            "33030": "Data type not supported",
            "33031": "Data type not consistent",
            "33034": "Object does not exist",
            "33284": "The type specification for the object is inconsistent",
            "33285": "A copied block already exists and is not linked",
            "33537": "Insufficient memory space or work memory on the module, or specified storage medium not accessible",
            "33538": "Too few resources available or the processor resources are not available",
            "33540": "No further parallel upload possible. There is a resource bottleneck",
            "33541": "Function not available",
            "33542": "Insufficient work memory (for copying, linking, loading AWP)",
            "33543": "Not enough retentive work memory (for copying, linking, loading AWP)",
            "33793": "S7 protocol error: Invalid service sequence (for example, loading or uploading a block)",
            "33794": "Service cannot execute owing to status of the addressed object",
            "33796": "S7 protocol: The function cannot be performed",
            "33797": "Remote block is in DISABLE state (CFB). The function cannot be performed",
            "34048": "S7 protocol error: Wrong frames",
            "34051": "Alarm from the module: Service canceled prematurely",
            "34561": "Error addressing the object on the communications partner (for example, area length error)",
            "34562": "The requested service is not supported by the module",
            "34563": "Access to object refused",
            "34564": "Access error: Object damaged",
            "53249": "Protocol error: Illegal job number",
            "53250": "Parameter error: Illegal job variant",
            "53251": "Parameter error: Debugging function not supported by module",
            "53252": "Parameter error: Illegal job status",
            "53253": "Parameter error: Illegal job termination",
            "53254": "Parameter error: Illegal link disconnection ID",
            "53255": "Parameter error: Illegal number of buffer elements",
            "53256": "Parameter error: Illegal scan rate",
            "53257": "Parameter error: Illegal number of executions",
            "53258": "Parameter error: Illegal trigger event",
            "53259": "Parameter error: Illegal trigger condition",
            "53265": "Parameter error in path of the call environment: Block does not exist",
            "53266": "Parameter error: Wrong address in block",
            "53268": "Parameter error: Block being deleted/overwritten",
            "53269": "Parameter error: Illegal tag address",
            "53270": "Parameter error: Test jobs not possible, because of errors in user program",
            "53271": "Parameter error: Illegal trigger number",
            "53285": "Parameter error: Invalid path",
            "53286": "Parameter error: Illegal access type",
            "53287": "Parameter error: This number of data blocks is not permitted",
            "53297": "Internal protocol error",
            "53298": "Parameter error: Wrong result buffer length",
            "53299": "Protocol error: Wrong job length",
            "53311": "Coding error: Error in parameter section (for example, reserve bytes not equal to 0)",
            "53313": "Data error: Illegal status list ID",
            "53314": "Data error: Illegal tag address",
            "53315": "Data error: Referenced job not found, check job data",
            "53316": "Data error: Illegal tag value, check job data",
            "53317": "Data error: Exiting the ODIS control is not allowed in HOLD",
            "53318": "Data error: Illegal measuring stage during run-time measurement",
            "53319": "Data error: Illegal hierarchy in 'Read job list'",
            "53320": "Data error: Illegal deletion ID in 'Delete job'",
            "53321": "Invalid substitute ID in 'Replace job'",
            "53322": "Error executing 'program status'",
            "53343": "Coding error: Error in data section (for example, reserve bytes not equal to 0, ...)",
            "53345": "Resource error: No memory space for job",
            "53346": "Resource error: Job list full",
            "53347": "Resource error: Trigger event occupied",
            "53348": "Resource error: Not enough memory space for one result buffer element",
            "53349": "Resource error: Not enough memory space for several  result buffer elements",
            "53350": "Resource error: The timer available for run-time measurement is occupied by another job",
            "53351": "Resource error: Too many 'modify tag' jobs active (in particular multi-processor operation)",
            "53377": "Function not permitted in current mode",
            "53378": "Mode error: Cannot exit HOLD mode",
            "53409": "Function not permitted in current protection level",
            "53410": "Function not possible at present, because a function is running that modifies memory",
            "53411": "Too many 'modify tag' jobs active on the I/O (in particular multi-processor operation)",
            "53412": "'Forcing' has already been established",
            "53413": "Referenced job not found",
            "53414": "Job cannot be disabled/enabled",
            "53415": "Job cannot be deleted, for example because it is currently being read",
            "53416": "Job cannot be replaced, for example because it is currently being read or deleted",
            "53417": "Job cannot be read, for example because it is currently being deleted",
            "53418": "Time limit exceeded in processing operation",
            "53419": "Invalid job parameters in process operation",
            "53420": "Invalid job data in process operation",
            "53421": "Operating mode already set",
            "53422": "The job was set up over a different connection and can only be handled over this connection",
            "53441": "At least one error has been detected while accessing the tag(s)",
            "53442": "Change to STOP/HOLD mode",
            "53443": "At least one error was detected while accessing the tag(s). Mode change to STOP/HOLD",
            "53444": "Timeout during run-time measurement",
            "53445": "Display of block stack inconsistent, because blocks were deleted/reloaded",
            "53446": "Job was automatically deleted as the jobs it referenced have been deleted",
            "53447": "The job was automatically deleted because STOP mode was exited",
            "53448": "'Block status' aborted because of inconsistencies between test job and running program",
            "53449": "Exit the status area by resetting OB90",
            "53450": "Exiting the status range by resetting OB90 and access error reading tags before exiting",
            "53451": "The output disable for the peripheral outputs has been activated again",
            "53452": "The amount of data for the debugging functions is restricted by the time limit",
            "53761": "Syntax error in block name",
            "53762": "Syntax error in function parameters",
            "53763": "Syntax error in block type",
            "53764": "No linked block in storage medium",
            "53765": "Linked block already exists in RAM: Conditional copying is not possible",
            "53766": "Linked block already exists in EPROM: Conditional copying is not possible",
            "53767": "Block exists in EPROM",
            "53768": "Maximum number of copied (not linked) blocks on module exceeded",
            "53769": "(At least) one of the given blocks not found on the module",
            "53770": "The maximum number of blocks that can be linked with one job was exceeded",
            "53771": "The maximum number of blocks that can be deleted with one job was exceeded",
            "53772": "OB cannot be copied because the associated priority class does not exist",
            "53773": "SDB cannot be interpreted (for example, unknown number)",
            "53774": "No (further) block available",
            "53775": "Module-specific maximum block size exceeded",
            "53776": "Invalid block number",
            "53778": "Incorrect header attribute (run-time relevant)",
            "53779": "Too many SDBs. Note the restrictions on the module being used",
            "53782": "Invalid user program - reset module",
            "53783": "Protection level specified in module properties not permitted",
            "53784": "Incorrect attribute (active/passive)",
            "53785": "Incorrect block lengths (for example, incorrect length of first section or of the whole block)",
            "53786": "Incorrect local data length or write-protection code faulty",
            "53787": "Module cannot compress or compression was interrupted early",
            "53789": "The volume of dynamic project data transferred is illegal",
            "53790": "Unable to assign parameters to a module (such as FM, CP). The system data could not be linked",
            "53792": "Invalid programming language. Note the restrictions on the module being used",
            "53793": "The system data for connections or routing are not valid",
            "53794": "The system data of the global data definition contain invalid parameters",
            "53795": "Error in instance data block for communication function block or maximum number of instance DBs exceeded",
            "53796": "The SCAN system data block contains invalid parameters",
            "53797": "The DP system data block contains invalid parameters",
            "53798": "A structural error occurred in a block",
            "53808": "A structural error occurred in a block",
            "53809": "At least one loaded OB cannot be copied because the associated priority class does not exist",
            "53810": "At least one block number of a loaded block is illegal",
            "53812": "Block exists twice in the specified memory medium or in the job",
            "53813": "The block contains an incorrect checksum",
            "53814": "The block does not contain a checksum",
            "53815": "You are about to load the block twice, i.e. a block with the same time stamp already exists on the CPU",
            "53816": "At least one of the blocks specified is not a DB",
            "53817": "At least one of the DBs specified is not available as a linked variant in the load memory",
            "53818": "At least one of the specified DBs is considerably different from the copied and linked variant",
            "53824": "Coordination rules violated",
            "53825": "The function is not permitted in the current protection level",
            "53826": "Protection violation while processing F blocks",
            "53840": "Update and module ID or version do not match",
            "53841": "Incorrect sequence of operating system components",
            "53842": "Checksum error",
            "53843": "No executable loader available; update only possible using a memory card",
            "53844": "Storage error in operating system",
            "53888": "Error compiling block in S7-300 CPU",
            "53921": "Another block function or a trigger on a block is active",
            "53922": "A trigger is active on a block. Complete the debugging function first",
            "53923": "The block is not active (linked), the block is occupied or the block is currently marked for deletion",
            "53924": "The block is already being processed by another block function",
            "53926": "It is not possible to save and change the user program simultaneously",
            "53927": "The block has the attribute 'unlinked' or is not processed",
            "53928": "An active debugging function is preventing parameters from being assigned to the CPU",
            "53929": "New parameters are being assigned to the CPU",
            "53930": "New parameters are currently being assigned to the modules",
            "53931": "The dynamic configuration limits are currently being changed",
            "53932": "A running active or deactivate assignment (SFC 12) is temporarily preventing R-KiR process",
            "53936": "An error occurred while configuring in RUN (CiR)",
            "53952": "The maximum number of technological objects has been exceeded",
            "53953": "The same technology data block already exists on the module",
            "53954": "Downloading the user program or downloading the hardware configuration is not possible",
            "54273": "Information function unavailable",
            "54274": "Information function unavailable",
            "54275": "Service has already been logged on/off (Diagnostics/PMC)",
            "54276": "Maximum number of nodes reached. No more logons possible for diagnostics/PMC",
            "54277": "Service not supported or syntax error in function parameters",
            "54278": "Required information currently unavailable",
            "54279": "Diagnostics error occurred",
            "54280": "Update aborted",
            "54281": "Error on DP bus",
            "54785": "Syntax error in function parameter",
            "54786": "Incorrect password entered",
            "54787": "The connection has already been legitimized",
            "54788": "The connection has already been enabled",
            "54789": "Legitimization not possible because password does not exist",
            "55297": "At least one tag address is invalid",
            "55298": "Specified job does not exist",
            "55299": "Illegal job status",
            "55300": "Illegal cycle time (illegal time base or multiple)",
            "55301": "No more cyclic read jobs can be set up",
            "55302": "The referenced job is in a state in which the requested function cannot be performed",
            "55303": "Function aborted due to overload, meaning executing the read cycle takes longer than the set scan cycle time",
            "56321": "Date and/or time invalid",
            "57857": "CPU is already the master",
            "57858": "Connect and update not possible due to different user program in flash module",
            "57859": "Connect and update not possible due to different firmware",
            "57860": "Connect and update not possible due to different memory configuration",
            "57861": "Connect/update aborted due to synchronization error",
            "57862": "Connect/update denied due to coordination violation",
            "61185": "S7 protocol error: Error at ID2; only 00H permitted in job",
            "61186": "S7 protocol error: Error at ID2; set of resources does not exist"
        },
        "diag": {
            "class": {
                "1": "Standard OB events",
                "2": "Synchronous errors",
                "3": "Asynchronous errors",
                "4": "Mode transitions",
                "5": "Run-time events",
                "6": "Communication events",
                "7": "Events for fail-safe and fault-tolerant systems",
                "8": "Standardized diagnostic data on modules",
                "9": "Predefined user events",
                "10": "Freely definable events",
                "11": "Freely definable events",
                "12": "Reserved",
                "13": "Reserved",
                "14": "Reserved",
                "15": "Events for modules other than CPUs"
            },
            "events": {
                "4410": "Start request for cyclic interrupt OB with special handling (S7-300 only)",
                "4437": "Status alarm for PROFIBUS DP",
                "4438": "Update interrupt for PROFIBUS DP",
                "4439": "Manufacturer interrupt for PROFIBUS DP",
                "4440": "Status interrupt for PROFINET IO",
                "4441": "Update interrupt for PROFINET IO",
                "4442": "Manufacturer interrupt for PROFINET IO",
                "4443": "IO: Profile-specific interrupt",
                "4458": "Technology synchronization interrupt",
                "4993": "Request for manual warm restart",
                "4994": "Request for automatic warm restart",
                "4995": "Request for manual hot restart",
                "4996": "Request for automatic hot restart",
                "4997": "Request for manual cold restart",
                "4998": "Request for automatic cold restart",
                "4999": "Master CPU: request for manual cold restart",
                "5000": "Master CPU: request for automatic cold restart",
                "5002": "Master CPU: request for manual warm restart",
                "5003": "Master CPU: request for automatic warm restart",
                "5004": "Standby CPU: request for manual hot restart",
                "5005": "Standby CPU: request for automatic hot restart",
                "9505": "BCD conversion error",
                "9506": "Area length error when reading",
                "9507": "Area length error when writing",
                "9508": "Area error when reading",
                "9509": "Area error when writing",
                "9510": "Timer number error",
                "9511": "Counter number error",
                "9512": "Alignment error when reading",
                "9513": "Alignment error when writing",
                "9520": "Write error when accessing the DB",
                "9521": "Write error when accessing the DI",
                "9522": "Block number error when opening a DB",
                "9523": "Block number error when opening a DI",
                "9524": "Block number error when calling an FC",
                "9525": "Block number error when calling an FB",
                "9530": "DB not loaded",
                "9532": "FC not loaded",
                "9533": "SFC not loaded",
                "9534": "FB not loaded",
                "9535": "SFB not loaded",
                "10562": "I/O access error, reading",
                "10563": "I/O access error, writing",
                "12903": "End of module reconfiguration",
                "13159": "Start of module reconfiguration",
                "13476": "PROFInet Interface DB can be addressed again",
                "13569": "Cycle time exceeded",
                "13570": "User interface (OB or FRB) request error",
                "13571": "Delay too long processing a priority class",
                "13573": "Time-of-day interrupt(s) skipped due to new clock setting",
                "13574": "Time-of-day interrupt(s) skipped when changing to RUN after HOLD",
                "13575": "Multiple OB request errors caused internal buffer overflow",
                "13576": "Synchronous cycle interrupt-timing error",
                "13577": "Interrupt loss due to excess interrupt load",
                "13578": "Resume RUN mode after CiR",
                "13579": "Technology synchronization interrupt - timing error",
                "13681": "Nesting depth too high in nesting levels",
                "13682": "Nesting depth for Master Control Relays too high",
                "13683": "Nesting depth too high after synchronous errors",
                "13684": "Nesting depth for block calls (U stack) too high",
                "13685": "Nesting depth for block calls (B stack) too high",
                "13686": "Local data allocation error",
                "13688": "Unknown instruction",
                "13690": "Jump instruction to target outside of the block",
                "13698": "Memory error detected and corrected by operating system",
                "13699": "Accumulation of detected and corrected memo errors",
                "13701": "Error in the PC operating system (only for LC RTX)",
                "13703": "Multi-bit memory error detected and corrected",
                "13729": "User interface (OB or FRB) not found",
                "13730": "OB not loaded (started by SFC or operating system due to configuration)",
                "13731": "Error when operating system accesses a block",
                "13732": "PROFInet Interface DB cannot be addressed",
                "13778": "Diagnostic entries cannot be sent at present",
                "13779": "Synchronization frames cannot be sent",
                "13780": "Illegal time jump resulting from synchronization",
                "13781": "Error adopting the synchronization time",
                "13793": "Incorrect frame ID in GD",
                "13794": "GD packet status cannot be entered in DB",
                "13795": "Frame length error in GD",
                "13796": "Illegal GD packet number received",
                "13797": "Error accessing DB in communication SFBs for configured S7 connections",
                "13798": "GD total status cannot be entered in DB",
                "14369": "BATTF: failure on at least one backup battery of the central rack, problem eliminated",
                "14370": "BAF: failure of backup voltage on central rack, problem eliminated",
                "14371": "24 volt supply failure on central rack, problem eliminated",
                "14373": "BATTF: failure on at least one backup battery of the redundant central rack, problem eliminated",
                "14374": "BAF: failure of backup voltage on redundant central rack, problem eliminated",
                "14375": "24 volt supply failure on redundant central rack, problem eliminated",
                "14385": "BATTF: failure of at least one backup battery of the expansion rack, problem eliminated",
                "14386": "BAF: failure of backup voltage on expansion rack, problem eliminated",
                "14387": "24 volt supply failure on at least one expansion rack, problem eliminated",
                "14402": "Module OK",
                "14420": "PROFINET IO interface submodule/submodule and matches the configured interface submodule/submodule",
                "14421": "PROFINET IO interface submodule/submodule inserted, but does not match the configured interface submodule/submodule",
                "14422": "PROFINET IO interface submodule/submodule inserted, but error in module parameter assignment",
                "14424": "PROFINET IO interface submodule access error corrected",
                "14433": "Module/interface module inserted, module type OK",
                "14435": "Module/interface module plugged in, but wrong module type",
                "14436": "Module/interface module plugged in, but causing problem (type ID unreadable)",
                "14437": "Module plugged in, but error in module parameter assignment",
                "14438": "Module can be addressed again, load voltage error removed",
                "14465": "Interface error leaving state",
                "14468": "Interface module plugged in",
                "14515": "I/O access error when updating the process image input table",
                "14516": "I/O access error when transferring the process image to the output modules",
                "14529": "Expansion rack operational again (1 to 21), leaving state",
                "14530": "Expansion rack operational again but mismatch between setpoint and actual configuration",
                "14532": "Distributed I/Os: station failure, leaving state",
                "14533": "Distributed I/Os: station fault, leaving state",
                "14534": "Expansion rack operational again, but error(s) in module parameter assignment",
                "14535": "DP: station operational again, but error(s) in module parameter assignment",
                "14536": "DP: station operational again, but mismatch between setpoint and actual configuration",
                "14539": "PROFINET IO station operational again",
                "14540": "PROFINET IO station error corrected",
                "14625": "BATTF: failure on at least one backup battery of the central rack",
                "14626": "BAF: failure of backup voltage on central rack",
                "14627": "24 volt supply failure on central rack",
                "14629": "BATTF: failure on at least one backup battery of the redundant central rack",
                "14630": "BAF: failure of backup voltage on redundant central rack",
                "14631": "24 volt supply failure on redundant central rack",
                "14641": "BATTF: failure of at least one backup battery of the expansion rack",
                "14642": "BAF: failure of backup voltage on expansion rack",
                "14643": "24 volt supply failure on at least one expansion rack",
                "14658": "Module error",
                "14673": "PROFINET IO submodule removed",
                "14676": "PROFINET IO interface submodule/submodule removed",
                "14689": "Module/interface module removed, cannot be addressed",
                "14694": "Module cannot be addressed, load voltage error",
                "14696": "Module reconfiguration has ended with error",
                "14724": "Interface module removed",
                "14721": "Interface error entering state",
                "14726": "Performance of an H-Sync link negatively affected",
                "14769": "I/O access error when updating the process image input table",
                "14770": "I/O access error when transferring the process image to the output modules",
                "14771": "I/O access error when updating the process image input table",
                "14772": "I/O access error when transferring the process image to the output modules",
                "14785": "Expansion rack failure (1 to 21), entering state",
                "14787": "Distributed I/Os: master system failure entering state",
                "14788": "Distributed I/Os: station failure, entering state",
                "14789": "Distributed I/Os: station fault, entering state",
                "14794": "PROFINET IO system failure",
                "14795": "PROFINET IO station failure",
                "14796": "PROFINET IO station error",
                "14797": "PROFINET IO station operational again, but expected configuration does not match actual configuration",
                "14798": "PROFINET IO station operational again, but error(s) in module parameter assignment",
                "17139": "Checksum error detected and corrected by the operating system",
                "17140": "Standby CPU: connection/update via SFC90 is locked in the master CPU",
                "17152": "Backed-up power on",
                "17153": "Mode transition from STOP to STARTUP",
                "17154": "Mode transition from STARTUP to RUN",
                "17155": "STOP caused by stop switch being activated",
                "17156": "STOP caused by PG STOP operation or by SFB 20 STOP",
                "17157": "HOLD: breakpoint reached",
                "17158": "HOLD: breakpoint exited",
                "17159": "Memory reset started by PG operation",
                "17160": "Memory reset started by switch setting",
                "17161": "Memory reset started automatically (power on not backed up)",
                "17162": "HOLD exited, transition to STOP",
                "17165": "STOP caused by other CPU in multicomputing",
                "17166": "Memory reset executed",
                "17167": "STOP on the module due to STOP on a CPU",
                "17176": "Start of CiR",
                "17177": "CiR completed",
                "17239": "Module watchdog started",
                "17240": "All modules are ready for operation",
                "17328": "Firmware update was successful",
                "17332": "Error in firmware fuse",
                "17334": "Firmware updates canceled by redundant modules",
                "17363": "STOP on standby CPU",
                "17372": "Abort during link-up with switchover",
                "17374": "Updating aborted due to monitoring time being exceeded during the n-th attempt, new update attempt initiated",
                "17375": "Updating aborted for final time due to monitoring time being exceeded after completing the maximum amount of attempts. User intervention required",
                "17376": "Change from solo mode after link-up",
                "17377": "Change from link-up after updating",
                "17378": "Change from updating to redundant mode",
                "17379": "Master CPU: change from redundant mode to solo mode",
                "17380": "Standby CPU: change from redundant mode after error-search mode",
                "17381": "Standby CPU: change from error-search mode after link-up or STOP",
                "17382": "Link-up aborted on the standby CPU",
                "17383": "Updating aborted on the standby CPU",
                "17384": "Standby CPU: change from link-up after startup",
                "17385": "Standby CPU: change from startup after updating",
                "17393": "Reserve-master switchover",
                "17394": "Coupling of incompatible H-CPUs blocked by system program",
                "17680": "STOP violation of the CPU's data range",
                "17696": "DEFECTIVE: STOP not possible",
                "17697": "DEFECTIVE: failure of instruction processing processor",
                "17698": "DEFECTIVE: failure of clock chip",
                "17699": "DEFECTIVE: failure of clock pulse generator",
                "17700": "DEFECTIVE: failure of timer update function",
                "17701": "DEFECTIVE: failure of multicomputing synchronization",
                "17703": "DEFECTIVE: failure of I/O access monitoring",
                "17704": "DEFECTIVE: failure of scan time monitoring",
                "17712": "DEFECTIVE: memory test error in internal memory",
                "17714": "DEFECTIVE: failure of core resources",
                "17718": "DEFECTIVE: switch defective",
                "17728": "STOP: Memory expansion of the internal work memory has gaps. First memory expansion too small or missing",
                "17729": "STOP caused by priority class system",
                "17730": "STOP caused by object management system",
                "17731": "STOP caused by test functions",
                "17732": "STOP caused by diagnostic system",
                "17733": "STOP caused by communication system",
                "17734": "STOP caused by CPU memory management",
                "17735": "STOP caused by process image management",
                "17736": "STOP caused by I/O management",
                "17738": "STOP caused by configuration: an OB deselected with STEP 7 was being loaded into the CPU during STARTUP",
                "17744": "DEFECTIVE: internal system error",
                "17749": "No restart possible, monitoring time elapsed",
                "17750": "STOP: memory reset request from communication system / due to data inconsistency",
                "17762": "STOP caused by programming error (OB not loaded or not possible)",
                "17763": "STOP caused by I/O access error (OB not loaded or not possible)",
                "17767": "STOP caused by H event",
                "17768": "STOP caused by time error (OB not loaded or not possible)",
                "17770": "STOP caused by diagnostic interrupt (OB not loaded or not possible)",
                "17771": "STOP caused by removing/inserting module (OB not loaded or not possible)",
                "17772": "STOP caused by CPU hardware error (OB not loaded or not possible, or no FRB)",
                "17773": "STOP caused by program sequence error (OB not loaded or not possible)",
                "17774": "STOP caused by communication error (OB not loaded or not possible)",
                "17775": "STOP caused by rack failure OB (OB not loaded or not possible)",
                "17776": "STOP caused by process interrupt (OB not loaded or not possible)",
                "17777": "STOP caused by nesting stack error",
                "17778": "STOP caused by master control relay stack error",
                "17779": "STOP caused by exceeding the nesting depth for synchronous errors",
                "17780": "STOP caused by exceeding interrupt stack nesting depth in the priority class stack",
                "17781": "STOP caused by exceeding block stack nesting depth in the priority class stack",
                "17782": "STOP caused by error when allocating the local data",
                "17784": "STOP caused by unknown opcode",
                "17786": "STOP caused by code length error",
                "17787": "STOP caused by DB not being loaded on on-board I/Os",
                "17789": "Reset/clear request because the version of the internal interface to the integrated technology was changed",
                "17791": "STOP caused by STOP command",
                "17792": "STOP: back-up buffer contents inconsistent (no transition to RUN)",
                "17808": "STOP caused by overloading the internal functions",
                "17877": "LINK-UP rejected due to mismatched CPU memory configuration of the sub-PLC",
                "17878": "LINK-UP rejected due to mismatched system program of the sub-PLC",
                "17880": "DEFECTIVE: hardware fault detected due to other error",
                "17881": "STOP due to SYNC module error",
                "17882": "STOP due to synchronization error between H CPUs",
                "17885": "LINK-UP rejected due to running test or other online functions",
                "18726": "DEFECTIVE: failure of the watchdog for I/O access",
                "18737": "STOP or DEFECTIVE: memory test error in memory submodule",
                "18739": "Checksum error",
                "18740": "DEFECTIVE: memory not available",
                "18741": "DEFECTIVE: cancelled by watchdog/processor exceptions",
                "18761": "STOP caused by continuous hardware interrupt",
                "18765": "STOP caused by I/O error",
                "18766": "STOP caused by power failure",
                "18767": "STOP caused by configuration error",
                "18777": "One or more modules not ready for operation",
                "18812": "STOP caused by integrated technology",
                "18848": "STOP caused by parameter assignment error or non-permissible variation of setpoint and actual extension: Start-up blocked",
                "18849": "STOP caused by parameter assignment error: memory reset request",
                "18850": "STOP caused by error in parameter modification: startup disabled",
                "18851": "STOP caused by error in parameter modification: memory reset request",
                "18852": "STOP: inconsistency in configuration data",
                "18853": "STOP: distributed I/Os: inconsistency in the loaded configuration information",
                "18854": "STOP: distributed I/Os: invalid configuration information",
                "18855": "STOP: distributed I/Os: no configuration information",
                "18856": "STOP: error indicated by the interface module for the distributed I/Os",
                "18865": "Firmware update data incorrect",
                "18866": "Firmware update: hardware version does not match firmware",
                "18867": "Firmware update: module type does not match firmware",
                "18896": "LINK-UP aborted due to violation of coordination rules",
                "18897": "LINK-UP/UPDATE sequence aborted",
                "18898": "Standby CPU changed to STOP due to STOP on the master CPU during link-up",
                "18900": "STOP on a master, since partner CPU is also a master (link-up error)",
                "18903": "LINK-UP rejected due to change in user program or in configuration",
                "20751": "A problem as occurred with WinLC. This problem has caused the CPU to go into STOP mode or has caused a fault in the CPU",
                "21261": "New startup information in the STOP mode",
                "21265": "Startup despite Not Ready message from module(s)",
                "21361": "Distributed I/Os: end of the synchronization with a DP master",
                "21376": "Diagnostic buffer entries of interrupt and asynchronous errors disabled",
                "21397": "Distributed I/Os: reset of a DP master",
                "21410": "Download of technology firmware successful",
                "21412": "Download of technology DB not successful",
                "21503": "Reset to factory setting",
                "21573": "Start of System reconfiguration in RUN mode",
                "21633": "All licenses for runtime software are complete again",
                "21656": "No more inconsistency with DP master systems due to CiR",
                "21829": "Start of System reconfiguration in RUN mode",
                "21889": "One or several licenses for runtime software are missing",
                "21898": "Difference between the MLFB of the configured and inserted CPU",
                "21899": "Difference in the firmware version of the configured and inserted CPU",
                "21912": "Start of possible inconsistency with DP master systems due to CiR",
                "21925": "Version conflict: internal interface with integrated technology",
                "21926": "The maximum number of technology objects has been exceeded",
                "21927": "A technology DB of this type is already present",
                "22649": "Diagnostic message from DP interface: EXTF LED off",
                "22880": "Parameter assignment error when switching",
                "22881": "Parameter assignment error",
                "22882": "Parameter assignment error preventing startup",
                "22883": "Parameter assignment error with memory reset request",
                "22886": "Parameter assignment error when switching",
                "22889": "Parameter assignment error with startup blocked",
                "22890": "PROFINET IO: IP address of an IO device already present",
                "22891": "IP address of an Ethernet interface already exists",
                "22892": "Name of an Ethernet interface already exists",
                "22893": "The existing network configuration does not mach the system requirements or configuration",
                "22905": "Diagnostic message from DP interface: EXTF LED on",
                "22908": "DP Global Control command failed or moved",
                "22944": "The interrupt can not be associated in the CPU",
                "22945": "Configuration error in the integrated technology",
                "22947": "Error when downloading the integrated technology",
                "25171": "Firmware update: End of firmware download over the network",
                "25366": "Interface error when starting programmable controller",
                "25488": "Formatting of Micro Memory Card complete",
                "25427": "Firmware update: Start of firmware download over the network",
                "25856": "Connection ID exists twice on module",
                "25857": "Connection resources inadequate",
                "25858": "Error in the connection description",
                "25872": "CFB structure error detected in instance DB when evaluating EPROM",
                "25876": "GD packet number exists twice on the module",
                "25877": "Inconsistent length specifications in GD configuration information",
                "25889": "No memory submodule and no internal memory available",
                "25890": "Illegal memory submodule: replace submodule and reset memory",
                "25891": "Memory reset request due to error accessing submodule",
                "25892": "Memory reset request due to error in block header",
                "25894": "Memory reset request due to memory replacement",
                "25895": "Memory replaced, therefore restart not possible",
                "25896": "Object handling function in the STOP/HOLD mode, no restart possible",
                "25897": "No startup possible during the \"load user program\" function",
                "25898": "No startup because block exists twice in user memory",
                "25899": "No startup because block is too long for submodule - replace submodule",
                "25900": "No startup due to illegal OB on submodule",
                "25906": "No startup because illegal configuration information on submodule",
                "25907": "Memory reset request because of invalid submodule content",
                "25908": "No startup: block exists more than once on submodule",
                "25909": "No startup: not enough memory to transfer block from submodule",
                "25910": "No startup: submodule contains an illegal block number",
                "25911": "No startup: submodule contains a block with an illegal length",
                "25912": "Local data or write-protection ID (for DB) of a block illegal for CPU",
                "25913": "Illegal command in block (detected by compiler)",
                "25914": "Memory reset request because local OB data on submodule too short",
                "25923": "No startup: illegal block type",
                "25924": "No startup: attribute \"relevant for processing\" illegal",
                "25925": "Source language illegal",
                "25926": "Maximum amount of configuration information reached",
                "25927": "Parameter assignment error assigning parameters to modules (not on P bus, cancel download)",
                "25928": "Plausibility error during block check",
                "25929": "Structure error in block",
                "25936": "A block has an error in the CRC",
                "25937": "A block has no CRC",
                "25952": "SCAN overflow",
                "26629": "Resource problem on configured connections, eliminated",
                "26753": "Interface error leaving state",
                "26885": "Resource problem on configured connections",
                "27009": "Interface error entering state",
                "29346": "Failure of a DP master or a DP master system",
                "29347": "Redundancy restored on the DP slave",
                "29403": "Safety program: safety mode disabled",
                "29408": "Loss of redundancy in communication, problem eliminated",
                "29441": "Loss of redundancy (1 of 2) due to failure of a CPU",
                "29442": "Loss of redundancy (1 of 2) due to STOP on the standby triggered by user",
                "29443": "H system (1 of 2) changed to redundant mode",
                "29475": "Discrepancy found in operating system data",
                "29489": "Standby-master switchover due to master failure",
                "29491": "Standby-master switchover due to system modification during runtime",
                "29492": "Standby-master switchover due to communication error at the synchronization module",
                "29504": "Synchronization error in user program due to elapsed wait time",
                "29505": "Synchronization error in user program due to waiting at different synchronization points",
                "29506": "Synchronization error in operating system due to waiting at different synchronization points",
                "29507": "Synchronization error in operating system due to elapsed wait time",
                "29508": "Synchronization error in operating system due to incorrect data",
                "29514": "The \"Re-enable\" job triggered by SFC 90 \"H_CTRL\" was executed",
                "29603": "Loss of redundancy on the DP slave",
                "29633": "Update process canceled",
                "29634": "Updating aborted due to monitoring time being exceeded during the n-th attempt (1 = n = max. possible number of update attempts after abort due to excessive monitoring time)",
                "29656": "Safety mode disabled",
                "29664": "Loss of redundancy in communication",
                "29659": "Safety program: safety mode enabled",
                "29917": "Safety program: Shutdown of a fail-save runtime group disabled",
                "29918": "Safety program: Shutdown of the F program disabled",
                "29919": "Start of F program initialization",
                "29984": "Error in RAM comparison",
                "29985": "Error in comparison of process image output value",
                "29986": "Error in comparison of memory bits, timers, or counters",
                "30161": "Safety program: Internal CPU error",
                "30162": "Safety program error: Cycle time time-out",
                "30166": "Data corrupted in safety program prior to the output to F I/O",
                "30167": "Data corrupted in safety program prior to the output to partner F-CPU",
                "30169": "Invalid REAL number in a DB",
                "30170": "Safety program: Error in safety data format",
                "30172": "Runtime group, internal protocol error",
                "30173": "Safety program: Shutdown of a fail-save runtime group enabled",
                "30174": "Safety program: Shutdown of the F program enabled",
                "30175": "End of F program initialization",
                "30177": "Safety program: Error in FB \"F_PLK\" or \"F_PLK_O\" or \"F_CYC_CO\" or \"F_TEST\" or \"F_TESTC\"",
                "30178": "Safety program: Area length error",
                "30802": "SYNC module inserted",
                "30805": "SYNC module eliminated",
                "30931": "Communication error between PROFIsafe and F I/O",
                "30932": "Error in safety relevant communication between F CPUs",
                "30933": "Error in safety relevant communication between F CPUs",
                "30947": "F-I/O device input channel depassivated",
                "30948": "F-I/O device output channel depassivated",
                "30949": "F-I/O device depassivated",
                "31028": "Standby-master switchover due to connection problem at the SYNC module",
                "31056": "Synchronization module missing",
                "31057": "Change at the SYNC module without Power On",
                "31058": "SYNC module removed",
                "31059": "Change at the SYNC-module without reset",
                "31060": "SYNC module: rack number assigned twice",
                "31061": "SYNC module error",
                "31062": "Illegal rack number set on SYNC module",
                "31072": "Redundant I/O: Time-out of discrepancy time at digital input, error is not yet localized",
                "31073": "Redundant I/O, digital input error: Signal change after expiration of the discrepancy time",
                "31074": "Redundant I/O: Digital input error",
                "31087": "Redundant I/O: The I/O was globally disabled",
                "31088": "Redundant I/O: Digital output error",
                "31104": "Redundant I/O: Time-out of discrepancy time at analog input",
                "31105": "Redundant I/O: Analog input error",
                "31120": "Redundant I/O: Analog output error",
                "31187": "Communication error between PROFIsafe and F I/O",
                "31188": "Error in safety relevant communication between F CPUs",
                "31189": "Error in safety relevant communication between F CPUs",
                "31203": "F-I/O device input channel passivated",
                "31204": "F-I/O device output channel passivated",
                "31205": "F-I/O device passivated",
                "31206": "Inconsistent safety program",
                "31207": "Simulation block (F system block) loaded",
                "32768": "Module fault/OK",
                "32769": "Internal error",
                "32770": "External error",
                "32771": "Channel error",
                "32772": "No external auxiliary voltage",
                "32773": "No front connector",
                "32774": "No parameter assignment",
                "32775": "Incorrect parameters in module",
                "32816": "User submodule incorrect/not found",
                "32817": "Communication problem",
                "32818": "Operating mode: RUN/STOP (STOP: entering state, RUN: leaving state)",
                "32819": "Time monitoring responded (watchdog)",
                "32820": "Internal module power failure",
                "32821": "BATTF: battery exhausted",
                "32822": "Total backup failed",
                "32832": "Expansion rack failed",
                "32833": "Processor failure",
                "32834": "EPROM error",
                "32835": "RAM error",
                "32836": "ADC/DAC error",
                "32837": "Fuse blown",
                "32838": "Hardware interrupt lost Any",
                "32848": "Configuration/parameter assignment error",
                "32849": "Common mode error",
                "32850": "Short circuit to phase",
                "32851": "Short circuit to ground",
                "32852": "Wire break",
                "32853": "Reference channel error",
                "32854": "Below measuring range",
                "32855": "Above measuring range Analog input",
                "32864": "Configuration/parameter assignment error",
                "32865": "Common mode error",
                "32866": "Short circuit to phase",
                "32867": "Short circuit to ground",
                "32868": "Wire break",
                "32870": "No load voltage",
                "32880": "Configuration/parameter assignment error",
                "32881": "Chassis ground fault",
                "32882": "Short circuit to phase (sensor)",
                "32883": "Short circuit to ground (sensor)",
                "32884": "Wire break",
                "32885": "No sensor power supply Digital input",
                "32896": "Configuration/parameter assignment error",
                "32897": "Chassis ground fault",
                "32898": "Short circuit to phase",
                "32899": "Short circuit to ground",
                "32900": "Wire break",
                "32901": "Fuse tripped",
                "32902": "No load voltage",
                "32903": "Excess temperature Digital output",
                "32944": "Counter module, signal A faulty",
                "32945": "Counter module, signal B faulty",
                "32946": "Counter module, signal N faulty",
                "32947": "Counter module, incorrect value passed between the channels",
                "32948": "Counter module, 5.2 V sensor supply faulty",
                "32949": "Counter module, 24 V sensor supply faulty",
                "36865": "Automatic/Manual mode (coming=man,going=auto)",
                "36866": "OPEN/CLOSED, ON/OFF",
                "36867": "Manual command enable",
                "36868": "Unit protective command (OPEN/CLOSED)",
                "36869": "Process enable",
                "36870": "System protection command",
                "36871": "Process value monitoring responded",
                "36872": "Manipulated variable monitoring responded",
                "36873": "System deviation greater than permitted",
                "36874": "Limit position error",
                "36875": "Runtime error",
                "36876": "Command execution error (sequencer)",
                "36877": "Operating status running > OPEN",
                "36878": "Operating status running > CLOSED",
                "36879": "Command blocking",
                "36881": "Process status OPEN/ON",
                "36882": "Process status CLOSED/OFF",
                "36883": "Process status intermediate position",
                "36884": "Process status ON via AUTO",
                "36885": "Process status ON via manual",
                "36886": "Process status ON via protective command",
                "36887": "Process status OFF via AUTO",
                "36888": "Process status OFF via manual",
                "36889": "Process status OFF via protective command",
                "36897": "Function error on approach",
                "36898": "Function error on leaving",
                "36913": "Actuator (DE/WE) limit position OPEN",
                "36914": "Actuator (DE/WE) limit position not OPEN",
                "36915": "Actuator (DE/WE) limit position CLOSED",
                "36916": "Actuator (DE/WE) limit position not CLOSED",
                "36929": "Illegal status, tolerance time elapsed",
                "36930": "Illegal status, tolerance time not elapsed",
                "36931": "Interlock error, tolerance time = 0",
                "36932": "Interlock error, tolerance time > 0",
                "36933": "No reaction",
                "36934": "Final status exited illegally, tolerance time = 0",
                "36935": "Final status exited illegally, tolerance time > 0",
                "36944": "Upper limit of signal range USR",
                "36945": "Upper limit of measuring range UMR",
                "36946": "Lower limit of signal range LSR",
                "36947": "Lower limit of measuring range LMR",
                "36948": "Upper alarm limit UAL",
                "36949": "Upper warning limit UWL",
                "36950": "Upper tolerance limit UTL",
                "36951": "Lower tolerance limit LTL",
                "36952": "Lower warning limit LWL",
                "36953": "Lower alarm limit LAL",
                "36960": "GRAPH7 step entering/leaving",
                "36961": "GRAPH7 interlock error",
                "36962": "GRAPH7 execution error",
                "36963": "GRAPH7 error noted",
                "36964": "GRAPH7 error acknowledged",
                "36976": "Trend exceeded in positive direction",
                "36977": "Trend exceeded in negative direction",
                "36978": "No reaction",
                "36979": "Final state exited illegally",
                "36992": "Limit value exceeded, tolerance time = 0",
                "36993": "Limit value exceeded, tolerance time > 0",
                "36994": "Below limit value, tolerance time = 0",
                "36995": "Below limit value, tolerance time > 0",
                "36996": "Gradient exceeded, tolerance time = 0",
                "36997": "Gradient exceeded, tolerance time > 0",
                "36998": "Below gradient, tolerance time = 0",
                "36999": "Below gradient, tolerance time > 0",
                "37008": "User parameter assignment error entering/leaving",
                "37104": "Overflow",
                "37105": "Underflow",
                "37106": "Division by 0",
                "37107": "Illegal calculation operation"
            }
        }
    }
}