If the Bacnet console asks for information that is larger than the frame size, Transport->sendResponse() will use network->sendSegmented instead of network->sendAPDU. sendAPDU works great but sendSegmented is having problems with keys in the waiting room. When it sends the first segment Transport->sendSegments always comes back with a null response. This is causing a lot of hangs in the console as it waits for information. The console appears to be sending the correct response based on Wireshark.
Posts made by scottnd
-
Errors with multi-segment messages.
-
RE: Errors with multi-segment messages.
If the Bacnet console asks for information that is larger than the frame size, Transport->sendResponse() will use network->sendSegmented instead of network->sendAPDU. sendAPDU works great but sendSegmented is having problems with keys in the waiting room. When it sends the first segment Transport->sendSegments always comes back with a null response. This is causing a lot of hangs in the console as it waits for information. The console appears to be sending the correct response based on Wireshark.
-
RE: How to set mac address for the virtual device
Can you set it in your bootup scripts? If on linux you can put it either in the system startup or in the service script.
-
RE: Address already in use when configuring multiple devices
At the moment that is the big hammer approach. I am experimenting with setting up a virtual network on the linux system just for the bacnet devices. I will let you know how that goes. The ifconfig and ip commands can do the same things. the ip command can do more but for this application ifconfig is just fine. I am going to start a blog of my experiences and give some same code once I get this thing working (just about ready).
Scott -
RE: Address already in use when configuring multiple devices
I could never get the slave device test to work. The only way this has worked is when the port numbers are identical. This is why using the virtual interfaces was critical. You can set the port to 47808 for all of them.
-
RE: Address already in use when configuring multiple devices
I am a linux guy but found this: http://www.sevenforums.com/network-sharing/3156-adding-virtual-network-adapter.html
Good luck! -
RE: Problem with getting object-list from device
Thanks! I was just pulling my hair out on a similar problem.
-
RE: Address already in use when configuring multiple devices
The 02: etc on the mac address has been kindly replaced with smiley faces. 02 colon hex hex colon .....
-
RE: Address already in use when configuring multiple devices
I was pretty successful when I used virtual interfaces bound to the main interface. I have to track which device is bound to what address and have to use a virtual mac address when I configure it. Using 02:xx:xx:xx:xx:xx is okay as the 02 is for "local" unregistered mac addresses. I track the mac and ip address of the interface and which device is attached. On a linux system I use the ip command to configure the interfaces on startup. Let me know if you need more info.
Scott -
RE: Address already in use when configuring multiple devices
I have tried to fix the error I have with using multiple ip addresses which works fine as long as they are on the same subnet as the Bacnet Console. I also am trying to use the same method as the "SlaveDevice.java" test file. There are several problems with this, the first of which is it fails with:
Apr 01, 2014 10:49:12 AM com.serotonin.bacnet4j.service.unconfirmed.IAmRequest handle
WARNING: Another instance with my device instance ID found!
Apr 01, 2014 10:49:12 AM com.serotonin.bacnet4j.service.unconfirmed.IAmRequest handle
WARNING: Another instance with my device instance ID found!Repeated twice when I send the IAm messages. Any ideas? This is a direct copy of the original source file I am using.
Scott -
Bind Address does not seem to be working
I have multiple devices on the same physical platform. I have added multiple IP addresses to the NIC and then created devices that use the standard port but different address with the "bind address" when creating an UpNetwork object. If I use one device with the primary IP and one with a newly bound address, then send a IAM broadcast, the console sees both devices but can only query the one bound to the primary address. The other one is reporting the same address! Am I missing something here? If I use the same address but increment the port I get the same problem of the first can be queried and the second cannot.
Scott -
RE: Bind Address does not seem to be working
I have multiple devices on the same physical platform. I have added multiple IP addresses to the NIC and then created devices that use the standard port but different address with the "bind address" when creating an UpNetwork object. If I use one device with the primary IP and one with a newly bound address, then send a IAM broadcast, the console sees both devices but can only query the one bound to the primary address. The other one is reporting the same address! Am I missing something here? If I use the same address but increment the port I get the same problem of the first can be queried and the second cannot.
Scott -
Incrementing port on a device makes objects not show in in BACNET console.
When creating a series of device objects you are forced to increment the port on each one. If you do not there is a "Cannot create device, address in use" problem. However, the incrementing port is a problem as the BACNET console is not seeing any device that is not on the standard port. Any ideas?
-
RE: Incrementing port on a device makes objects not show in in BACNET console.
When creating a series of device objects you are forced to increment the port on each one. If you do not there is a "Cannot create device, address in use" problem. However, the incrementing port is a problem as the BACNET console is not seeing any device that is not on the standard port. Any ideas?
-
RE: ErrorAPDU(choice=15, errorClass=Property, errorCode=Write access denied)
Are you running as root? I think you will need to be.
-
RE: Where/how to start?
I am having the same problem. Is there anything besides the test files and source code to go by?
-
Address already in use when configuring multiple devices
I am trying to expose multiple devices, each with multiple objects. When I set the local device on each everything is fine, but when I initialize each one, the first works fine and then the others get an error that I am trying to use a duplicate address. How do you configure multiple local devices??
Scott Didriksen -
RE: Address already in use when configuring multiple devices
I am trying to expose multiple devices, each with multiple objects. When I set the local device on each everything is fine, but when I initialize each one, the first works fine and then the others get an error that I am trying to use a duplicate address. How do you configure multiple local devices??
Scott Didriksen