diff --git a/plc4j/drivers/modbus/src/main/java/org/apache/plc4x/java/modbus/base/tag/ModbusTag.java b/plc4j/drivers/modbus/src/main/java/org/apache/plc4x/java/modbus/base/tag/ModbusTag.java index ba571f9ae12..2f8baa1e54d 100644 --- a/plc4j/drivers/modbus/src/main/java/org/apache/plc4x/java/modbus/base/tag/ModbusTag.java +++ b/plc4j/drivers/modbus/src/main/java/org/apache/plc4x/java/modbus/base/tag/ModbusTag.java @@ -75,7 +75,7 @@ public String getAddressString() { address += ":" + getDataType().name(); } if(!getArrayInfo().isEmpty()) { - address += "[" + getArrayInfo().get(0).getUpperBound() + "]"; + address += "[" + (getArrayInfo().get(0).getUpperBound() + 1) + "]"; } return address; } @@ -158,7 +158,7 @@ public PlcValueType getPlcValueType() { @Override public List getArrayInfo() { if(quantity != 1) { - return Collections.singletonList(new DefaultArrayInfo(0, quantity)); + return Collections.singletonList(new DefaultArrayInfo(0, quantity - 1)); } return Collections.emptyList(); } diff --git a/plc4j/drivers/modbus/src/test/java/org/apache/plc4x/java/modbus/ModbusTagTest.java b/plc4j/drivers/modbus/src/test/java/org/apache/plc4x/java/modbus/ModbusTagTest.java index 746922b2152..bf94f285919 100644 --- a/plc4j/drivers/modbus/src/test/java/org/apache/plc4x/java/modbus/ModbusTagTest.java +++ b/plc4j/drivers/modbus/src/test/java/org/apache/plc4x/java/modbus/ModbusTagTest.java @@ -39,7 +39,7 @@ private void verifyModbusTag(List tagPatterns, int allowedMax, Class expectedClass, int expectedAddressShift) { - // Ensure all tagpatterns compile to the right tag + // Ensure all tag patterns compile to the right tag for (int i = 1; i <= allowedMax; i++) { List tags = new ArrayList<>(); for (String tagPattern : tagPatterns) {