BACnetErrorException: property: missing-required-parameter
-
Hello- Any help troubleshooting this error would be greatly appreciated.
After adding and additional BACnet/IP device to an established Mango system I am starting to receive the following error not only from the new device, but from other BACnet devices on the network.
I have also noticed the following alarm from one of the systems I am reading from - "Excessive COV Subscription Updates".Also noticed the bacnet4j version is 4.1.5 vs. in the repo 4.1.7??
Thank you.
ERROR 2018-07-27T07:38:59,719 (com.serotonin.bacnet4j.event.DefaultExceptionListener.receivedException:48) - com.serotonin.bacnet4j.exception.BACnetErrorException: property: missing-required-parameter at com.serotonin.bacnet4j.type.Encodable.popEnd(Encodable.java:186) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.type.Encodable.readWrapped(Encodable.java:444) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.type.Encodable.readANY(Encodable.java:396) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.type.constructed.PropertyValue.<init>(PropertyValue.java:84) ~[bacnet4j-4.1.5.jar:?] at sun.reflect.GeneratedConstructorAccessor31.newInstance(Unknown Source) ~[?:?] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_144] at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_144] at com.serotonin.bacnet4j.type.Encodable.read(Encodable.java:230) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.type.constructed.SequenceOf.<init>(SequenceOf.java:87) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.type.Encodable.readSequenceOf(Encodable.java:309) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.service.unconfirmed.UnconfirmedCovNotificationRequest.<init>(UnconfirmedCovNotificationRequest.java:88) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.service.unconfirmed.UnconfirmedRequestService.createUnconfirmedRequestService(UnconfirmedRequestService.java:80) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.apdu.UnconfirmedRequest.parseServiceData(UnconfirmedRequest.java:89) ~[bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.transport.DefaultTransport.receiveAPDU(DefaultTransport.java:643) [bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.transport.DefaultTransport.receiveImpl(DefaultTransport.java:573) [bacnet4j-4.1.5.jar:?] at com.serotonin.bacnet4j.transport.DefaultTransport.run(DefaultTransport.java:493) [bacnet4j-4.1.5.jar:?] at java.lang.Thread.run(Thread.java:748) [?:1.8.0_144]
-
The BACnet4J 4.1.6 Release was only to update the build system and did not effect the performance of the library. We are currently in development of 4.1.7-SNAPSHOT which should be released as 4.1.7 by the end of August. So basically you aren't missing out on any features that have been released by using version 4.1.5
As for your problem, it looks like the new device is sending a message that BACnet4J doesn't understand. This is causing the Transport layer to reject it when it tries to process it. I suggest that you start by getting a Wireshark capture of the messages the new device is sending to Mango, specifically the Unconfirmed COV Notification Requests as they look to be malformed.