Anstatt Gefühlsausbrüche könntest du hier einfach mal deine Fakten präsentieren, dann hätten wir bestimmt schon die Erklärung und eine Lösung

Also: wie sieht dein Code aus? Was funktioniert nicht wie erwartet? Was erwartest du? Was passiert tatsächlich?
Sehr gerne doch...

Und entschuldigt bitte den Gefühlsausbruch, so eine IBN kann strapazieren.
Kurz zu dem was passieren müsste bzw zum genaueren Aufbau:
Ich habe als eine Art Leitsteuerung eine 319F (6ES7 307-1EA01-0AA0).
An dieser sind 75 I-Devices über eine IWlan Verbindung mit Siemens Scalance Geräten angebunden. Die 75 Device-Steuerungen waren bisher ausschließlich IM151-8F (6ES7 151-8FB01-0AB0). Von diesen 75 Device-Steuerungen wurde eine durch eine ET200SP 1514F CPU ersetzt.
Die Devices tauschen jeweils sowohl F-Signale mit dem Controller aus als auch 40Bytes (beide Richtungen) Applikationsdaten.
Hinter diesen 40 Bytes verbirgt sich sozusagen ein DB, welcher ebenfalls 40 Bytes groß ist und verschiedene, für die Leitsteuerung relevante, Daten enthält, welche ich zyklisch füttere und anschließend auf meine Ausgangsdaten schreibe welche an die Leitsteuerung geschickt werden.
Angefügt habe ich euch einmal sowohl den DB welchen ich dann in angefügter Stelle rausschreibe und die Gegenseite auf der Kopfsteuerung, wo dies verarbeitet wird.
Drum herum gibt es auf der Kopfseite noch ein paar Netzwerke, diese dienen Entweder dem Abfangen von möglichen Programmierfehlern oder sind für das Watchdog handling zuständig. Kommt dieser in bestimmten abständen nicht, wird der DB auf Null geschrieben. Also nicht weiter relevant. Das funktioniert auch weiterhin Fehlersicher.
Jetzt zum Problem:
Ich schicke dort eine Position in Form eines DINT nach oben. Es ist auch der einzige Wert der größer als ein Byte ist.
Dieser wird in der Kopfsteuerung mit einem Dummywert im entsprechenden DB belegt und eben nicht mit dem Wert welchen ich von unten rausschicke. Aus- und Eingangsperipheriedaten sind allerdings identisch, daran kann es also nicht liegen.
Das Problem habe ich nur mit der 1500er Steuerung. Allerdings ist dort alles so aufgebaut wie bei den "Bestandssteuerungen".
Ich finde weder heraus wo dieser ominöse Dummy-Wert herkommt, noch warum ich bei der neuen Steuerung die Probleme habe dass das was größer als ein Byte ist, scheinbar nicht sauber verarbeitet wird.
Alle anderen Werte/Bits und Bytes die ich mitgebe, kommen korrekt an und werden auch sauber im Ziel-DB der Kopfsteuerung abgelegt.