• Recent
    • Tags
    • Popular
    • Register
    • Login
    1. Home
    2. robert bouwens
    3. Topics

    Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website
    R
    • Profile
    • Following 0
    • Followers 0
    • Topics 12
    • Posts 36
    • Best 0
    • Controversial 0
    • Groups 0

    Topics created by robert bouwens

    • R

      Bug in class AcknowledgementService

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      2.7k
      Views

      R

      the missing class:

      package com.serotonin.bacnet4j.service.acknowledgement; import com.serotonin.bacnet4j.exception.BACnetServiceException; import com.serotonin.util.queue.ByteQueue; public class DeleteObjectAck extends AcknowledgementService { private static final long serialVersionUID = 3837098889443642131L; public static final byte TYPE_ID = 11; public DeleteObjectAck() { } @Override public byte getChoiceId() { return TYPE_ID; } @Override public void write(ByteQueue queue) { } DeleteObjectAck(ByteQueue queue) throws BACnetServiceException { } @Override public String toString() { return "DeleteObjectAck()"; } @Override public int hashCode() { final int PRIME = 31; int result = 1; result = PRIME * result; return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; final DeleteObjectAck other = (DeleteObjectAck) obj; if (this == other) return true; else return false; } }

      the result is not used anyway - if it fails the exception and the appr. error will be catched.

    • R

      Bug when sending segmented messages

      BACnet4J general discussion
      • • • robert bouwens
      2
      0
      Votes
      2
      Posts
      2.8k
      Views

      R

      if (segmentsRequired > request.getMaxSegmentsAccepted() || segmentsRequired > 128) throw new BACnetException("Response too big to send to device; too many segments required:" + segmentsRequired + ", accepted: " + request.getMaxSegmentsAccepted());

      above the code to determine the amount of acceptable segment messages.

      the implementation for getMaxSegmentsAccepted is wrong. it is defined as a bitmap.
      so we should change that piece of code to:

      public int getMaxSegmentsAccepted() { switch (maxSegmentsAccepted) { case 0: return 64; case 1: return 2; case 2: return 4; case 3: return 8; case 4: return 16; case 5: return 32; case 6: return 64; case 7: return 128; } // 3 bits - we can't get here return 64; }

      this is in the class ConfirmedRequest.

      regards
      robert

    • R

      ReadPropertyMultipleRequest

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      3.2k
      Views

      M

      The second piece of code is ok, but where should the first go?

    • R

      Statefull handling of the property services supported

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      3.3k
      Views

      M

      Hi Robert,

      This is all fine. There were a couple checks that weren't quite right, (e.g. SubscribeCOVRequest), but i think i found them all. Also, regarding confirmed requests i implemented in a way that i hope will work for you. Changes have been checked in.

    • R

      A small bug in the atomicwritefilerequest

      BACnet4J general discussion
      • • • robert bouwens
      8
      0
      Votes
      8
      Posts
      4.4k
      Views

      M

      Ok. I recall (but at the moment can't confirm) that there was some problem with this during testing of the original implementation, but i'll go with your version.

    • R

      Correct destination network behaviour

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      3.2k
      Views

      M

      Looks fine to me. I checked in changes that reflect your code.

    • R

      Small bug in the Datetime class

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      2.1k
      Views

      M

      You are correct. A fix has been checked in.

    • R

      Date has a smal bug

      BACnet4J general discussion
      • • • robert bouwens
      7
      0
      Votes
      7
      Posts
      2.8k
      Views

      R

      @joolz said:

      What a coincidence, ...
      hi,

      thanks for testing :-)

      regards
      robert

    • R

      Detecting a doi collision

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      1.9k
      Views

      M

      Thanks Robert. This is been added in similar form to the code base. It imposed a difference to the public interface in LocalDevice though, in that the getAddress method now take an InetAddress parameter. The equivalent code is now:

      d.getAddress(d.getDefaultLocalInetAddress())

      All code changes have been checked into CVS.

    • R

      Device object

      BACnet4J general discussion
      • • • robert bouwens
      3
      0
      Votes
      3
      Posts
      10.1k
      Views

      M

      Hi Robert,

      Yes, this is fine. I've added it to the codebase. Thanks for pointing it out.

    • R

      Testing: retry problems within bacnet4j

      BACnet4J general discussion
      • • • robert bouwens
      4
      0
      Votes
      4
      Posts
      4.7k
      Views

      M

      Throwing exceptions is fine in exception cases. What is to be avoided is throwing exceptions in normal cases. I'd say that a segment timeout should be more of an exception case, and so it is ok to throw. If segment timeouts are common, you need a better network.

    • R

      GetAddress

      BACnet4J general discussion
      • • • robert bouwens
      4
      0
      Votes
      4
      Posts
      2.6k
      Views

      R

      hi matt,

      broken means that as local address 127.0.0.1 is returned. plus the bacnet port is being used as bacnet network number.
      at least our app did not work anymore after updating from cvs. .now it should again after your latest fixes.

      best regards
      robert