Shrouk Khan
Shrouk Khan

Reputation: 1460

BACnet Error: object: unknown-object

I am using bacnet stack from http://bacnet.sourceforge.net/ with mitshubishi bacnet gateway ( model bac-hd150 ). The network is setup correctly and i can do bacnet who is and bacnet epic properly:

;Device   MAC (hex)            SNET  SADR (hex)           APDU
;-------- -------------------- ----- -------------------- ----
  5053    C0:A8:00:0A:BA:C0    0     00                   1024 
  4194303 C0:A8:00:BD:BA:C0    0     00                   1476 
  100     C0:A8:00:0B:BA:C0    0     00                   1024 
;
; Total Devices: 3

Device 100 is the bacnet device in question. Bacnet epic of this device is attached with the mail.

However, whenever i try to read and write any property to/from this device, i always get:

BACnet Error: object: unknown-object

For this device : The object list : http://img36.imageshack.us/img36/7102/jv7a.png Instance numbers: http://img706.imageshack.us/img706/1948/yocq.png

now based on this, i am trying to read a property ( ON OFF STATE ) like this: Usage: bacrp device-instance object-type object-instance property [index]

 ./bacrp 100 3 2 85

where
100 : device-instance
3: object-type ( binary input, according to [http://img36.imageshack.us/img36/7102/jv7a.png][1] )
2: object-instance ( instance number according to  
[http://img706.imageshack.us/img706/1948/yocq.png][2] )
85: property ( PROP_PRESENT_VALUE according to bacenum.h file )

however, the response is always:

root@FINGI:/tmp#  ./bacrp 100 3 2 8
BACnet Error: object: unknown-object

Can anyone suggest what might be wrong ? i have tried different values for object-instance ( for example 0 to 10 ) but result is always the same.

Desperately trying to get this work!any suggestions will be most appreciated

Upvotes: 1

Views: 3748

Answers (2)

DennisVM-D2i
DennisVM-D2i

Reputation: 488

The answer is referring to the "OBJECT-LIST"/'OBJECT_LIST', and the first data-element/array-indexed value within it is the count of data-elements that are contained within the array, but the rest should be object-identifiers.

If you're having trouble reading properties, it's worth starting with the basics/mandatory ones (- with the exception of the property_list):

  • Object_Identifier BACnetObjectIdentifier - unique within the device that maintains them

  • Object_Type BACnetObjectType

  • Object_Name CharacterString - unique within the device that maintains them; at least 1 char length & only printable chars

  • x Property_List BACnetARRAY of BACnetPropertyIdentifier

As much as property_list is mandatory by the BACnet standard, it would seem that vendors don't seem to support/implement it (- whereas object_list always seems to be available/populated), and even if they do, you might not be able to access it / it might not get percolated to the service, if your accessing the target (/underlying) physical device via a gateway device.

Upvotes: 0

Daniel
Daniel

Reputation: 474

Just read the object list, property id 76, of the device object. You obtain the list of all valid object identifiers.

Further, if I interpret your project specific rules of instance numbers correct, the instance number of the desired object "ON OFF STATE" is 01xx02, where xx shall be the group. I don't know which "groups" are available at your project. You could try 10102 for the first group.

Upvotes: 2

Related Questions