What Is a Shared Device in PROFINET?
Normally one PROFINET IO device belongs to exactly one controller, but sometimes two independent applications each need part of the same physical rack. The shared-device feature makes that possible by splitting ownership at the submodule level. This page explains what a shared device is, how ownership is divided, and where it earns its keep on a real machine.
PROFINET Shared Device in one line: A shared device in PROFINET is one physical IO device whose submodules are divided between two or more IO controllers, so each controller owns and exchanges cyclic data with only its assigned submodules. It lets independent applications, such as a standard PLC and a separate safety controller, share one rack without either taking full ownership of the whole device.
Ownership Splits at the Submodule Level
In an ordinary PROFINET setup, one controller establishes an application relation to a device and owns all of its submodules. A shared device breaks that assumption: the device presents its submodules, and the engineering configuration assigns each submodule to a specific controller. Controller A might own the digital output submodules while controller B owns a subset of inputs. Each controller sees only its own submodules as owned and exchanges cyclic data with just those, while the others appear as not-owned from its perspective.
This works because PROFINET addressing already reaches down to the submodule inside a slot, the same granularity a GSDML file describes. The device supports more than one simultaneous application relation, one per owning controller, and internally arbitrates which controller drives which output. Inputs can be read by more than one controller; outputs must have exactly one owner to avoid two controllers commanding the same actuator.
Where Shared Devices Earn Their Keep
The classic case is functional safety. A single I/O device can carry both standard submodules owned by the automation PLC and safety submodules owned by a separate PROFIsafe-capable safety controller, so one physical rack serves both the control and the safety application. That reduces hardware and wiring while keeping the two applications logically independent, which is why shared device and the device's GSDML description are often discussed together.
Another case is a line divided between two machine controllers that must each read a shared set of sensors near the boundary. Rather than duplicate the sensors or run signals between panels, both controllers subscribe as owners of the input submodules they need. The design constraint to remember is the output rule: shared inputs are fine for multiple readers, but any output submodule must be owned by exactly one controller so there is never contention over a physical command.
Configuring a Shared Device Without Surprises
The feature stands or falls on configuration discipline, because two engineering projects now describe one physical rack. Both projects must agree exactly on the device's identity and layout - the device name and the slot and subslot arrangement of modules and submodules - and each project then marks the submodules it owns while declaring the rest shared or unused. Any drift between the two views, such as one project holding an outdated rack layout after a hardware change, produces faults that look like random communication errors and burn troubleshooting hours on the wrong layer.
A sequence that keeps the two projects honest:
- Document the full slot and subslot layout of the device once, and make that document the single source of truth for both teams.
- Assign every output submodule exactly one owner on paper before touching either project.
- Confirm in the GSDML and the vendor manual that the device supports the number of simultaneous application relations you need.
- Configure each controller's project with its owned submodules and the agreed view of the rest.
- Bring both controllers online and verify each shows its submodules owned and healthy before wiring logic to them.
- Repeat the paper exercise for every later hardware change, because a module added by one team is a fault source for the other.
Failure Behavior: When One Controller Drops
Each owning controller maintains its own application relation to the device, and those ARs live and die independently. If one controller loses its connection, only its submodules are affected: its outputs go to their configured substitute-value behavior, its inputs stop updating on that controller, and the other controller continues exchanging data with its own submodules undisturbed. That independence is the feature's core promise, and it is worth proving deliberately during commissioning by stopping each controller in turn and watching what the surviving one actually sees.
Diagnostics follow the same split. Alarms and channel diagnostics for a submodule are delivered to the controller that owns it, so each team troubleshoots its own I/O without wading through the other application's faults. The corollary is that device-level problems, such as a failing power supply in the shared rack, surface in both projects at once - if both controllers alarm on the same device simultaneously, look for a common physical cause rather than two coincidences.
When Shared Device Is the Wrong Tool
Not every case of two controllers needing the same data calls for a shared device. If the second controller only needs a handful of values rather than raw I/O ownership, controller-to-controller communication - one PLC exposing data for the other to consume - is simpler and does not require the device to support multiple application relations at all. If the device does not declare shared-device capability in its GSDML, duplicating a sensor or adding a small remote I/O station for the second application is often cheaper and cleaner than replacing the device to gain the feature.
And if the temptation is for two controllers to command the same actuator, the answer is to redesign the ownership, not to fight the output rule. Give the output to one controller and pass the other's request across as a signal, so exactly one application arbitrates the physical command. The case where shared device remains clearly the right call is the standard-plus-safety split, where PROFIsafe submodules belong to the safety controller and everything else to the automation PLC in one rack.
Frequently Asked Questions
Can two controllers write to the same PROFINET output?
No. In a shared device each output submodule must be owned by exactly one controller. Only inputs can be shared among multiple reading controllers. This rule prevents two applications from commanding the same physical actuator, which would create unpredictable and unsafe behavior. Ownership is fixed in the engineering configuration.
What is the most common use of a shared device?
Combining standard and safety I/O in one rack. The automation PLC owns the standard submodules while a separate safety controller owns the PROFIsafe submodules, so one physical device serves both applications independently. This saves hardware and wiring compared with separate racks while keeping the control and safety functions logically distinct.
Does a shared device need special hardware?
The device must support multiple simultaneous application relations and expose its submodules for split ownership, which its GSDML file declares. Not every IO device supports it. Check the device description and vendor manual for shared-device capability before designing around it. Both controllers must also be configured with a consistent view of the shared submodule assignment.
How many controllers can share one PROFINET device?
As many as the device supports simultaneous application relations for, which its GSDML file and vendor manual declare - it is a device capability, not a protocol constant. Two owners cover the common cases, such as an automation PLC plus a safety controller. Verify the limit for the specific device before designing the architecture around it.
Is a shared device the same as PROFINET system redundancy?
No. System redundancy (S2 or R1) gives one application two redundant controllers, where a backup takes over the same submodules if the primary fails. A shared device gives two independent applications different submodules of one device at the same time, with no takeover between them. One is about availability of a single application; the other is about splitting one rack between separate applications.
Automation services
Need help turning this into a working system?
Merobix integrates SCADA, programs Allen-Bradley and Siemens PLCs, and designs and fabricates industrial control panels.
Meeting requests are reviewed before confirmation.