Siemens MPI communication hang


Thread Starter


I have a system which consist of five S7 PLC talking to each other via MPI ports. I use function X-PUT and X-GET to do the job. The problem is that after a power failure, there was two PLC which has communication failure between them. Others was okay. Then I reset (off/on) the
PLC which has the X-PUT & X-GET function. After that the Comms was back to normal.

Any one out there that can help to explain why and any solution to prevent future such occurances.


Hakan Ozevin

Probably the operating systems (versions) of the two PLC's are different from the others; they cannot be syncronised.
1) Upgrade the operating systems from Siemens web site, if this does not work:
2) Place a delay (say 4-5 secs) for the power-on phase to call the X-GET/X-PUT functions.

I hope this helps.

Roel Tijsmans

Since I don't have your program I maybe stating the obvious, but anyway:

X_Put and X_Get are asynchronous functions. They trigger on an Off to On transition of the REQ input. They do not automatically retrigger after
completion when the Req input stays high. If your program can get to a state where Req is high, but the Busy signal is 0, it might look that comunication is lost (The Error in Retval will then be the last error). This could be the case
if the program looks for a succesfull communication before clearing the Req bit. In case of error (which can happen on initial powerup of the whole system) this logic might not always work.

Hope This Helps

Roel Tijsmans
Spang Power Electronics
[email protected]