Hello everyone,
Im getting this error from a connection with a Beckhoff connection (ADS). org.apache.plc4x.java.api.exceptions.PlcRuntimeException: java.util.concurrent.TimeoutException at org.apache.plc4x.java.ads.connection.AdsAbstractPlcConnection.getFromFuture(AdsAbstractPlcConnection.java:236) at org.apache.plc4x.java.ads.connection.AdsAbstractPlcConnection.lambda$mapFields$3(AdsAbstractPlcConnection.java:180) at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1705) at org.apache.plc4x.java.ads.connection.AdsAbstractPlcConnection.mapFields(AdsAbstractPlcConnection.java:163) Here is the Java code: public class App { public static void main(String[] args) throws PlcConnectionException { PlcDriverManager driver = new PlcDriverManager(); try { PlcConnection connection = driver.getConnection("ads:tcp://10.10.11.77/5.62.206.200.1.1:851"); if (connection.isConnected()) { System.out.println("CONNECTED"); if (connection.getMetadata().canRead()) { System.out.println("CAN READ"); PlcReadRequest.Builder builder = connection.readRequestBuilder(); builder.addItem("value-1", "MAIN.Rand_1:DINT"); PlcReadRequest request = builder.build(); PlcReadResponse response = request.execute().get(); } } } catch (Exception e) { e.printStackTrace(); } } } I tried with C# and the TwinCatAds.dll from beckhoff and it works. public void Open() { try { tcClient.Connect("5.62.206.200.1.1", 851); if (tcClient.IsConnected) { Console.WriteLine("CONNECTED"); BinRead = new BinaryReader(DataStream, Encoding.ASCII); PlcVariables[0] = tcClient.AddDeviceNotification("MAIN.Rand_1", DataStream, 0, 1, AdsTransMode.OnChange, 100, 0, null); tcClient.AdsNotification += new AdsNotificationEventHandler(OnNotification); } } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } private void OnNotification(object sender, AdsNotificationEventArgs e) { string strValue = string.Empty; e.DataStream.Position = e.Offset; if (e.NotificationHandle == PlcVariables[0]) { strValue = BinRead.ReadInt16().ToString(); } Console.WriteLine(strValue); } Im new with PLC4x and the Java world also [☹] Can anyone points me what I miss or doing wrong ? Patrick Boisclair Analyste - Programmeur senior / Senior Analyst Programmer [cid:image2e6ea9.PNG@40ee6c20.40b8ff8f]<https://www.noovelia.com> 462, rue des Forges, Trois-Rivières (Québec) G9A 2H5 CANADA noovelia.com<https://www.noovelia.com> [cid:imagebebcd7.PNG@74a4e072.47b1d418] "Veuillez noter ma nouvelle adresse courriel. / Please note my new email address."