• 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

    Multiple Devices on one physical Device

    BACnet4J general discussion
    2
    7
    3.4k
    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.
    • R
      rsb89
      last edited by

      Hi,

      I use BACnet4j and want to run more than one LocalDevice on one physical Device. I tried to set another Port (first Device 0xBAC0, second Device 0xBAC1 for example) but the IAm from the second Device goes wrong because it's sending to Port 0xBAC1 instead of 0xBAC0. So other physical devices don't get the message. My solution for this (so far) is to send the IAm from Device 2 with Device 1 ("device1.sendGlobalBroadcast(device2.getIAM())" but i'm not sure if this is confusing for other physical Devices. Is there a better solution?

      1 Reply Last reply Reply Quote 0
      • F
        Frozenlock
        last edited by

        If you are on Windows, you could try adding another IP to your network card.

        This way, you could have:

        Device 1, 192.168.0.3:47808
        Device 2, 192.168.0.4:47808

        Playing with the ports if a little delicate, as some devices will only respond the port on which they are located.

        1 Reply Last reply Reply Quote 0
        • R
          rsb89
          last edited by

          Thanks for the response, but it sadly doesn't solves my problem. So what I want to do is a device which manages some other software-devices. The software-devices should be able to send messages themselves using another port than 0xBAC0, because this port is already used by the "main"-device. All incoming messages (also for the software-devices) are managed by the "main"-device (this works already fine with some modifications in the stack).

          1 Reply Last reply Reply Quote 0
          • R
            rsb89
            last edited by

            I tried this now:

            
            IpNetwork ipnet = new IpNetwork (IpNetwork.DEFAULT_BROADCAST_IP, 0xBAC1);
            Transport transp = new Transport(ipnet);
            LocalDevice device = new LocalDevice(deviceID, transp);
            
            try
            {
            	device.initialize();
            	device.sendUnconfirmed(new Address(IpNetwork.DEFAULT_BROADCAST_IP, IpNetwork.DEFAULT_PORT), device.getIAm());
            } catch (Exception e)
            {
            	e.printStackTrace();
            }
            
            

            In this case I get
            [list]java.lang.IllegalArgumentException: port out of range:-1[/list]

            Can anybody explain?

            1 Reply Last reply Reply Quote 0
            • R
              rsb89
              last edited by

              I'm not sure now if my question isn't clear or if there is no solution for this problem yet. I need more than one BACnet-device on one physical-device (with the same IP). Or is this against the principle of BACnet?

              1 Reply Last reply Reply Quote 0
              • R
                rsb89
                last edited by

                Well, what shall I say... I tried it today without changing anything and there is no Exception and it does what it is supposed to.

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