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>*

Reply via email to