RequestUtils.readProperties Bacnettimeoutexception
-
We are reading present value each 1 second periodically in the thread.
refs3 = new PropertyReferences(); refs3.add(oid, PropertyIdentifier.presentValue); PropertyValues pvs3 = RequestUtils.readProperties(ld, rd, refs3, null);
Sometimes Bacnettimeoutexception error occurred.
com.serotonin.bacnet4j.exception.BACnetTimeoutException at com.serotonin.bacnet4j.transport.ServiceFutureImpl.result(ServiceFutureImpl.java:74) at com.serotonin.bacnet4j.transport.ServiceFutureImpl.get(ServiceFutureImpl.java:63) at com.serotonin.bacnet4j.util.RequestUtils.readProperties(RequestUtils.java:313)
When LocalDevice terminated and initial again error looking up
ld.terminate(); try { ld.initialize(); } catch (Exception e) { e.printStackTrace(); }
What is the problem. How can I find a solution?
Thank you
-
Hi cenk,
Have you tried increasing your Transport's timeout to a longer value? There is also some caching in the local device where it won't try to find a device again for 30 seconds (a member variable of local device) if its first attempt failed,
timeoutDeviceRetention
-
Hi,
I increased time out
ld.withAPDUTimeout(new UnsignedInteger(30000));
But result is same.
We are not using remotedevice cach of local device. Remotedevice is a variable in our class.
-
Then you should be able to drop a breakpoint in the ServiceFutureImpl method and see where that BACnet timeout exception is coming from.
But result is same.
Does it at least take longer to timeout? I do not believe the actual sending of the property request is present in the code you have shared. Nor is the configuration of the local device there. That's not a lot of information to work with.