A guy called me last month about a 1734-4IOL that would not take a channel mode change. He set it in Studio 5000, downloaded, nothing. Set it again, nothing. He was one phone call away from sending the module back as defective.
The module was fine. It was doing exactly what Rockwell documents it should do, which is refuse configuration changes while a controller owns it. That behavior has a name, it sits in publication 1734-UM020D-EN-E, and it explains more support calls than every genuine hardware failure I have seen on these put together.
An IO-Link master is not the network it plugs into
Start here, because getting this backwards costs whole afternoons. IO-Link runs between the master and the device on its port. That is the entire scope of it. The IO-Link Design Guideline from the IO-Link Consortium states that the IO-Link communication protocol does not include any definitions regarding the higher-level communication protocol, and the same document caps that segment at 20 m of line length.
Whatever runs above the master, EtherNet/IP in the case of the 1734-4IOL, is a different network with its own rules. Publication 1734-UM020D-EN-E is blunt that this module can only be used in EtherNet/IP systems. So a scanner fault upstream and a dead sensor downstream are two separate investigations, and treating them as one problem is how people end up rewiring something that was never broken.
They do grind against each other in one place. An IO-Link device has a maximum process image of 32 bytes, but the Design Guideline warns that not all IO-Link masters can pass 32 bytes per port up to the higher-level bus, and tells you to check the manufacturer's documentation for the one you bought. That is the real reason a device's data sometimes arrives as a byte array you have to decode by hand instead of as named tags.

Two networks meet at the IO-Link master, and each one fails on its own terms.
The prerequisites that decide whether the IO-Link master works at all
The 1734-4IOL is fussy about what it sits behind, and the requirement is a real gate rather than a recommendation. Publication 1734-UM020D-EN-E lists it plainly, and the firmware revisions matter more than the series numbers do.
|
What the 1734-4IOL requires |
Detail |
|
EtherNet/IP adapter, Series B |
1734-AENT or 1734-AENTR, firmware revision 5.012 or later |
|
EtherNet/IP adapter, Series C |
1734-AENT or 1734-AENTR, firmware revision 6.011 or later |
|
Software |
Studio 5000 Logix Designer version 20 or later |
|
IO-Link revision |
Operates in revision 1.1, accepts both V1.0 and V1.1 devices |
|
RPI |
20 ms default, 2 ms is the lowest allowed |
Read that revision line carefully, because it cuts both ways. The module operates in IO-Link revision 1.1 and you cannot configure it to run as revision 1.0. It still talks to your older V1.0 devices without complaint. What it will not do is give a V1.0 device a feature that only exists in 1.1, and that trips people who assume the master's capability is the device's capability. It isn't.
Implicit protection mode, and why the module refuses you
Here is the answer to the phone call I opened with. The 1734-4IOL implements what Rockwell calls implicit protection mode, a security feature meant to stop unauthorized configuration changes. When the module is in that mode, four operations get rejected outright.
|
Operation |
Not in protection mode |
In protection mode |
|
Firmware update request |
Accepted |
Rejected |
|
Module reset request |
Accepted |
Rejected |
|
Channel mode configuration |
Accepted |
Rejected |
|
IO-Link sensor configuration |
Accepted |
Rejected |
Now the part that catches everyone. Per 1734-UM020D-EN-E, the module enters protection mode as soon as I/O connections are established with the adapter or controller, and exits it as soon as that connection is stopped. There is no switch to flip and no parameter to clear. If a controller owns the module, it is protected, full stop.
Say you drop a 1734-4IOL into a running rack, go online, and try to flip channel 2 from standard input to IO-Link. The connection is up, so the module is in protection mode, so the channel mode change is rejected. Studio 5000 owes you no dramatic error about it, and the port just stays as it was. Inhibit the connection first and the same change goes through. Device discovery follows the same logic, which is why it is only available offline or with no controller connected.
I have watched two people in a row conclude the module was bad on this exact sequence. Neither was wrong about what they saw. They were just wrong about why.
Data storage, and the two conditions that quietly switch it off
Replacing a parameterized device without dragging a laptop and a vendor tool out to the machine is the whole reason to run IO-Link in the first place. On the 1734-4IOL that lives in the data storage setting, and it has four positions worth knowing apart.
|
Setting |
What it does |
|
Disable |
No data storage |
|
Backup/Restore |
Device parameter changes are copied to the IO-Link master, and that copy overwrites a replacement device that arrives on factory defaults |
|
Restore |
The master restores parameters to the device, but device-side changes are never saved back up |
|
Enable ADC |
Configuration is stored in the controller and the offline project file, then downloaded to the device on replacement with no user action |
Then come the two conditions, and this is the sentence I wish were printed on the box. To allow ADC and data storage, exact match keying has to be enabled, and only devices that support IO-Link version 1.1 support data storage at all. Miss either one and the flagship feature is off, with nothing announcing it.
Exact match keying is not a formality either. In IO-Link terms it corresponds to compatible keying, and it means the connected device must present the same vendor ID and device ID the channel was configured with. Get a mismatch and IO-Link communications are not established at all, plus a keying fault status bit sets.
How much of that the project handles for you comes down to the integration level, and there are three.
|
Integration level |
What you get in the project |
|
Generic |
Any device, no IODD file needed. SINT arrays default to 32 bytes in and out, no parameter management, and endian swapping is on you |
|
IODD Basic |
Same as Generic, except array sizes come from a registered IODD file |
|
IODD Advanced |
Rockwell and Technology Partner devices, needs a well-formed IODD. Real tag names, endian translation handled for you, parameters reloaded automatically after power loss or replacement |
If you want device replacement to be genuinely hands-off, IODD Advanced with exact match keying on V1.1 devices is the combination. Anything less and someone is going out there with a laptop.
Port class and the current budget
Two port classes exist and they are not interchangeable. Class A is the three-wire arrangement most sensors use. Class B adds a second, galvanically isolated supply for actuators that need real current, and per the IO-Link Interface and System Specification it only ever appears on five-pin M12. The 1734-4IOL takes removable terminal bases, so class B is not something you wire on this module.
|
Pin |
Class A |
Class B |
|
1 |
L+, supply positive |
L+, supply positive |
|
2 |
I/Q, unused or DI or DO |
P24, extra supply positive |
|
3 |
L-, supply negative |
L-, supply negative |
|
4 |
C/Q, IO-Link data or standard DI/DO |
C/Q, IO-Link data or standard DI/DO |
|
5 |
Not connected on the master side |
N24, extra supply reference |
The specification is direct about the hazard: a class A device that uses that fourth wire is not compatible with a class B master, which is why class B ports are supposed to be marked. Pins 2 and 5 are the whole incompatibility.
Current is the part that gets underestimated. The specification requires a master to supply at least 200 mA per class A port, and the Design Guideline is clear that devices drawing more than 200 mA cannot run on just any IO-Link master, so check the data sheet before committing. For class B the specification sets no maximum and the connector decides, with 3.5 A the recommended ceiling on standard M12.
Watch the totals, not just the per-port number. Working a planning example on a typical eight-port IO-Link master, the Design Guideline lists 200 mA on pins 1 and 3 and 150 mA on pin 4, but only 1.6 A total across all the C/Q and L+ lines together, and 3.5 A across all ports on pins 2 and 5. Per port you are fine. Load eight ports near their individual ratings and you are over the shared ceiling, and there is no fault code for arithmetic. The device browns out, resets itself, or never reaches rated output.

A sensor like the 45DMS-B8LAT1-D4 puts IO-Link on its output, so it reports over the same C/Q wire that would otherwise carry a single on-off state.
The event codes worth recognizing on sight
The master reports its own events, and a handful of them map straight onto the mistakes above. These come out of 1734-UM020D-EN-E.
|
Code |
What it means |
|
0x0010 |
No connection, or a running connection was aborted, for example by pulling a sensor. The stack retries on its own |
|
0x001E |
Short circuit detected |
|
0x0021 |
Undervoltage on the sensor power supply |
|
0x0022 |
A channel was reset |
|
0x0023 |
Fallback command completed, and the port is now in SIO input state |
|
0x0028 |
Data storage is set to Backup/Restore and a sensor was disconnected and reconnected |
|
0x0032 |
A restore download triggered after a sensor was swapped for the same part number |
|
0x0033 |
A sensor parameter was changed through module properties while in Backup/Restore |
|
0x0040, 0x0041 |
Process data input or output length does not match |
|
0x0042 |
Sensor device revision does not match |
|
0x0043 to 0x0046 |
Wrong vendor ID or device ID, reported separately for V1.1 and V1.0 sensors |
Read as a group they map this whole article. Undervoltage is your current budget. The length mismatches are the process image. The keying codes are the ID check that gates data storage. When one shows up, the IO-Link master has already told you which layer to go look at.
Frequently asked questions
Does an IO-Link master talk EtherNet/IP or Profinet by itself?
No. An IO-Link master speaks IO-Link only on its device ports, and bridges to whatever the plant runs above it. The 1734-4IOL is built for EtherNet/IP and nothing else.
What do I need to run a 1734-4IOL IO-Link master?
A 1734-AENT or 1734-AENTR adapter, Series B on firmware 5.012 or later, or Series C on firmware 6.011 or later, plus Studio 5000 Logix Designer version 20 or later.
Why does my IO-Link master reject configuration changes?
Because it is almost certainly in implicit protection mode, which it enters the moment a controller or adapter opens an I/O connection to it. Channel mode and sensor configuration are both rejected while that connection is up. Inhibit it, make the change, then restore it.
Will an older IO-Link device work on a newer IO-Link master?
Yes. The 1734-4IOL operates in revision 1.1 and accepts V1.0 and V1.1 devices both. But data storage needs a V1.1 device, so a V1.0 sensor will not give you configuration-free replacement no matter how the master is set.
Why did my device lose its parameters after replacement?
Check that data storage is not on Disable, that exact match keying is enabled, and that the device is V1.1. All three have to be true, and any one of them alone will silently break it.
Five things, not fifty
Nearly every IO-Link master problem I get called about resolves into one of these: the wrong network layer, a prerequisite that was never met, a connection holding the module in protection mode, keying that quietly disabled data storage, or a shared current limit somebody added up per port instead of per module. None of it is exotic. It is just spread across a manual most people open only once.
If you are building or extending a POINT I/O rack, we keep the 1734-4IOL IO-Link master in stock as surplus, along with the 1734-AENT and 1734-AENTR adapters it needs behind it and the terminal bases to mount it. Sensors with native IO-Link output, like the 45DMS-B8LAT1-D4, are on the shelf too.