Hello,
Can you send it to me via Wetransfer or another similar tool? I'd really
appreciate it.
Thanks,


El vie, 23 may 2025 a las 1:57, Christofer Dutz (<christofer.d...@c-ware.de>)
escribió:

> Hi Cesar,
>
> I could send you the TIA Portal program, that I use for testing. (It’s
> generally just a DB Block with pre-defined constant values). With that the
> issues I am having should be reproducible. As I mentioned before. I spent
> so much time trying to track them down and with my s7-light I’m no longer
> having issues, so I’ll stick with that.
>
> Just if you want to try to solve them in the s7 ... give me a ping and
> I’ll send it to you.
>
> Chris
>
> Von: Cesar Garcia <cesar.gar...@ceos.com.ve>
> Datum: Freitag, 23. Mai 2025 um 07:41
> An: dev@plc4x.apache.org <dev@plc4x.apache.org>
> Betreff: Re: [DISCUSS] Should we switch the names of the S7 drivers?
> Hi,
>
> I tried checking the connection parameters with an S7-300 and found that
> the number of transactions requested for this device is 5. From my memory,
> I remembered that the maximum is 2.
>
> Compare this parameterization with other software:
>
> 1. *KepWare*: max-amq-caller=1 max-amq-callee=1, not configurable
> 2. *DirectLink*: max-amq-caller=1 (default) max-amq-callee=1 (default)
> maximum 2
> 3. *WinCC*: max-amq-caller=2 max-amq-callee=2
> 4. *Snap7*: max-amq-caller=1 max-amq-callee=1
>
> I tested the S7 driver with max-amq-caller=1 and max-amq-callee=1, and the
> driver works without any issues,
>
> I tested the S7 driver with max-amq-caller=2 and max-amq-callee=2, and the
> driver works without any issues, but during subsequent startups, the
> following issue may appear, which points to this section of code, but don't
> crash.
>
> 1533 .handle(p -> {
> 1534 // Finish the request-transaction.
> 1535 transaction.endRequest();
> 1536
> 1537 try {
> 1538 future.complete(p);
> 1539 } catch (Exception e) {
> 1540 logger.warn("Error sending 'write' message: '{}'", e.getMessage(), e);
> 1541 }
>
> My recommendation is:
> 1. that the driver's default value for max-amq-calle and max-amq-callee be
> 1, and that the user increase it according to their requirements. This can
> be done immediately.
> 2. Check the transaction manager to evaluate why it returns "p = null." It
> should take longer since it's part of the SPI.
>
> Tomorrow I can try it with S7-400 and S7-1200 to see what results we get.
>
> My modifications, which are very few, are at
>
> https://github.com/apache/plc4x/tree/fix/s7hmux
>
> If you try it and get the same results, I'll merge it.
>
> Mis modificaciones
>
>
> I'll let you know the results.
>
> El jue, 22 may 2025 a las 15:29, Christofer Dutz (<
> christofer.d...@c-ware.de>)
> escribió:
>
> > Another result is this:
> >
> > - run number 12 of 100
> >        using order: %DB4:70:DATE, %DB4:17:USINT, %DB4:396:WSTRING(10),
> > %DB4:140:STRING(10), %DB4:914:RAW_BYTE_ARRAY[11], %DB4:2:WORD,
> > %DB4:16:SINT, %DB4:58:TIME, %DB4:1:BYTE, %DB4:138:WCHAR,
> %DB4:908:CHAR[5],
> > %DB4:0.0:BOOL, %DB4:20:UINT, %DB4:72:TIME_OF_DAY, %DB4:50:LREAL,
> > %DB4:18:INT, %DB4:26:UDINT, %DB4:136:CHAR, %DB4:46:REAL, %DB4:22:DINT,
> > %DB4:4:DWORD,
> >         - Read OK (48 ms)
> > 21:27:21.342 [plc4x-tm-thread-3] ERROR
> > o.a.p.j.s.c.DefaultNettyPlcConnection - unknown error, close the
> connection
> > java.lang.NullPointerException: Cannot invoke
> > "io.netty.channel.ChannelPromise.setUncancellable()" because
> > "entry.promise" is null
> >             at
> >
> io.netty.channel.ChannelOutboundBuffer.addFlush(ChannelOutboundBuffer.java:160)
> >             at
> >
> io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:892)
> >             at
> >
> io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1.flush(EmbeddedChannel.java:1158)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1319)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:935)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:921)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:907)
> >             at
> >
> io.netty.channel.ChannelDuplexHandler.flush(ChannelDuplexHandler.java:127)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:937)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:957)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:982)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:974)
> >             at
> >
> org.apache.plc4x.java.spi.Plc4xNettyWrapper$1.sendToWire(Plc4xNettyWrapper.java:100)
> >             at
> >
> org.apache.plc4x.java.spi.internal.DefaultSendRequestContext.handle(DefaultSendRequestContext.java:108)
> >             at
> >
> org.apache.plc4x.java.spi.internal.DefaultSendRequestContext.handle(DefaultSendRequestContext.java:1)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.lambda$42(S7ProtocolLogic.java:1533)
> >             at
> >
> org.apache.plc4x.java.spi.transaction.RequestTransactionManager$TransactionOperation.run(RequestTransactionManager.java:225)
> >             at
> >
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
> >             at
> > java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
> >             at
> >
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
> >             at
> >
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
> >             at java.base/java.lang.Thread.run(Thread.java:1583)
> > 21:27:21.347 [plc4x-tm-thread-3] WARN
> i.n.c.AbstractChannelHandlerContext
> > - Failed to mark a promise as failure because it has succeeded already:
> > DefaultChannelPromise@1161d65(success)
> > java.lang.NullPointerException: Cannot invoke
> > "io.netty.util.concurrent.Promise.tryFailure(java.lang.Throwable)"
> because
> > "p" is null
> >             at
> >
> io.netty.util.internal.PromiseNotificationUtil.tryFailure(PromiseNotificationUtil.java:64)
> >             at
> >
> io.netty.channel.ChannelOutboundBuffer.safeFail(ChannelOutboundBuffer.java:754)
> >             at
> >
> io.netty.channel.ChannelOutboundBuffer.remove0(ChannelOutboundBuffer.java:339)
> >             at
> >
> io.netty.channel.ChannelOutboundBuffer.failFlushed(ChannelOutboundBuffer.java:691)
> >             at
> >
> io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:733)
> >             at
> >
> io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:619)
> >             at
> >
> io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1.close(EmbeddedChannel.java:1103)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline$HeadContext.close(DefaultChannelPipeline.java:1299)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:755)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:733)
> >             at
> > io.netty.channel.ChannelDuplexHandler.close(ChannelDuplexHandler.java:79)
> >             at
> >
> org.apache.plc4x.java.spi.Plc4xNettyWrapper.close(Plc4xNettyWrapper.java:139)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:757)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:733)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline.close(DefaultChannelPipeline.java:943)
> >             at
> > io.netty.channel.AbstractChannel.close(AbstractChannel.java:279)
> >             at
> > io.netty.channel.embedded.EmbeddedChannel.close(EmbeddedChannel.java:608)
> >             at
> > io.netty.channel.embedded.EmbeddedChannel.close(EmbeddedChannel.java:592)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.onDisconnect(S7ProtocolLogic.java:267)
> >             at
> >
> org.apache.plc4x.java.spi.Plc4xNettyWrapper.userEventTriggered(Plc4xNettyWrapper.java:220)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:398)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:376)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.fireUserEventTriggered(AbstractChannelHandlerContext.java:368)
> >             at
> >
> io.netty.channel.ChannelInboundHandlerAdapter.userEventTriggered(ChannelInboundHandlerAdapter.java:117)
> >             at
> >
> org.apache.plc4x.java.spi.connection.DefaultNettyPlcConnection$1$1.userEventTriggered(DefaultNettyPlcConnection.java:258)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:398)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:376)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.fireUserEventTriggered(AbstractChannelHandlerContext.java:368)
> >             at
> >
> io.netty.channel.ChannelInboundHandlerAdapter.userEventTriggered(ChannelInboundHandlerAdapter.java:117)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7HMuxImpl.userEventTriggered(S7HMuxImpl.java:208)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:398)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:376)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.fireUserEventTriggered(AbstractChannelHandlerContext.java:368)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline$HeadContext.userEventTriggered(DefaultChannelPipeline.java:1375)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:396)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeUserEventTriggered(AbstractChannelHandlerContext.java:376)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline.fireUserEventTriggered(DefaultChannelPipeline.java:862)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7HPlcConnection.close(S7HPlcConnection.java:245)
> >             at
> >
> org.apache.plc4x.java.spi.connection.DefaultNettyPlcConnection$1$2.exceptionCaught(DefaultNettyPlcConnection.java:268)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:346)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:325)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:317)
> >             at
> >
> io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:143)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7HMuxImpl.exceptionCaught(S7HMuxImpl.java:156)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:346)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:325)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:317)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline$HeadContext.exceptionCaught(DefaultChannelPipeline.java:1324)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:346)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:944)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:921)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:907)
> >             at
> >
> io.netty.channel.ChannelDuplexHandler.flush(ChannelDuplexHandler.java:127)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:937)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:957)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:982)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
> >             at
> >
> io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000)
> >             at
> >
> io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:974)
> >             at
> >
> org.apache.plc4x.java.spi.Plc4xNettyWrapper$1.sendToWire(Plc4xNettyWrapper.java:100)
> >             at
> >
> org.apache.plc4x.java.spi.internal.DefaultSendRequestContext.handle(DefaultSendRequestContext.java:108)
> >             at
> >
> org.apache.plc4x.java.spi.internal.DefaultSendRequestContext.handle(DefaultSendRequestContext.java:1)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.lambda$42(S7ProtocolLogic.java:1533)
> >             at
> >
> org.apache.plc4x.java.spi.transaction.RequestTransactionManager$TransactionOperation.run(RequestTransactionManager.java:225)
> >             at
> >
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
> >             at
> > java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
> >             at
> >
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
> >             at
> >
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
> >             at java.base/java.lang.Thread.run(Thread.java:1583)
> >
> > Von: Christofer Dutz <christofer.d...@c-ware.de>
> > Datum: Donnerstag, 22. Mai 2025 um 21:25
> > An: dev@plc4x.apache.org <dev@plc4x.apache.org>
> > Betreff: AW: [DISCUSS] Should we switch the names of the S7 drivers?
> > Also running the ManualS71200DriverTest with s7 instead of s7-light
> > results in the following after several rounds:
> >
> > - run number 88 of 100
> >        using order: %DB4:908:CHAR[5], %DB4:20:UINT, %DB4:2:WORD,
> > %DB4:22:DINT, %DB4:914:RAW_BYTE_ARRAY[11], %DB4:72:TIME_OF_DAY,
> > %DB4:4:DWORD, %DB4:26:UDINT, %DB4:140:STRING(10), %DB4:70:DATE,
> > %DB4:16:SINT, %DB4:17:USINT, %DB4:138:WCHAR, %DB4:0.0:BOOL,
> > %DB4:396:WSTRING, %DB4:136:CHAR, %DB4:50:LREAL, %DB4:58:TIME,
> %DB4:18:INT,
> > %DB4:1:BYTE, %DB4:396:WSTRING(10), %DB4:140:STRING, %DB4:46:REAL,
> > Exception in thread "main" org.opentest4j.AssertionFailedError
> >             at
> > org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:46)
> >             at org.junit.jupiter.api.Assertions.fail(Assertions.java:161)
> >             at
> > org.apache.plc4x.test.manual.ManualTest.run(ManualTest.java:245)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.ManualS71200DriverTest.main(ManualS71200DriverTest.java:114)
> > Caused by: java.util.concurrent.ExecutionException:
> > org.apache.plc4x.java.api.exceptions.PlcProtocolException: Error reading
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:396)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2073)
> >             at
> > org.apache.plc4x.test.manual.ManualTest.run(ManualTest.java:193)
> >             ... 1 more
> > Caused by: org.apache.plc4x.java.api.exceptions.PlcProtocolException:
> > Error reading
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.lambda$17(S7ProtocolLogic.java:332)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2194)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.lambda$38(S7ProtocolLogic.java:1339)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
> >             at
> >
> java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2194)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic$TransactionErrorCallback.accept(S7ProtocolLogic.java:2348)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic$TransactionErrorCallback.accept(S7ProtocolLogic.java:1)
> >             at
> >
> org.apache.plc4x.java.spi.Plc4xNettyWrapper.lambda$8(Plc4xNettyWrapper.java:273)
> >             at
> >
> org.apache.plc4x.java.spi.netty.NettyHashTimerTimeoutManager.lambda$0(NettyHashTimerTimeoutManager.java:55)
> >             at
> >
> io.netty.util.HashedWheelTimer$HashedWheelTimeout.run(HashedWheelTimer.java:713)
> >             at
> >
> io.netty.util.concurrent.ImmediateExecutor.execute(ImmediateExecutor.java:34)
> >             at
> >
> io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:701)
> >             at
> >
> io.netty.util.HashedWheelTimer$HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:788)
> >             at
> > io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:501)
> >             at java.base/java.lang.Thread.run(Thread.java:1583)
> > Caused by: java.util.concurrent.TimeoutException
> >             at
> >
> org.apache.plc4x.java.spi.netty.NettyHashTimerTimeoutManager.lambda$0(NettyHashTimerTimeoutManager.java:54)
> >             ... 6 more
> >
> > Von: Christofer Dutz <christofer.d...@c-ware.de>
> > Datum: Donnerstag, 22. Mai 2025 um 20:50
> > An: dev@plc4x.apache.org <dev@plc4x.apache.org>
> > Betreff: AW: [DISCUSS] Should we switch the names of the S7 drivers?
> > Hi Cesar,
> >
> > so I just changed my test connection string in
> > ManualS71200DriverWithBlockOptimizerTest from s7-light to s7, and it
> > constantly fails on the first request.
> >
> > Reading all items together in random order
> > - run number 0 of 100
> >        using order: %DB4:914:RAW_BYTE_ARRAY[11], %DB4:58:TIME,
> > %DB4:46:REAL, %DB4:17:USINT, %DB4:138:WCHAR, %DB4:70:DATE, %DB4:4:DWORD,
> > %DB4:140:STRING(200), %DB4:908:CHAR[5], %DB4:136:CHAR, %DB4:1:BYTE,
> > %DB4:0.0:BOOL, %DB4:16:SINT, %DB4:72:TIME_OF_DAY, %DB4:2:WORD,
> > %DB4:50:LREAL, %DB4:18:INT, %DB4:396:WSTRING(100), %DB4:26:UDINT,
> > %DB4:20:UINT, %DB4:22:DINT,
> > 20:48:24.259 [plc4x-app-thread-2] WARN
> > o.a.p.j.s.r.protocol.S7ProtocolLogic - Got an error response from the
> PLC.
> > This particular response code usually indicates that we sent a too large
> > packet or would be receiving a too large one. Please report this, as this
> > is most probably a bug.
> > Exception in thread "main" org.opentest4j.AssertionFailedError: Tag:
> > %DB4:914:RAW_BYTE_ARRAY[11] ==> expected: <OK> but was: <ACCESS_DENIED>
> >             at
> >
> org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
> >             at
> >
> org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
> >             at
> > org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
> >             at
> > org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
> >             at
> > org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:1156)
> >             at
> > org.apache.plc4x.test.manual.ManualTest.run(ManualTest.java:200)
> >             at
> >
> org.apache.plc4x.java.s7.readwrite.ManualS71200DriverWithBlockOptimizerTest.main(ManualS71200DriverWithBlockOptimizerTest.java:114)
> >
> > So I guess I’ll not quite remove the light version just yet.
> >
> > Chris
> >
> > Von: Cesar Garcia <cesar.gar...@ceos.com.ve>
> > Datum: Donnerstag, 22. Mai 2025 um 19:21
> > An: dev@plc4x.apache.org <dev@plc4x.apache.org>
> > Betreff: Re: [DISCUSS] Should we switch the names of the S7 drivers?
> > Hi Chris,
> >
> > You did an excellent job with the optimizer. We'll be testing it out.
> >
> > I'll keep you posted with any details.
> >
> > Thank you very much,
> >
> > El jue, 22 may 2025 a las 11:28, Christofer Dutz (<
> > christofer.d...@c-ware.de>)
> > escribió:
> >
> > > Hi Cesar,
> > >
> > > well I guess we’ll leave them both in for now and not do any renaming
> ...
> > > the main difference, I guess is also the different default optimizer.
> > >
> > > You can currently run the S7 with the new optimizer, but you have to
> > > explicitly tell it to do so, and the S7-Light will use the new
> optimizer
> > > and you can make it use the old one, via config option.
> > > We should probably let both run for a while and I’ll inspect if I am
> > > seeing improvements with the full version. Right now I am hesitant to
> > drop
> > > the s7-light as it was such a hastle to get things runnig smoothly.
> > >
> > > Chris
> > >
> > >
> > > Von: Cesar Garcia <cesar.gar...@ceos.com.ve>
> > > Datum: Donnerstag, 22. Mai 2025 um 16:57
> > > An: dev@plc4x.apache.org <dev@plc4x.apache.org>
> > > Betreff: Re: [DISCUSS] Should we switch the names of the S7 drivers?
> > > Hi Chris,
> > >
> > > I've already tested the S7 versions and fixed a bug it was
> experiencing.
> > >
> > > I've compared both drivers (S7 and S7-light) and the failure rate is
> > > currently the same.
> > > Identifying the bug is quite difficult in both cases due to their
> > > architecture and the randomness of the occurrence.
> > > I can tell you that the bug is outside the S7Mux, so the problem isn't
> > with
> > > the driver's pub/sub capabilities.
> > >
> > > In my particular use case, a name change would affect computers that
> are
> > > currently running 24/7 at a high transfer rate, so I'm very attentive
> to
> > > the details.
> > >
> > > There are many hours of testing, and more to go, so I need to focus on
> > one
> > > problem, not two.
> > >
> > > Sorry, but -1,
> > >
> > > Best regards,
> > >
> > > El mié, 21 may 2025 a las 3:22, Christofer Dutz (<
> > > christofer.d...@c-ware.de>)
> > > escribió:
> > >
> > > > Hi all,
> > > >
> > > > as some of you might know, I recently introduced a „s7-light“ driver
> in
> > > > the S7 which is basically a stripped down version of our normal s7
> > > driver.
> > > > I did that, as I found many issues in combination with the parts that
> > > were
> > > > intended for the pub/sub stuff for some of the S7 300 models.
> > > > This resolved all of my remaining issues and seems to have resolved
> all
> > > > problems people I was in direct contect with and just now also the
> ones
> > > > with the NiFi bug.
> > > >
> > > > So my question here is: Should re rename the „s7-light“ to „s7“ and
> > > rename
> > > > the „s7“ to something „s7-pubsub“ or alike? The reason is, that I
> think
> > > > most people will try the normal „s7“ as this seems to be the place to
> > go
> > > > instead of the „light“ version. This could cause many people to run
> > into
> > > > problems. With all S7 400, 1200, 1500 and Logo models, the s7-light
> > > > currently has all you need and all you can use. Also can you use it
> > with
> > > > the 300 models. Only if you want to use this pub/sub mechanism, that
> > only
> > > > works on S7-300 does it make a difference (feature-wise) to use the
> > „s7“.
> > > >
> > > > What do you think?
> > > >
> > > > Chris
> > > >
> > > >
> > >
> > > --
> > > *CEOS Automatización, C.A.*
> > > *GALPON SERVICIO INDUSTRIALES Y NAVALES FA, C.A.,*
> > > *PISO 1, OFICINA 2, AV. RAUL LEONI, SECTOR GUAMACHITO,*
> > >
> > > *FRENTE A LA ASOCIACION DE GANADEROS,BARCELONA,EDO. ANZOATEGUI*
> > > *Ing. César García*
> > >
> > > *Cel: +58 414-760.98.95*
> > >
> > > *Hotline Técnica SIEMENS: 0800 1005080*
> > >
> > > *Email: support.aan.automat...@siemens.com
> > > <support.aan.automat...@siemens.com>*
> > >
> >
> >
> > --
> > *CEOS Automatización, C.A.*
> > *GALPON SERVICIO INDUSTRIALES Y NAVALES FA, C.A.,*
> > *PISO 1, OFICINA 2, AV. RAUL LEONI, SECTOR GUAMACHITO,*
> >
> > *FRENTE A LA ASOCIACION DE GANADEROS,BARCELONA,EDO. ANZOATEGUI*
> > *Ing. César García*
> >
> > *Cel: +58 414-760.98.95*
> >
> > *Hotline Técnica SIEMENS: 0800 1005080*
> >
> > *Email: support.aan.automat...@siemens.com
> > <support.aan.automat...@siemens.com>*
> >
>
>
> --
> *CEOS Automatización, C.A.*
> *GALPON SERVICIO INDUSTRIALES Y NAVALES FA, C.A.,*
> *PISO 1, OFICINA 2, AV. RAUL LEONI, SECTOR GUAMACHITO,*
>
> *FRENTE A LA ASOCIACION DE GANADEROS,BARCELONA,EDO. ANZOATEGUI*
> *Ing. César García*
>
> *Cel: +58 414-760.98.95*
>
> *Hotline Técnica SIEMENS: 0800 1005080*
>
> *Email: support.aan.automat...@siemens.com
> <support.aan.automat...@siemens.com>*
>


-- 
*CEOS Automatización, C.A.*
*GALPON SERVICIO INDUSTRIALES Y NAVALES FA, C.A.,*
*PISO 1, OFICINA 2, AV. RAUL LEONI, SECTOR GUAMACHITO,*

*FRENTE A LA ASOCIACION DE GANADEROS,BARCELONA,EDO. ANZOATEGUI*
*Ing. César García*

*Cel: +58 414-760.98.95*

*Hotline Técnica SIEMENS: 0800 1005080*

*Email: support.aan.automat...@siemens.com
<support.aan.automat...@siemens.com>*

Reply via email to