diff --git a/plc4j/drivers/eip/src/main/java/org/apache/plc4x/java/eip/base/protocol/EipProtocolLogic.java b/plc4j/drivers/eip/src/main/java/org/apache/plc4x/java/eip/base/protocol/EipProtocolLogic.java index 14b26360e72..694c64e153d 100644 --- a/plc4j/drivers/eip/src/main/java/org/apache/plc4x/java/eip/base/protocol/EipProtocolLogic.java +++ b/plc4j/drivers/eip/src/main/java/org/apache/plc4x/java/eip/base/protocol/EipProtocolLogic.java @@ -811,9 +811,9 @@ private Map> decodeSingleReadResponse(CipServi CipReadResponse resp = (CipReadResponse) p; PlcResponseCode code = decodeResponseCode(resp.getStatus()); PlcValue plcValue = null; - CIPDataTypeCode type = resp.getData().getDataType(); - ByteBuf data = Unpooled.wrappedBuffer(resp.getData().getData()); if (code == PlcResponseCode.OK) { + CIPDataTypeCode type = resp.getData().getDataType(); + ByteBuf data = Unpooled.wrappedBuffer(resp.getData().getData()); plcValue = parsePlcValue((EipTag) tag, data, type); } PlcResponseItem result = new DefaultPlcResponseItem<>(code, plcValue);