Problem Summary
An Omron Microscan MV40 vision sensor is wired into the same PROFINET segment as a Siemens SIMATIC S7-1200 CPU, an HMI, and an engineering PC. ICMP/ping succeeds from the PC to both the PLC and the camera, the PC reaches the MV40 configuration web UI, and TIA Portal V15 compiles without errors after the GSD file is imported. Despite this, the MV40 never appears under Accessible nodes in TIA Portal, the S7-1200 raises a PROFINET IO fault at startup, and the camera never enters cyclic data exchange with the controller.
This failure mode is reproducible on PROFINET IO networks where the camera is reachable at Layer-3 (ping) but has never been assigned a PROFINET device name. Because PROFINET IO is name-based at Layer-2, IP reachability alone is insufficient for the IO controller to claim the camera as an IO device.
Affected Components and Versions
| Component | Model / Version | Role |
|---|---|---|
| Vision sensor | Omron Microscan MV-40 (PROFINET model) | PROFINET IO Device |
| PLC | Siemens SIMATIC S7-1200 (CPU 1214C DC/DC/DC or DC/DC/Rly) | PROFINET IO Controller |
| Engineering | Siemens TIA Portal V15 (Update 4+ recommended), STEP 7 Professional | Configuration / commissioning |
| Firmware – PLC | Firmware V4.2 or higher (PROFINET IO controller on board) | IO controller |
| Firmware – MV-40 | Latest PROFINET-capable firmware from Omron-Microscan | IO device |
| Topology | Managed or unmanaged Ethernet switch, CAT5e/CAT6, max 100 m per segment | Physical layer |
Root Cause Analysis
PROFINET IO uses two parallel identifiers that must both be valid before the controller will start cyclic IO with a device:
-
IP address – a Layer-3 unicast address, validated by ARP and ICMP. This is what
pingand the engineering PC's browser use. - PROFINET device name – a Layer-2 identifier inside DCP (Discovery and Configuration Protocol, based on LLDP). The IO controller only opens cyclic IO to a device whose DCP name matches the configured name in the project. A device with no assigned name stays in the listener state and is invisible to the IO controller even when the IP path is healthy.
The reported symptom — PC pings the camera, PC sees the camera's web UI, but TIA Portal Accessible nodes shows no MV40 and the PLC diagnostic buffer reports a PROFINET IO station failure — is the canonical signature of an unnamed PROFINET device.
Secondary contributors frequently observed with the MV-40 and S7-1200:
- GSD file installed to the wrong TIA Portal version catalog (e.g., GSDML-Vx.y-Omron-MV40-... dated after V15 installed on V15).
- GSD import blocked by a GSD checker error on TIA Portal V15 Update 4 and earlier.
- Subnet mask mismatch — PLC on /24 (255.255.255.0), MV-40 on /16 or vice versa; PC on dual-homed interface reaches both but PROFINET IO controller rejects.
- MV-40 PROFINET interface still in DHCP/factory mode; no static IP set, causing random IP that the controller cannot ARP-resolve.
- Ethernet switch with PROFINET filtering enabled (managed switch with LLDP/PTCP blocking) — uncommon but observed on industrial switches from non-PN vendors.
Step 1 — Obtain and Install the Correct GSD File
- Open the Omron-Microscan support portal and locate the MV-40 PROFINET IO GSDML bundle (filename pattern:
GSDML-V2.3-Omron-Microscan-MV40-YYYYMMDD.xml). - Unzip the bundle to a local folder that TIA Portal can access; do not store it on a UNC path longer than 250 characters.
- In TIA Portal, from the menu bar choose Options → Manage general station description files (GSD). The dialog title is Manage general station description files. This procedure is identical between STEP 7 V15 and newer versions and is documented at Siemens: Installing the GSD file in TIA Portal.
- Browse to the source folder, select the GSDML XML, and confirm. The progress bar must reach 100% with the message Successfully installed. If you see Checker couldn't check Gsd file on TIA Portal V15, apply TIA Portal V15 Update 4 or higher or apply the resolution documented at HMS Networks: Fix GSD Checker error in TIA Portal.
- Close and restart TIA Portal so the device catalog refreshes.
Reference workflow for a related Cognex PROFINET device is shown at Cognex: Importing the GSD File into the Catalog; the menu path in TIA Portal V15 is identical.
Step 2 — Configure IP Addresses on a Common /24 Subnet
| Device | IP address | Subnet mask | PROFINET device name |
|---|---|---|---|
| S7-1200 CPU (IO controller) | 192.168.0.1 | 255.255.255.0 (/24) | plc-s71200 |
| Microscan MV-40 (IO device) | 192.168.0.2 | 255.255.255.0 (/24) | mv40-station1 |
| Engineering PC | 192.168.0.3 | 255.255.255.0 (/24) | n/a |
| HMI (TP Comfort / KTP) | 192.168.0.4 | 255.255.255.0 (/24) | hmi-panel1 |
Validate Layer-3 from the PC before touching TIA Portal:
ping 192.168.0.1 :: PLC
ping 192.168.0.2 :: MV-40
arp -a :: confirm MAC of MV-40 is cached
If ping to 192.168.0.2 returns Destination host unreachable, the MV-40 PROFINET interface is still in factory mode (no static IP). Use the Microscan AutoVISION or Visionscape configurator over the web UI (port 80 / HTTPS 443 depending on firmware) to set a static IP inside 192.168.0.0/24 before continuing.
Step 3 — Assign the PROFINET Device Name (Mandatory)
Without this step the camera will never join cyclic IO. Two supported methods exist; method A is preferred.
Method A — Assign from TIA Portal
- In the project tree, expand Devices & Networks and double-click Devices & networks.
- From the toolbar, click Online → Accessible nodes. TIA Portal broadcasts a DCP IdentifyReq. The MV-40 should appear with its MAC address even without a PROFINET name; if it does not, the GSD is not installed correctly or the switch is filtering DCP multicast.
- Right-click the MV-40 entry and choose Assign PROFINET device name.
- In the dialog, set:
-
PROFINET device name:
mv40-station1(must match exactly the name configured on the device's PROFINET interface in the project, see Step 4) - Device number / IP: confirm 192.168.0.2
-
PROFINET device name:
- Click Assign name. The MV-40 stores the name in non-volatile memory and replies with a DCP IdentifyRes.
Method B — Assign from the MV-40 Web UI
- Browse to
http://192.168.0.2, log into the MV-40 configuration page. - Navigate to Industrial Communications → PROFINET.
- Enter
mv40-station1as the station name and click Apply. The unit restarts the PROFINET stack.
Step 4 — Bind the Device in the TIA Portal Project
- Open Devices & Networks, drag the MV-40 from the hardware catalog (under Other field devices → PROFINET IO → Sensors → Omron-Microscan → MV-40) onto the PROFINET subnet.
- Click the MV-40 device, open Properties → General → PROFINET interface → Ethernet addresses:
- IP protocol: Set IP address in the project
- IP address: 192.168.0.2
- Subnet mask: 255.255.255.0
-
PROFINET device name:
mv40-station1(must match the name assigned in Step 3)
- Drag a PROFINET connection from the S7-1200 PROFINET port to the MV-40 PROFINET port. The IO controller relationship is created automatically.
- Open Device view → MV-40 → Slots. Map the slots you need — typically at least one input slot for trigger status / inspection result and one output slot for trigger command / job select. The GSD defines the available modules; do not insert modules the firmware license does not support.
- Compile (Project tree → right-click PLC → Compile → Hardware and software (rebuild all)).
- Download the project to the S7-1200.
Step 5 — Read and Clear the PLC Diagnostic Buffer
Open Online → Online & diagnostics → Diagnostic buffer on the S7-1200. Typical entries for an MV-40 communication fault:
| Event ID (hex) | Meaning | Likely cause |
|---|---|---|
| 0x011E | IO device failure (station failure) | PROFINET name mismatch or DCP timeout — re-check Step 3. |
| 0x012E | IO device: return of station | Transient — verify stability after cable/EMC fix. |
| 0x0131 | IO device: different IP address | Device has a different IP than configured in project; reassign IP from TIA Portal. |
| 0x013C | IO device: module removed / sub-slot empty | Slot configured in project but module not present in MV-40 firmware. |
| 0x0194 | PROFINET IO: AR (Application Relationship) established | Success — connection is up. |
| 0x0195 | PROFINET IO: AR released | Connection dropped; investigate cable, switch, EMC. |
After fixing the name or IP, clear the diagnostic buffer and cycle power on the MV-40. The buffer is non-volatile for the most recent events but the IO controller re-issues DCP Identify automatically on power-up of the device.
Verification
- From the project tree, click Online → Accessible nodes. The MV-40 must appear with IP 192.168.0.2 and the configured name
mv40-station1. - Click Go online on the PLC. In the project tree the MV-40 icon turns green when cyclic IO is active.
- In Online & diagnostics → PROFINET diagnostics, confirm the IO device status is OK and no Station failure is listed.
- Read the MV-40 PROFINET status word. A value of 0x0001 or similar Running code indicates cyclic IO active. Refer to the Omron Microscan MV-40 PROFINET register map in the device manual for bit assignments.
- From a watch table, force a trigger bit to the MV-40 output slot and confirm the camera executes the configured inspection job and returns the result code in the input slot.
Common Errors and Fixes
| Symptom | Root cause | Fix |
|---|---|---|
| Checker couldn't check Gsd file during GSD import | TIA Portal V15 prior to Update 4 with GSDML V2.4 | Update TIA Portal to V15.1 or V16+; or apply HMS Networks fix (linked above). |
| MV-40 not in Accessible nodes but pingable | PROFINET device name never assigned | Complete Step 3 above. |
| MV-40 visible in Accessible nodes but station fault 0x011E | Name assigned does not match project | Re-assign with identical case-sensitive name; clear PLC diagnostic buffer. |
| MV-40 PROFINET port 1 vs port 2 confusion | Name assigned to wrong physical port | Assign to the port connected to the controller's subnet. |
| IP address changes after MV-40 reboot | DHCP enabled in MV-40 PROFINET settings | Set static IP via web UI or DCP from TIA Portal. |
| Intermittent station failure 0x0195 under vibration | Loose M12 connector or improper shielding | Re-torque D-coded M12 connectors to 0.6 Nm; verify shield is bonded at one end only. |
| PLC and HMI on subnet, MV-40 offline | Managed switch blocking LLDP/DCP multicast | Enable LLDP and DCP forwarding; or use an unmanaged switch for the IO segment. |
| TIA Portal V15 hangs when opening device catalog after GSD import | Corrupt GSDML XML | Re-download from vendor; verify XML parses with an external XML validator. |
Commissioning Checklist
- All PROFINET cables shielded, shield bonded at one end, connectors torqued.
- Subnet mask identical (/24) on PLC, MV-40, HMI, PC.
- No duplicate IP addresses — confirm with
arp -afrom PC. - MV-40 firmware supports PROFINET IO; the model designation on the serial label must include -PN or PROFINET logo.
- PROFINET device name assigned and verified with Accessible nodes.
- IO controller ports in TIA Portal bound to the correct physical port of the S7-1200 (Port 1 on CPU, or CM/CP if used).
- Send clock configured (1 ms is the PROFINET default; raise to 2 ms if the MV-40 GSD specifies a minimum cycle time > 1 ms).
- Watchdog time at least 3× the send clock; default 1500 ms is acceptable.
- PLC program handles PROFINET IO fault OB (OB 82) so a single station failure does not stop the CPU.
Sample S7-1200 Code Snippet — Fault Handling
// OB 1 - main cyclic
// LADDR of MV-40 input slot = 256 (example)
// LADDR of MV-40 output slot = 256 (example)
// Read MV-40 status word
%IW256 := "MV40_Status"; // 16-bit status
%QW256 := "MV40_Control"; // 16-bit control / trigger
// Trigger inspection job 1 once per rising edge of "StartInspect"
IF "StartInspect" AND NOT "StartInspectOld" THEN
"MV40_Control".%X0 := TRUE; // Trigger bit
ELSE
"MV40_Control".%X0 := FALSE;
END_IF;
"StartInspectOld" := "StartInspect";
// OB 82 - PROFINET IO station fault
// Evaluate IO fault; raise group fault for HMI
IF #IOF <> 0 THEN
"GroupFault" := TRUE;
END_IF;
Inline Topology (SVG)
Alternate Approaches When PROFINET Stays Unstable
If the MV-40 continues to drop cyclic IO on the S7-1200 PROFINET port after name and IP verification, consider one of the following:
- External PROFINET switch module — insert a Siemens SCALANCE XB-005 or similar managed switch between PLC and MV-40 to provide port diagnostics and LLDP prioritization.
- EtherNet/IP fallback — Microscan MV-40 firmware with the EtherNet/IP stack can be wired to a CP 243-1 (S7-1200 EtherNet/IP scanner) or to a third-party gateway. This path sidesteps GSD import and PROFINET naming.
-
Modbus/TCP fallback — Older MV-40 firmware revisions support Modbus/TCP holding and input registers. Configure via the web UI, then map registers in the S7-1200 using
MB_CLIENTin the user program. - Trigger wiring — When only the trigger and pass/fail result are needed, hard-wire the MV-40 discrete trigger input to a PLC digital output and read the discrete pass/fail output directly; bypass the fieldbus entirely.
Why does TIA Portal not see my Microscan MV-40 even though ping works?
Ping tests Layer-3 IP reachability, but TIA Portal's Accessible nodes relies on PROFINET DCP at Layer-2. The MV-40 must have a PROFINET device name assigned that matches the name configured in the TIA Portal project. Open Online → Accessible nodes, right-click the camera, and choose Assign PROFINET device name. Power-cycle the MV-40 after writing the name.
What GSD file version does TIA Portal V15 accept for the MV-40?
TIA Portal V15 supports GSDML specification up to V2.3. Use the Omron-Microscan GSDML XML tagged with GSDML-V2.3 in the filename. Newer GSDML V2.4 files require TIA Portal V15.1 Update 4 or V16+; otherwise TIA Portal raises Checker couldn't check Gsd file.
How do I read the PROFINET fault from the S7-1200 diagnostic buffer?
Open Online → Online & diagnostics → Diagnostic buffer on the S7-1200. Event 0x011E means station failure (typically name mismatch), 0x0131 means IP address mismatch, and 0x0194 means AR established (success). Clear the buffer after the fix and force a reconfiguration by power-cycling the MV-40.
Can I use the Microscan MV-40 on a network with DHCP only?
No. PROFINET IO requires a static IP inside the controller's subnet. Configure a static IP on the MV-40 PROFINET interface via the web UI (Industrial Communications → PROFINET) or via DCP from TIA Portal before commissioning.
Is the Microscan MV-40 actually an Omron product?
Yes. Microscan Systems was acquired by Omron in 2017 and is operated as Omron Microscan. Service, manuals, firmware, and GSDML files for legacy MV-40 smart cameras are provided by Omron-Microscan support channels.