Hi Christofer,

thank you for the quick response and good to hear there is no specific 
technical reason. I will give it a go and come back with a PR and (probably) 
more questions :)


Regards,
Richard

-----Ursprüngliche Nachricht-----
Von: Christofer Dutz [mailto:christofer.d...@c-ware.de] 
Gesendet: Mittwoch, 4. August 2021 17:05
An: dev@plc4x.apache.org
Betreff: AW: ADS Subscriptions for >0.8

Hi Richard,

first of all, welcome and happy you like our little project :-)

There is no technical reason for us not supporting subscriptions. In general 
the only reason is that when I re-wrote the driver from 0.6 to 0.8 I switched 
from single-item requests to multi-item requests. There was some 
semi-documentation on this for read and write. However not for subscriptions. 
So this would require some reverse-engineering work and I simply didn't have 
the time for that.

I think this would definitely be something we'll be providing in the future ... 
I just can't say when I'll have the time for it. 

If this however is something you and your company need, feel free to work on 
this ... I'd be willing to be of assistance as long as the results go back into 
the open-source project. 

Or if you're willing to put a few bucks on the table this definitely can help 
shift some priorities ;-)

Chris


-----Ursprüngliche Nachricht-----
Von: Richard Meister <richard.meis...@ascon-systems.de> 
Gesendet: Mittwoch, 4. August 2021 16:30
An: dev@plc4x.apache.org
Betreff: ADS Subscriptions for >0.8

Hi everyone,

first of all, thank you for creating and maintaining this project! PLC4X helped 
us to get started with ADS in Java quickly and painlessly.

The matter of my writing is that we use subscriptions as the primary 
communication mode for ADS, so to the best of my knowledge we're bound to 
v0.6(.1). We've applied a patch to set the cycleTime in AdsTcpPlcConnection to 
zero, because otherwise we would miss changes that occur more frequently than 
once per 400ms.
Probably there are some good reasons that subscriptions do not work with the 
generated driver. I have poked a bit into the code of v0.8 and presume it is a 
restriction of the RequestTransactionManager. But before taking a deep dive 
into the code I thought I'd hear your thoughts on this first. Maybe someone can 
point me into the right direction and enable me to contribute. I'm willing to 
spend time on this and I have access to a Beckhoff iPC with TwinCat 2 for 
testing.


Cheers,
Richard



Reply via email to