• Recent
    • Tags
    • Popular
    • Register
    • Login
    1. Home
    2. wz2b

    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
    W
    • Profile
    • Following 0
    • Followers 0
    • Topics 3
    • Posts 8
    • Best 0
    • Controversial 0
    • Groups 0

    wz2b

    @wz2b

    0
    Reputation
    367
    Profile views
    8
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    wz2b Unfollow Follow

    Latest posts made by wz2b

    • Multi-state fault

      Hi,

      If I have a multi-state input that is currently unknown (i.e. I don't have enough information to compute its state) should I set Reliability to Reliability.multiStateFault ? Basically I'm looking for a way to indicate "unknown" without having to define a completely separate state for "unknown" (as that would be confusing here - what I'm building is really more of a proxy to an existing system).

      I'm having trouble, even within the bacnet spec book, figuring out how I'm really supposed to use MultiStateFault.

      --Chris

      posted in BACnet4J general discussion
      W
      wz2b
    • RE: Multi-state fault

      Hi,

      If I have a multi-state input that is currently unknown (i.e. I don't have enough information to compute its state) should I set Reliability to Reliability.multiStateFault ? Basically I'm looking for a way to indicate "unknown" without having to define a completely separate state for "unknown" (as that would be confusing here - what I'm building is really more of a proxy to an existing system).

      I'm having trouble, even within the bacnet spec book, figuring out how I'm really supposed to use MultiStateFault.

      --Chris

      posted in BACnet4J general discussion
      W
      wz2b
    • RE: Talking to devices without discovery

      Not in my case, but I have noticed that a lot of folks aren't particularly careful about this. I find it very troubling.

      Perhaps you could send the WhoIs directly to the device instead of using a broadcast?

      Yeah. That lets me see interesting things about the gateway ... but I haven't figured out how to make it tell me about ("discover") things BEYOND the gateway. If I known the network #, device ID, and MAC of the MS/TP device (as an example) then I can talk to it. I feel like this is fragile, though - like what if the power recycles and all these devices come up and arbitrate for new MAC addresses? How do I prevent my software from getting confused by this?

      posted in BACnet4J general discussion
      W
      wz2b
    • Talking to devices without discovery

      I have a bunch of devices I want to talk to occasionally that's behind a firewall. Messages to/from port 47808 pass fine, but broadcasts do not work.

      The device is a Wattstopper digital lighting control segment manager that sits on ethernet. Behind it are four MS/TP segments.

      I figured out that I can do the following:

      
       int instanceNumber = 1234;   /* not the real instance id of the gateway/segment manager */
      Address segmentManagerAddress = new Address("10.1.2.3", 47808);  /* not the real IP address */
      OctetString segmentManagerLinkService = null;
      RemoteDevice segmentManager = new RemoteDevice(instanceNumber, segmentManagerAddress, segmentManagerLinkService);
      segmentManager.setSegmentationSupported(Segmentation.noSegmentation);
      segmentManager.setMaxAPDULengthAccepted(1476);
      Encodable descr = RequestUtils.sendReadPropertyAllowNull(localDevice,
                      segmentManager,
                      remoteRequestOid,
                      PropertyIdentifier.description);
      
      

      this gets me a description so it works.

      My next step is to figure out how to talk to the devices that are on the networks BEYOND the gateway/segment manager. Each one has its own network ID and a bunch of devices.

      Without using broadcast discovery, how do I configure a RemoteDevice that can talk to these devices?

      posted in BACnet4J general discussion
      W
      wz2b
    • RE: Talking to devices without discovery

      I have a bunch of devices I want to talk to occasionally that's behind a firewall. Messages to/from port 47808 pass fine, but broadcasts do not work.

      The device is a Wattstopper digital lighting control segment manager that sits on ethernet. Behind it are four MS/TP segments.

      I figured out that I can do the following:

      
       int instanceNumber = 1234;   /* not the real instance id of the gateway/segment manager */
      Address segmentManagerAddress = new Address("10.1.2.3", 47808);  /* not the real IP address */
      OctetString segmentManagerLinkService = null;
      RemoteDevice segmentManager = new RemoteDevice(instanceNumber, segmentManagerAddress, segmentManagerLinkService);
      segmentManager.setSegmentationSupported(Segmentation.noSegmentation);
      segmentManager.setMaxAPDULengthAccepted(1476);
      Encodable descr = RequestUtils.sendReadPropertyAllowNull(localDevice,
                      segmentManager,
                      remoteRequestOid,
                      PropertyIdentifier.description);
      
      

      this gets me a description so it works.

      My next step is to figure out how to talk to the devices that are on the networks BEYOND the gateway/segment manager. Each one has its own network ID and a bunch of devices.

      Without using broadcast discovery, how do I configure a RemoteDevice that can talk to these devices?

      posted in BACnet4J general discussion
      W
      wz2b
    • RE: Help understanding networks

      Is findRemoteDevice in an older/newer version perhaps? I have bacnet4j 1.2. I don't have such a method.

      posted in BACnet4J general discussion
      W
      wz2b
    • Help understanding networks

      Hi,

      We have an ALC system that has a bunch of BACnet devices on ALC lan gatways (LGR). The gateways have ethernet, ARCnet, and MSTP. According to WebControl:

      BACnet/ARCNET Network Number: 2478
      BACnet/IP Network Number: 2400
      BACnet/MSTP Network Number 2475

      What I tried to do, to begin, was this:

      LocalDevice localDevice = new LocalDevice( 2400, LGR_IP_STRING ); /* for example "10.1.2.3" */
      localDevice.initialize();
      localDevice.setPort( 47808 );
      localDevice.sendBroadcast(47808, new WhoIsRequest(null, null));
      Thread.sleep( 5000 );
      
      System.out.println("Dumping remote devices");
      for(RemoteDevice rd : localDevice.getRemoteDevices())
      	System.out.println(rd.toString());
      

      but that shows me no devices.

      What I want to figure out is how do I connect to this gateway and ask it to tell me what devices it knows about on the MSTP and ARCNET networks ... then, eventually, dump the available properties on them.

      This router is behind a complicated IP network, so broadcasts to it may simply not work ... if that's the case how do I skip the broadcast, do I add a RemoteDevice manually?

      Thanks,

      posted in BACnet4J general discussion
      W
      wz2b
    • RE: Help understanding networks

      Hi,

      We have an ALC system that has a bunch of BACnet devices on ALC lan gatways (LGR). The gateways have ethernet, ARCnet, and MSTP. According to WebControl:

      BACnet/ARCNET Network Number: 2478
      BACnet/IP Network Number: 2400
      BACnet/MSTP Network Number 2475

      What I tried to do, to begin, was this:

      LocalDevice localDevice = new LocalDevice( 2400, LGR_IP_STRING ); /* for example "10.1.2.3" */
      localDevice.initialize();
      localDevice.setPort( 47808 );
      localDevice.sendBroadcast(47808, new WhoIsRequest(null, null));
      Thread.sleep( 5000 );
      
      System.out.println("Dumping remote devices");
      for(RemoteDevice rd : localDevice.getRemoteDevices())
      	System.out.println(rd.toString());
      

      but that shows me no devices.

      What I want to figure out is how do I connect to this gateway and ask it to tell me what devices it knows about on the MSTP and ARCNET networks ... then, eventually, dump the available properties on them.

      This router is behind a complicated IP network, so broadcasts to it may simply not work ... if that's the case how do I skip the broadcast, do I add a RemoteDevice manually?

      Thanks,

      posted in BACnet4J general discussion
      W
      wz2b