BACnet Error Diagnostics

Troubleshooting BACnet errors can be challenging. When data is acquired via the CXS BACnet Server you can use the System Management Console to diagnose the source of the error.

There a three destinct types of errors when communicating with BACnet devices:

  • Communication errors
    The BACnet device cannot be discovered,  accessed or the device doesn’t respond, is switched off or misconfigured
  • Device reported errors
    Communication is good but the device reports errors to specific requests, objects or properties
  • Local application errors
    Typically data conversion errors, wrong mapping of data types, misconfigured client

Identifying the error types is the first step to fixing the issues. Open the SMC (ArchestrA System Management Console) expand the branch Operations Integration Server Manager and locate the ConneXSoft BAcnet Server. The device group branch displays states and incoming data while the client groups display data as sent to the client (on change only).

In this example we created several error conditions:

We see that the device Dev602000 is the only device with 0 errors.

We analyze Dev80104 first. The red icon and the fact that the number of errors (“Errors”) is equal to the number of active items (“Active Items”) indicates a communication issue:

Communication errors:

A typical scenario for communication errors is the bad quality for all items except system items. In this case check the state of the corresponding device in the device group branch.
Example: Disconnected device

We see that all items have bad quality  updated with the current timestamp. In this specific case we also see that originally there were initial values. This indicates that some time in the past there was communication established to this device and the current disconnection could be a temporary situation. Additional analysis in the message view:

We see the message stays “PENDING” for a long time (waiting for a response) and that it is marked with “Result”: -15 (timeout). Verify that this message is actually targeting Dev80104:

You can also find associated error messages in the logger (timeout):

Fixing the error:

Check that the device is:

  • online
  • powered on
  • in the runtime state
  • physically connected to the right network

Check in the BACnet Server configuration:

  • Is the device id correct or did it change?
  • Does the device require pre configured addresses due to subnets and missing BBMD routing
  • Are BBMD routers active to access subnets

Note: If the client application requests system items there will be a yellow error icon for this device since the system items will have good quality. In this case the error count will differ from the active item count by the number of system items.

Device reported errors:

In a mixed scanario where you have runtime items some of good and some of bad quality in the same device you can assume that the communication is established but the device reports errors for some items:

The majority of items (140) is marked with good “Quality” (OPC quality 0xC0) and 4 items are marked with bad “Quality” (OPC quality 0x00). The items marked as bad are acquired via message IDs: 1000280 and 1000280. Open the message branch:

Message ID 1000280 is a “BACnet Message Type” COV (change of value) message containing an “Error class” and “Error code”. The “Error class” and “Error code” values are BACnet defined enumerations returned from the device. Please see the list at the end of this post to identify the error situation.

The Message ID 100024B is a MR (multiple read message) containing 10 items of which 2 have bad quality:

This verifies that the communication to the device is working acquiring multiple values. But certain objects (or maybe optional properties) do not exist.

Fixing the error:

Check if:

  • the device contains the BACnet object and/or property
  • the client application uses the correct object id and/or property id

Local application errors

Local application errors occur in the last step passing the data to the client and is typically a conversion error.

In this example the “Value” cannot be converted to the target type (value is not a number). The communication is good the object and property exists but the value is unusable. The reason could be in the device (sensor out of service) or in the client (wrong datatype).

Fixing the error:

  • Check device/sensor status
  • Check client application value type

List of CXS BACnet Server reported error codes:

error classes:

device        0
object        1
property      2
resources     3
security      4
services      5
vt            6
communication 7

error codes:

other                              0
formerly: authentication failed    1
configuration in progress          2
device busy                        3
dynamic creation not supported     4
file access denied                 5
incompatible security levels       6
inconsistent parameters            7
inconsistent selection criterion   8
invalid data type                  9
invalid file access method        10
invalid file start position       11
invalid operator name             12
invalid parameter data type       13
invalid timestamp                 14
key generation error              15
missing required parameter        16
no objects of specified type      17
no space for object               18
no space to add list element      19
no space to write property        20
no vt sessions available          21
property is not a list            22
object deletion not permitted     23
object identifier already exists  24
operational problem               25
password failure                  26
read access denied                27
security not supported            28
service request denied            29
timeout                           30
unknown object                    31
unknown property                  32
this enumeration was removed      33
unknown vt class                  34
unknown vt session                35
unsupported object type           36
value out of range                37
vt session already closed         38
vt session termination failure    39
write access denied               40
character set not supported       41
invalid array index               42
cov subscription failed           43
not cov property                  44
optional functionality not supported 45
invalid configuration data        46
datatype not supported            47
duplicate name                    48
duplicate object id               49
property is not an array          50
abort buffer overflow             51
abort invalid apdu in this state  52
abort preempted by higher priority task 53
abort segmentation not supported  54
abort proprietary                 55
abort other                       56
invalid tag                       57
network down                      58
reject buffer overflow            59
reject inconsistent parameters    60
reject invalid parameter data type 61
reject invalid tag                62
reject missing required parameter 63
reject parameter out of range     64
reject too many arguments         65
reject undefined enumeration      66
reject unrecognized service       67
reject proprietary                68
reject other                      69
unknown device                    70
unknown route                     71
value not initialized             72
invalid event state               73
no alarm configured               74
log buffer full                   75
logged value purged               76
no property specified             77
not configured for triggered logging 78
unknown subscription              79
parameter out of range            80
list element not found            81
busy                              82
communication disabled            83
success                           84
access denied                     85
bad destination address           86
bad destination device id         87
bad signature                     88
bad source address                89
bad timestamp                     90
cannot use key                    91
cannot verify message id          92
correct key revision              93
destination device id required    94
duplicate message                 95
encryption not configured         96
encryption required               97
incorrect key                     98
invalid key data                  99
key update in progress           100
malformed message                101
not key server                   102
security not configured          103
source security required         104
too many keys                    105
unknown authentication type      106
unknown key                      107
unknown key revision             108
unknown source message           109
not router to dnet               110
router busy                      111
unknown network message          112
message too long                 113
security error                   114
addressing error                 115
write bdt failed                 116
read bdt failed                  117
register foreign device failed   118
read fdt failed                  119
delete fdt entry failed          120
distribute broadcast failed      121
unknown file size                122
abort apdu too long              123
abort application exceeded reply time 124
abort out of resources           125
abort tsm timeout                126
abort window size out of range   127
file full                        128
inconsistent configuration       129
inconsistent object type         130
internal error                   131
not configured                   132
out of memory                    133
value too long                   134
abort insufficient security      135
abort security error             136
duplicate entry                  137
invalid value in this state      138

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *