• Recent
    • Tags
    • Popular
    • Register
    • Login

    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

    Bacnet Client Exception

    BACnet4J general discussion
    3
    15
    7.2k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      mlohbihler
      last edited by

      The property value that is being written in the response is null. I have a fix that will convert it to a BACnet Null object, but i need to confirm that this is the correct thing to do.

      Best regards,
      Matthew

      1 Reply Last reply Reply Quote 0
      • C
        cenk
        last edited by

        Thank you.What is the plan to fix this problem.

        Is the problem serious for bacnet client application?

        1 Reply Last reply Reply Quote 0
        • M
          mlohbihler
          last edited by

          You are the first to report it. Do you have details on the ReadProperty request that is being made? In particular, do you know the property that is being requested?

          Best regards,
          Matthew

          1 Reply Last reply Reply Quote 0
          • M
            mlohbihler
            last edited by

            cenk,

            The problem appears to be that a request is being made for a property whose value is null. It seems that the correct response to this situation is for an "unknown property" error to be returned to requestor. If you want to prevent the error response, make sure there is a non-null value for the property.

            I've checking in the code updates as well as a new build of the jar file.

            Best regards,
            Matthew

            1 Reply Last reply Reply Quote 0
            • C
              cenk
              last edited by

              Hi;
              I think bacnet server application query property that not defined on client side. Is it possible.

              If It is this like how can I realize this properties?

              Best Regards,

              1 Reply Last reply Reply Quote 0
              • M
                mlohbihler
                last edited by

                Set non-null values for the properties.

                Best regards,
                Matthew

                1 Reply Last reply Reply Quote 0
                • C
                  cenk
                  last edited by

                  But I don't know which properties. Which properties query from server side

                  By The way sometimes this exception throws

                  com.serotonin.bacnet4j.npdu.ip.IpMessageControl$MessageValidationAssertionException: Network messages are not supported
                  at com.serotonin.bacnet4j.npdu.ip.IpMessageControl$IncomingMessageExecutor.runImpl(IpMessageControl.java:503)
                  at com.serotonin.bacnet4j.npdu.ip.IpMessageControl$IncomingMessageExecutor.run(IpMessageControl.java:468)
                  at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
                  at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
                  at java.lang.Thread.run(Unknown Source)

                  1 Reply Last reply Reply Quote 0
                  • M
                    mlohbihler
                    last edited by

                    I don't know which properties the server is asking for either.

                    Another post explains that exception (which is really just a warning).

                    Best regards,
                    Matthew

                    1 Reply Last reply Reply Quote 0
                    • R
                      robert bouwens
                      last edited by

                      hi,

                      the serotonin stack does not 'yet' support network messages: (ipmessagecontrol.java)
                      // Network layer protocol control information. See 6.2.2
                      NPCI npci = new NPCI(queue);
                      if (npci.getVersion() != 1)
                      throw new MessageValidationAssertionException("Invalid protocol version: " + npci.getVersion());
                      if (npci.isNetworkMessage())
                      {
                      return; // silently
                      // throw new MessageValidationAssertionException("Network messages are not supported");
                      }

                      we have tons of networkmessages, so i tried to hide this.
                      if you use the add or removelistelementrequest and you see this message more often. then i know your code is buggy ;-)

                      robert

                      1 Reply Last reply Reply Quote 0
                      • M
                        mlohbihler
                        last edited by

                        Hi Robert,

                        I've implemented the silent ignoring of network messages. But i don't understand your last statement. I thought the list element stuff was fixed. What does it have to do with network messages?

                        Best regards,
                        Matthew

                        1 Reply Last reply Reply Quote 0
                        • R
                          robert bouwens
                          last edited by

                          hi matt,
                          when adding a bacnet device into the recipientlist of the device to be monitored it will try to locate the 'remote' listener.
                          in case the bacnet network is the same it send a whois to 'that' device. when the bacnet network is different, then it searches for the router with a who-is-router-to-network.
                          you remember that the getAddress used the bacnet port as network? in this case the device to be monitored isses frequently a who-is-router-to-network with parameter destination-network equal to 47808.
                          in the beginning i din't understand that why until i verified the getAddress function.

                          regards
                          robert

                          1 Reply Last reply Reply Quote 0
                          • M
                            mlohbihler
                            last edited by

                            Right. So this is fixed now, correct?

                            Best regards,
                            Matthew

                            1 Reply Last reply Reply Quote 0
                            • R
                              robert bouwens
                              last edited by

                              :-) absolutely - i am happy it works.

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post