Troubleshooting PN/PN Coupler Slot 6 Net Configuration Error in Separate TIA Portal Projects
The Siemens PN/PN Coupler is a gateway device that links two physically independent PROFINET networks while logically separating them. It is commonly used when two controllers, two engineering teams, or two plant areas must exchange a bounded, deterministic dataset without sharing a common PROFINET domain. When the two controllers are configured in separate TIA Portal projects, the only contract between the two sides is a GSDML file exported from the producer's PROFINET network and imported into the consumer's project. A frequent failure mode in this scenario is the diagnostic message "Net configuration error - Difference between nets at slot 6" raised by the coupler or by the IO Controller. This reference documents the root cause, the diagnostic workflow, and the verified resolution for that error.
1. Problem Description
The observed symptom set is consistent across multiple field reports:
- Two PROFINET IO Controllers connected to the X1 and X2 ports of a single PN/PN Coupler.
- Each controller is engineered in a separate TIA Portal project. The X2 side (the project that "consumes" the data) is built from a GSDML of the X1 side exported by the other engineer.
- When going online, the device diagnostics show
Net configuration error - Difference between nets at slot 6, raised on both the IO Controller and the PN/PN Coupler. - Removing slot 6 from the transfer mapping clears the error but eliminates the data exchange for that slot.
- Re-importing a different GSDML breaks the coupler connection entirely.
The error message points specifically at slot 6 of the coupler's internal transfer mapping, which is the table that defines which PROFINET slots of the X1 network are exposed to the X2 network as IO data.
2. PN/PN Coupler Architecture Recap
The PN/PN Coupler (catalog number 6ES7158-3AD10-0XA0 for the current hardware revision) is a two-port PROFINET device that operates as an IO Device on both networks simultaneously. Each port is configured independently:
| Parameter | Specification |
|---|---|
| Catalog number (current) | 6ES7158-3AD10-0XA0 |
| Catalog number (predecessor) | 6ES7158-3AD01-0XA0 |
| Firmware (current) | V4.2.x |
| Max slots per network side | 16 (slot 0 is the coupler itself; slots 1-16 are transfer slots) |
| Max payload per slot | 64 bytes input + 64 bytes output |
| Max total payload per side | 256 bytes input + 256 bytes output |
| Update time | 1 ms minimum, configurable per side |
| PROFINET conformance | PROFINET IO Device on both X1 and X2 |
Each transfer slot in the mapping is a logical PROFINET slot exposed by the coupler on the opposite port. Slot 0 is reserved for the coupler's own diagnostics/identification record. The transfer mapping table (configured under Device view > PN/PN Coupler > Transfer mapping) defines for each slot the length and direction of the IO payload.
3. Root Cause: Slot-Level Configuration Mismatch
The diagnostic text "Difference between nets at slot 6" means that the IO Controller on at least one side is reporting that the IO data the coupler advertises for slot 6 does not match the IO data the IO Controller expects for slot 6. The mismatch can be in:
- Input/output length: The number of input bytes or output bytes configured for slot 6 in the transfer mapping differs from what the imported GSDML describes.
- Data status bit presence: The "Data status" checkbox appends one status bit to the input payload of the slot. If the GSDML is exported with Data status enabled and the consumer's project builds its slot table without it (or vice versa), every byte from the status bit onward is shifted by 1 bit/byte, cascading into a length mismatch at slot 6.
- Slot offset overlap: If slot N's configured length pushes the next slot's start address into slot N+1's reserved area, the PROFINET stack interprets the second slot as misaligned and reports it as a configuration difference.
- Stale or partial GSDML: The producer changed the transfer mapping after the GSDML was exported, but the consumer's project still imports the older GSDML. The slot table embedded in the GSDML no longer matches the live configuration of the coupler.
Slot 6 in particular tends to be the first failure point because it is far enough into the mapping that the user has typically configured several preceding slots by hand, and any small drift in slot length accumulates by the time slot 6 is evaluated.
4. Diagnostic Workflow
Execute the following checks in order. Each step produces a binary pass/fail result; do not proceed until the current step passes.
4.1 Capture both online diagnostics
- Open the producer's TIA Portal project, connect online to the controller, and read the diagnostics buffer of the PN/PN Coupler device. Record the slot index, channel, and the specific error code.
- Open the consumer's TIA Portal project, connect online, and repeat the diagnostics read on the same physical device from the opposite network port.
- Confirm that both sides report the same slot number. If they do not, the consumer's GSDML is for a different revision of the transfer mapping; re-export it.
4.2 Compare transfer mapping to GSDML
- In the producer project, open Device view > PN/PN Coupler > Transfer mapping. Screenshot every slot (1-16) with the input length, output length, and Data status column visible.
- In the consumer project, open the GSDML device's slot configuration. Compare slot-by-slot. The input length of slot 6 in the consumer's slot view must match the producer's transfer mapping exactly, and the output length must match exactly.
- If the consumer's GSDML device shows a different length for any slot, that is the failure source even if the diagnostic text only highlights slot 6.
4.3 Verify Data status state
- In the producer's project, inspect every transfer mapping slot. Note which slots have Data status enabled.
- If any slot has Data status enabled, the producer's GSDML export will encode a 1-bit/1-byte status word for that slot. The consumer's GSDML device, when placed into the slot table, must accommodate that extra byte.
- The safest engineering choice for multi-project configurations is to disable Data status on all transfer mapping slots unless the consumer's controller requires it. See PN/PN Coupler Hardware Manual for the exact slot representation.
4.4 Check byte address contiguity
- Confirm that input byte addresses are sequential with no gaps and no overlaps across slots 1 through N.
- Confirm that output byte addresses are sequential with no gaps and no overlaps across slots 1 through N.
- If the producer hand-typed addresses (e.g., slot 1 = IB4000..IB4011, slot 6 = IB4000..IB4011), the slots will collide. Re-address so that slot 6 starts immediately after slot 5 ends.
5. Resolution Procedure
The verified resolution for the field case in this article is to make the configuration of slot 6 identical in byte geometry to the configuration of slot 1 (or to whichever slot is the first in the table that the coupler accepts). The exact procedure is:
- In the producer's TIA Portal project, open Device view > PN/PN Coupler > Transfer mapping.
- Select slot 6. Re-enter the input length and output length to match slot 1 exactly. In the original case, slot 1 was 12 bytes input / 6 bytes output (or vice versa - inspect the slot 1 column to determine which direction is which); slot 6 must use the same pair of lengths.
- Do not modify slot 1.
- Compile the hardware (Hardware > Compile).
- Re-export the GSDML of the X1 PROFINET network (Devices & Networks > right-click the PN/PN Coupler > Export GSDML).
- Send the new GSDML to the consumer engineer.
- In the consumer's TIA Portal project, remove the previous GSDML device instance, import the new GSDML, drag a fresh instance into the PROFINET topology, and assign it to the IO Controller.
- Compile and download the consumer project.
- Go online and verify that the diagnostic text disappears.
6. Verification
After applying the fix, confirm the following:
- Online diagnostics for the PN/PN Coupler no longer contain "Net configuration error - Difference between nets".
- The IO Controller's device view shows the PN/PN Coupler with a green status indicator and no maintenance events.
- Forcing a slot 6 value in the producer project is visible in the consumer's process image within one PROFINET update cycle.
- The PN/PN Coupler's web server (if accessible) reports
Configuration: OKon both X1 and X2 ports. - Disconnecting the producer controller triggers the Data status bit (if enabled) to "invalid" on the consumer side, confirming end-to-end propagation.
7. Multi-Project Configuration Best Practices
Multi-project PN/PN coupling is a common source of support calls because the contract between the two projects is implicit (the GSDML file) rather than enforced by a shared project. The following practices reduce the probability of the slot 6 class of error.
| Practice | Reason |
|---|---|
| Disable Data status on every transfer mapping slot unless the consumer's PLC logic explicitly needs it | Prevents 1-bit drift that can misalign every downstream slot |
| Use the same number of bytes input and output for every slot in the transfer mapping | Simplifies the consumer's slot view and avoids per-slot asymmetry |
| Keep slot 0 reserved for the coupler; do not assign IO data to it | Slot 0 is the identification and diagnostics record, not a transfer slot |
| Re-export the GSDML after every change to the transfer mapping and version-control the GSDML file | GSDML drift is the most common source of the error |
| Document each slot's intended meaning in a shared interface specification | Catches byte-length changes before they reach the consumer |
| Match TIA Portal major versions only when unavoidable; TIA V16 ↔ V17 is supported but always re-export the GSDML after the version change | Slot representation in GSDML is version-sensitive |
| Stay below 256 bytes input + 256 bytes output total per side | Hard limit of the PN/PN Coupler; exceeding it produces a configuration error of a different class |
8. GSDML Export and Import Procedure
The following sequence produces a clean GSDML exchange between two TIA Portal projects.
8.1 Producer: Export GSDML
- Open the TIA Portal project that contains the PN/PN Coupler.
- Navigate to Devices & Networks.
- Right-click the PN/PN Coupler in the network view or device view.
- Choose Export GSDML.
- Select a versioned filename, for example
PNPN_X1_v17.gsdml. - Commit the file to the shared version-control repository.
8.2 Consumer: Import and Place GSDML
- Open the consumer's TIA Portal project.
- Options > Manage general station description files (GSD) > Source path > select the GSDML directory.
- Confirm that the new GSDML appears in the device catalog under the correct vendor folder.
- Drag the device from the catalog into the network view.
- Connect it to the IO Controller's PROFINET port.
- Assign the device name and download the device name assignment.
- Open Device view and inspect every slot. Verify the input/output lengths match the producer's transfer mapping.
- Compile and download the consumer project.
9. Transfer Mapping Example
The following table illustrates a clean, non-overlapping mapping for a four-slot exchange. Use this as a template and replace the byte counts with application values.
| Slot | Input bytes (X1 -> X2) | Output bytes (X2 -> X1) | Data status |
|---|---|---|---|
| 0 | 0 (diagnostics) | 0 (diagnostics) | Reserved |
| 1 | 12 | 6 | Off |
| 2 | 12 | 6 | Off |
| 3 | 12 | 6 | Off |
| 4 | 12 | 6 | Off |
| 5 | 0 | 0 | Off |
| 6 | 12 | 6 | Off |
| 7 | 12 | 6 | Off |
| 8-16 | 0 | 0 | Off |
Notice that slot 6 in this template has the same byte geometry as slot 1. This is the pattern that resolved the field case documented in this article.
10. Common Adjacent Errors
| Symptom | Likely cause | Corrective action |
|---|---|---|
| "Difference between nets at slot 1" | Data status mismatch on slot 1 | Disable Data status on slot 1 in the producer's transfer mapping and re-export GSDML |
| "Difference between nets at slot N" with N > 6 | Cascading length drift from an earlier slot's Data status | Disable Data status on all slots and re-export |
| Coupler unreachable after importing a new GSDML | Device name mismatch or wrong GSDML for the coupler hardware | Confirm the GSDML targets the correct catalog number; reassign the PROFINET device name |
| Diagnostic returns and clears cyclically | IO Controller is rejecting the AR; check the IO Controller's slot view against the GSDML | Re-import the GSDML and re-assign slots |
| Slot appears in producer's mapping but not in consumer's slot view | Stale GSDML | Re-export and re-import |
11. Frequently Asked Questions
What does "Difference between nets at slot 6" actually mean on a PN/PN Coupler?
It means the IO Controller has accepted an Application Relation (AR) with the coupler, but the slot configuration inside that AR does not match the slot table the IO Controller expected. The slot index in the error text (here, slot 6) is the first slot where the runtime length or the Data status flag diverges from what the IO Controller was engineered to expect. It is a configuration consistency error, not a hardware fault.
Can I fix the error by simply removing slot 6 from the transfer mapping?
Removing slot 6 silences the error, but it also removes the data exchange for that slot. The proper fix is to make slot 6's input and output byte lengths match the rest of the table and to re-export the GSDML so the consumer project is built against the corrected slot table. field reports was resolved by configuring slot 6 with the same byte geometry as slot 1.
Does the "Data status" checkbox in the transfer mapping cause this error?
Yes, it is one of the most common causes. Data status appends a 1-bit validity indicator to the input payload of the slot. If the producer enables it on one slot and the consumer's GSDML was exported before that change, the consumer's slot view is shifted by 1 bit/byte and every subsequent slot fails its length check. For multi-project configurations, the safest practice is to disable Data status on every transfer mapping slot unless the consumer's PLC logic explicitly requires it.
Do I need the same TIA Portal major version on both sides of a PN/PN Coupler?
No, mismatched major versions are supported. The original case used TIA V17 on one side and TIA V16 on the other. The GSDML is the contract between the two projects; as long as it is exported after every change to the transfer mapping and imported cleanly on the consumer side, the version difference is irrelevant.
How many slots can a PN/PN Coupler expose on each side?
Up to 16 transfer slots (slots 1 through 16) per side, with up to 64 bytes input and 64 bytes output per slot, and a hard total of 256 bytes input plus 256 bytes output per side. Slot 0 is reserved for the coupler's own diagnostics record. The current hardware revision is catalog number 6ES7158-3AD10-0XA0 with firmware V4.2.x.