What could I test with this library exactly? I managed to establish a Session registration at ENIP level, but seems like the app can not decode the answer (which has Success code 0 as expected). Here is where it's stuck: https://i.imgur.com/ZDrSVTA.png
The packetSize= -1 because the packageSizeEstimator is null (why?) Etienne Le ven. 6 mars 2020 à 15:53, Otto Fowler <[email protected]> a écrit : > I would recommend using https://github.com/pjkundert/cpppo to test this > stuff to some extent. > > Using the docker container works well too. > > > > > On March 6, 2020 at 09:04:11, Christofer Dutz ([email protected]) > wrote: > > Hi Robert, > > unfortunately I wasn't able to test the ported driver before as I don't > have access to an Allen Bradley device. > I do however recall that I brought up that the protocol looked familiar to > the EtherNet/IP protocol, however seems to have differences. > So you should treat wireshark decodings with care. > > Regarding the error itself, this should use the TCP transport which uses > the NioSocketChannel which should work with the NioEventLoop, > so this error is strange. But it seems to have disappeared as you managed > to get passed this issue. > > It now seems that the problems are related to an invalid request being sent > or a configuration error on the PLC (Don't know the AB-ETH protocol > really). > > Perhaps Volker can help here. However from a look at the mspec for that > protocol, I would assume it's only partially implemented, so perhaps you > are unimplemented parts of this protocol. > > Chris > > > > Am 06.03.20, 13:00 schrieb "Robinet, Etienne" <[email protected]>: > > Hi, > After some tweaking I managed to create a right "Register Session" message > ( > https://i.imgur.com/OR9RDdd.png), but I got an error response from the PLC > ( > https://i.imgur.com/2Zm1op3.png). > Do you know what the Request should be? > > Etienne > > Le ven. 6 mars 2020 à 10:47, Julian Feinauer <[email protected] > > > a écrit : > > > Hi, > > > > you already help with your bug reports and the feedback you give! > > > > Julian > > > > Am 06.03.20, 10:45 schrieb "Robinet, Etienne" <[email protected]>: > > > > Hi Julian, > > thanks for the fast response. I would be really glad if I could help a > > bit > > on that, as far as I can. > > > > Etienne > > > > Le ven. 6 mars 2020 à 10:43, Julian Feinauer < > > [email protected]> > > a écrit : > > > > > Hi Etienne, > > > > > > sorry that you have that much issues. Perhaps @Volker Emmert can > > comment > > > on that as he implemented the driver together with @Christofer Dutz. > > > > > > Julian > > > > > > Am 06.03.20, 10:37 schrieb "Etienne Robinet" <[email protected]>: > > > > > > Really sorry for double-post, but I managed to establish a > > connection > > > by changing the port from 2222 to 44818 ( > > > > > > > https://literature.rockwellautomation.com/idc/groups/literature/documents/qr/comm-qr001_-en-e.pdf > > > ) > > > > > > I also change the url to : ab-eth:tcp://163.243.183.250 > > > And this is where the application freezes now: > > > > > > ab-eth:tcp://163.243.183.250 > > > 10:34:49.867 [main] TRACE o.a.p.j.s.c.DefaultNettyPlcConnection - > > > Channel was created, firing ChannelCreated Event > > > 10:34:49.875 [nioEventLoopGroup-2-1] DEBUG > > > o.a.p.j.a.p.AbEthProtocolLogic - Sending COTP Connection Request > > > 10:34:49.909 [nioEventLoopGroup-2-1] TRACE > > > o.a.plc4x.java.spi.Plc4xNettyWrapper - Adding Response Handler ... > > > 10:34:49.909 [nioEventLoopGroup-2-1] TRACE > > > o.a.plc4x.java.spi.Plc4xNettyWrapper - Sending to wire > > > > > > > CIPEncapsulationConnectionRequest[sessionHandle=0,status=0,senderContext={0,0,0,0,0,0,0,0},options=0] > > > > 10:34:49.920 [nioEventLoopGroup-2-1] DEBUG > > > o.a.plc4x.java.spi.Plc4xNettyWrapper - Forwarding request to plc > > > > > > > CIPEncapsulationConnectionRequest[sessionHandle=0,status=0,senderContext={0,0,0,0,0,0,0,0},options=0] > > > > 10:34:49.926 [nioEventLoopGroup-2-1] DEBUG > > io.netty.util.Recycler - > > > -Dio.netty.recycler.maxCapacityPerThread: 4096 > > > 10:34:49.926 [nioEventLoopGroup-2-1] DEBUG > > io.netty.util.Recycler - > > > -Dio.netty.recycler.maxSharedCapacityFactor: 2 > > > 10:34:49.926 [nioEventLoopGroup-2-1] DEBUG > > io.netty.util.Recycler - > > > -Dio.netty.recycler.linkCapacity: 16 > > > 10:34:49.926 [nioEventLoopGroup-2-1] DEBUG > > io.netty.util.Recycler - > > > -Dio.netty.recycler.ratio: 8 > > > 10:34:49.935 [nioEventLoopGroup-2-1] DEBUG > > > io.netty.buffer.AbstractByteBuf - -Dio.netty.buffer.checkAccessible: > > true > > > 10:34:49.935 [nioEventLoopGroup-2-1] DEBUG > > > io.netty.buffer.AbstractByteBuf - -Dio.netty.buffer.checkBounds: true > > > 10:34:49.935 [nioEventLoopGroup-2-1] DEBUG > > > i.n.util.ResourceLeakDetectorFactory - Loaded default > > ResourceLeakDetector: > > > io.netty.util.ResourceLeakDetector@385a14ab > > > 10:34:49.966 [nioEventLoopGroup-2-1] DEBUG > > > o.a.p.j.s.GeneratedDriverByteToMessageCodec - Sending bytes to PLC > > for > > > message > > > > > > > CIPEncapsulationConnectionRequest[sessionHandle=0,status=0,senderContext={0,0,0,0,0,0,0,0},options=0] > > > > as data 01010000000000000000000000000000000000000000000000000000 > > > 10:34:49.972 [nioEventLoopGroup-2-1] TRACE > > > o.a.p.j.s.GeneratedDriverByteToMessageCodec - Receiving bytes, > > trying to > > > decode Message... > > > > > > BR, > > > > > > Etienne > > > > > > On 2020/03/06 09:30:22, Etienne Robinet <[email protected]> > > wrote: > > > > Hi all, > > > > I wanted to ask how far we are on the AB-ETH driver? I have a > > > LOGIXS5580 Series PLC to test, and when I try to run the HelloWorld > > example > > > I get following error: > > > > > > > > 10:24:44.771 [nioEventLoopGroup-2-1] INFO > > > o.a.p.j.s.c.NettyChannelFactory - Unable to connect, shutting down > > worker > > > thread. > > > > org.apache.plc4x.java.api.exceptions.PlcConnectionException: > > Error > > > creating channel. > > > > at > > > > > > > org.apache.plc4x.java.spi.connection.NettyChannelFactory.createChannel(NettyChannelFactory.java:115) > > > > > at > > > > > > > org.apache.plc4x.java.spi.connection.DefaultNettyPlcConnection.connect(DefaultNettyPlcConnection.java:89) > > > > > at > > > > > > > org.apache.plc4x.java.PlcDriverManager.getConnection(PlcDriverManager.java:74) > > > > > at > > > > > > > org.apache.plc4x.java.examples.helloplc4x.HelloPlc4x.main(HelloPlc4x.java:45) > > > > > Caused by: java.lang.IllegalStateException: incompatible event > > loop > > > type: io.netty.channel.nio.NioEventLoop > > > > at > > > > > > > io.netty.channel.AbstractChannel$AbstractUnsafe.register(AbstractChannel.java:462) > > > > > at > > > > > > > io.netty.channel.SingleThreadEventLoop.register(SingleThreadEventLoop.java:87) > > > > > at > > > > > > > io.netty.channel.SingleThreadEventLoop.register(SingleThreadEventLoop.java:81) > > > > > at > > > > > > > io.netty.channel.MultithreadEventLoopGroup.register(MultithreadEventLoopGroup.java:86) > > > > > at > > > > > > > io.netty.bootstrap.AbstractBootstrap.initAndRegister(AbstractBootstrap.java:322) > > > > > at > > > io.netty.bootstrap.Bootstrap.doResolveAndConnect(Bootstrap.java:159) > > > > at io.netty.bootstrap.Bootstrap.connect(Bootstrap.java:143) > > > > at > > > > > > > org.apache.plc4x.java.spi.connection.NettyChannelFactory.createChannel(NettyChannelFactory.java:99) > > > > > ... 3 more > > > > > > > > Any ideas on where this comes from? In Studio5000 the PLC is > > on the > > > slot 4 and I am connected to a swtich on IP: 163.243.183.250 and > > here's the > > > plc4x uri: "ab-eth://163.243.183.250/". > > > > > > > > BR, > > > > > > > > Etienne > > > > > > > > > > > > > > > > > > > >
