• F
    Fred

    Are there any plans to support BBMD in BACnet4J?

    Thanks.

    posted in BACnet4J general discussion read more
  • F
    Fred

    Matthew,

    I'm getting an exception in seroUtils.jar. Near as I can tell it occurs when there are multiple concurrent requests for values for several different slaves. The exception stack is:

    java.io.IOException: Stream closed.
    at java.net.PlainSocketImpl.available(PlainSocketImpl.java:434)
    at java.net.SocketInputStream.available(SocketInputStream.java:217)
    at java.io.BufferedInputStream.available(BufferedInputStream.java:381)
    at com.serotonin.io.InputStreamListener.run(InputStreamListener.java:67)

    The only way it appears I can correct the problem is to restart the application and everything will work fine so long as I don't hammer the requests concurrently.

    Have you seen this before?

    The version of Modbus4J is 1.02.

    Regards,
    Fred

    posted in Modbus4J general discussion read more
  • F
    Fred

    Matthew,

    Can you tell me what prompted you to change the licensing for Bacnet4J and Modbus4J from LGPL to GPL v3?

    Is there another way these products can be licensed other than GPL v3?

    Regards,
    Fred

    posted in BACnet4J general discussion read more
  • F
    Fred

    Matthew,

    I've been doing a bit of testing and I hit a NPE in SequenceOf.java.

    Here's a little background:

    I give my user the ability to add/remove sensors (analog or binary inputs) they want exposed through BACnet. So let's say I create 10 bacnet objects I add to my local device. Everything is fine. I hit my slave server with a BACnet browser and I can see everything as expected. If I delete any number of bacnet objects using removeObject on the local device and then run the scan again from my BACnet browser, I get the exception.

    Here is the full stack trace:

    java.lang.NullPointerException
    	at com.serotonin.bacnet4j.type.constructed.SequenceOf.write(SequenceOf.java:49)
    	at com.serotonin.bacnet4j.type.constructed.BaseType.write(BaseType.java:33)
    	at com.serotonin.bacnet4j.type.Encodable.writeEncodable(Encodable.java:272)
    	at com.serotonin.bacnet4j.type.constructed.ReadAccessResult$Result.write(ReadAccessResult.java:114)
    	at com.serotonin.bacnet4j.type.constructed.SequenceOf.write(SequenceOf.java:49)
    	at com.serotonin.bacnet4j.type.constructed.BaseType.write(BaseType.java:33)
    	at com.serotonin.bacnet4j.type.Encodable.write(Encodable.java:191)
    	at com.serotonin.bacnet4j.type.Encodable.writeOptional(Encodable.java:205)
    	at com.serotonin.bacnet4j.type.constructed.ReadAccessResult.write(ReadAccessResult.java:45)
    	at com.serotonin.bacnet4j.type.constructed.SequenceOf.write(SequenceOf.java:49)
    	at com.serotonin.bacnet4j.type.Encodable.write(Encodable.java:162)
    	at com.serotonin.bacnet4j.service.acknowledgement.ReadPropertyMultipleAck.write(ReadPropertyMultipleAck.java:46)
    	at com.serotonin.bacnet4j.npdu.ip.IpMessageControl.sendResponse(IpMessageControl.java:239)
    	at com.serotonin.bacnet4j.npdu.ip.IpMessageControl.access$300(IpMessageControl.java:74)
    	at com.serotonin.bacnet4j.npdu.ip.IpMessageControl$IncomingMessageExecutor.runImpl(IpMessageControl.java:536)
    	at com.serotonin.bacnet4j.npdu.ip.IpMessageControl$IncomingMessageExecutor.run(IpMessageControl.java:454)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    	at java.lang.Thread.run(Thread.java:619)
    

    Regards,
    Fred

    posted in BACnet4J general discussion read more
  • F
    Fred

    Matthew,

    I'm trying to publish sensor values via BACnet. There are occasions when I cannot contact the sensor and I want to remove the current value for the bacnet object.

    I had tried to remove the present value property of the bacnet object and an exception was promptly thrown. I traced this back to the fact that the present value property is required. Ok, so I looked at the other primitive data types and saw Null. So my next thought was to set the present value to a Null value however the BACnet code doesn't like that for analog inputs.

    Is there a concept of an input not having a present value in BACnet?

    As always, thanks for the help.

    Fred

    posted in BACnet4J general discussion read more
  • F
    Fred

    Matthew,

    Do you know how big a deal it would be for Modbus4J to support both 5 digit and 6 digit addressing?

    Regards,

    Fred

    posted in Modbus4J general discussion read more
  • F
    Fred

    I plan on using both bacnet4j and modbus4j in my application. Both of these apps have dependencies on seroUtils.jar. The version of seroUtils.jar in modbus4j is significantly larger than the version in bacnet4j.
    <ul>
    <li>Are they compatible?</li>
    <li>Is the plan to maintain compatibility with the two products with respect to seroUtils.jar?</li>
    <li>Is there source or javadoc available for seroUtils.jar?</li>
    </ul>
    Thanks

    posted in Modbus4J general discussion read more
  • F
    Fred

    Is it possible to create multiple TCP slaves on the same port differentiated by slave id?

    Thanks,
    Fred

    posted in Modbus4J general discussion read more
  • F
    Fred

    Hello,

    I'm trying to understand how BACnet objects, specifically in my case Analog Inputs are addressed by consuming applications.

    BACnet4J has a helper function which creates a new object id based on the type of object and the next available id. Ok, so let's say I have a analog input that I want to expose through BACnet4J. Each time my application is run, does that same analog input instance need to map to the same BACnet object id? Or do BACnet monitor applications form dependencies on other object properties?

    To boil it all down, what information needs to remain immutable when my application is invoked to map the same analog input to a BACnet object so I behave like a traditional BACnet device to upstream consumers.

    Regards,
    Fred

    posted in BACnet4J general discussion read more
  • F
    Fred

    Are there any plans to support BBMD in BACnet4J?

    Thanks.

    posted in BACnet4J general discussion read more