BACnet property type codes may be found in your copy of the BACnet protocol specification, ANSI/ASHRAE Standard 135. That document is copyrighted, but the C enumeration shown below for reference is taken from open source code available under GPL at http://sourceforge.net, and provides essentially the same information (copyrighted by Steve Karg, licensed under GPL as noted at http://sourceforge.net).
typedef enum {
PROP_ACKED_TRANSITIONS = 0,
PROP_ACK_REQUIRED = 1,
PROP_ACTION = 2,
PROP_ACTION_TEXT = 3,
PROP_ACTIVE_TEXT = 4,
PROP_ACTIVE_VT_SESSIONS = 5,
PROP_ALARM_VALUE = 6,
PROP_ALARM_VALUES = 7,
PROP_ALL = 8,
PROP_ALL_WRITES_SUCCESSFUL = 9,
PROP_APDU_SEGMENT_TIMEOUT = 10,
PROP_APDU_TIMEOUT = 11,
PROP_APPLICATION_SOFTWARE_VERSION = 12,
PROP_ARCHIVE = 13,
PROP_BIAS = 14,
PROP_CHANGE_OF_STATE_COUNT = 15,
PROP_CHANGE_OF_STATE_TIME = 16,
PROP_NOTIFICATION_CLASS = 17,
PROP_BLANK_1 = 18,
PROP_CONTROLLED_VARIABLE_REFERENCE = 19,
PROP_CONTROLLED_VARIABLE_UNITS = 20,
PROP_CONTROLLED_VARIABLE_VALUE = 21,
PROP_COV_INCREMENT = 22,
PROP_DATE_LIST = 23,
PROP_DAYLIGHT_SAVINGS_STATUS = 24,
PROP_DEADBAND = 25,
PROP_DERIVATIVE_CONSTANT = 26,
PROP_DERIVATIVE_CONSTANT_UNITS = 27,
PROP_DESCRIPTION = 28,
PROP_DESCRIPTION_OF_HALT = 29,
PROP_DEVICE_ADDRESS_BINDING = 30,
PROP_DEVICE_TYPE = 31,
PROP_EFFECTIVE_PERIOD = 32,
PROP_ELAPSED_ACTIVE_TIME = 33,
PROP_ERROR_LIMIT = 34,
PROP_EVENT_ENABLE = 35,
PROP_EVENT_STATE = 36,
PROP_EVENT_TYPE = 37,
PROP_EXCEPTION_SCHEDULE = 38,
PROP_FAULT_VALUES = 39,
PROP_FEEDBACK_VALUE = 40,
PROP_FILE_ACCESS_METHOD = 41,
PROP_FILE_SIZE = 42,
PROP_FILE_TYPE = 43,
PROP_FIRMWARE_REVISION = 44,
PROP_HIGH_LIMIT = 45,
PROP_INACTIVE_TEXT = 46,
PROP_IN_PROCESS = 47,
PROP_INSTANCE_OF = 48,
PROP_INTEGRAL_CONSTANT = 49,
PROP_INTEGRAL_CONSTANT_UNITS = 50,
PROP_ISSUE_CONFIRMED_NOTIFICATIONS = 51,
PROP_LIMIT_ENABLE = 52,
PROP_LIST_OF_GROUP_MEMBERS = 53,
PROP_LIST_OF_OBJECT_PROPERTY_REFERENCES = 54,
PROP_LIST_OF_SESSION_KEYS = 55,
PROP_LOCAL_DATE = 56,
PROP_LOCAL_TIME = 57,
PROP_LOCATION = 58,
PROP_LOW_LIMIT = 59,
PROP_MANIPULATED_VARIABLE_REFERENCE = 60,
PROP_MAXIMUM_OUTPUT = 61,
PROP_MAX_APDU_LENGTH_ACCEPTED = 62,
PROP_MAX_INFO_FRAMES = 63,
PROP_MAX_MASTER = 64,
PROP_MAX_PRES_VALUE = 65,
PROP_MINIMUM_OFF_TIME = 66,
PROP_MINIMUM_ON_TIME = 67,
PROP_MINIMUM_OUTPUT = 68,
PROP_MIN_PRES_VALUE = 69,
PROP_MODEL_NAME = 70,
PROP_MODIFICATION_DATE = 71,
PROP_NOTIFY_TYPE = 72,
PROP_NUMBER_OF_APDU_RETRIES = 73,
PROP_NUMBER_OF_STATES = 74,
PROP_OBJECT_IDENTIFIER = 75,
PROP_OBJECT_LIST = 76,
PROP_OBJECT_NAME = 77,
PROP_OBJECT_PROPERTY_REFERENCE = 78,
PROP_OBJECT_TYPE = 79,
PROP_OPTIONAL = 80,
PROP_OUT_OF_SERVICE = 81,
PROP_OUTPUT_UNITS = 82,
PROP_EVENT_PARAMETERS = 83,
PROP_POLARITY = 84,
PROP_PRESENT_VALUE = 85,
PROP_PRIORITY = 86,
PROP_PRIORITY_ARRAY = 87,
PROP_PRIORITY_FOR_WRITING = 88,
PROP_PROCESS_IDENTIFIER = 89,
PROP_PROGRAM_CHANGE = 90,
PROP_PROGRAM_LOCATION = 91,
PROP_PROGRAM_STATE = 92,
PROP_PROPORTIONAL_CONSTANT = 93,
PROP_PROPORTIONAL_CONSTANT_UNITS = 94,
PROP_PROTOCOL_CONFORMANCE_CLASS = 95, /* deleted in version 1 revision 2 */
PROP_PROTOCOL_OBJECT_TYPES_SUPPORTED = 96,
PROP_PROTOCOL_SERVICES_SUPPORTED = 97,
PROP_PROTOCOL_VERSION = 98,
PROP_READ_ONLY = 99,
PROP_REASON_FOR_HALT = 100,
PROP_RECIPIENT = 101,
PROP_RECIPIENT_LIST = 102,
PROP_RELIABILITY = 103,
PROP_RELINQUISH_DEFAULT = 104,
PROP_REQUIRED = 105,
PROP_RESOLUTION = 106,
PROP_SEGMENTATION_SUPPORTED = 107,
PROP_SETPOINT = 108,
PROP_SETPOINT_REFERENCE = 109,
PROP_STATE_TEXT = 110,
PROP_STATUS_FLAGS = 111,
PROP_SYSTEM_STATUS = 112,
PROP_TIME_DELAY = 113,
PROP_TIME_OF_ACTIVE_TIME_RESET = 114,
PROP_TIME_OF_STATE_COUNT_RESET = 115,
PROP_TIME_SYNCHRONIZATION_RECIPIENTS = 116,
PROP_UNITS = 117,
PROP_UPDATE_INTERVAL = 118,
PROP_UTC_OFFSET = 119,
PROP_VENDOR_IDENTIFIER = 120,
PROP_VENDOR_NAME = 121,
PROP_VT_CLASSES_SUPPORTED = 122,
PROP_WEEKLY_SCHEDULE = 123,
PROP_ATTEMPTED_SAMPLES = 124,
PROP_AVERAGE_VALUE = 125,
PROP_BUFFER_SIZE = 126,
PROP_CLIENT_COV_INCREMENT = 127,
PROP_COV_RESUBSCRIPTION_INTERVAL = 128,
PROP_CURRENT_NOTIFY_TIME = 129,
PROP_EVENT_TIME_STAMPS = 130,
PROP_LOG_BUFFER = 131,
PROP_LOG_DEVICE_OBJECT = 132,
/* The enable property is renamed from log-enable in
Addendum b to ANSI/ASHRAE 135-2004(135b-2) */
PROP_ENABLE = 133,
PROP_LOG_INTERVAL = 134,
PROP_MAXIMUM_VALUE = 135,
PROP_MINIMUM_VALUE = 136,
PROP_NOTIFICATION_THRESHOLD = 137,
PROP_PREVIOUS_NOTIFY_TIME = 138,
PROP_PROTOCOL_REVISION = 139,
PROP_RECORDS_SINCE_NOTIFICATION = 140,
PROP_RECORD_COUNT = 141,
PROP_START_TIME = 142,
PROP_STOP_TIME = 143,
PROP_STOP_WHEN_FULL = 144,
PROP_TOTAL_RECORD_COUNT = 145,
PROP_VALID_SAMPLES = 146,
PROP_WINDOW_INTERVAL = 147,
PROP_WINDOW_SAMPLES = 148,
PROP_MAXIMUM_VALUE_TIMESTAMP = 149,
PROP_MINIMUM_VALUE_TIMESTAMP = 150,
PROP_VARIANCE_VALUE = 151,
PROP_ACTIVE_COV_SUBSCRIPTIONS = 152,
PROP_BACKUP_FAILURE_TIMEOUT = 153,
PROP_CONFIGURATION_FILES = 154,
PROP_DATABASE_REVISION = 155,
PROP_DIRECT_READING = 156,
PROP_LAST_RESTORE_TIME = 157,
PROP_MAINTENANCE_REQUIRED = 158,
PROP_MEMBER_OF = 159,
PROP_MODE = 160,
PROP_OPERATION_EXPECTED = 161,
PROP_SETTING = 162,
PROP_SILENCED = 163,
PROP_TRACKING_VALUE = 164,
PROP_ZONE_MEMBERS = 165,
PROP_LIFE_SAFETY_ALARM_VALUES = 166,
PROP_MAX_SEGMENTS_ACCEPTED = 167,
PROP_PROFILE_NAME = 168,
PROP_AUTO_SLAVE_DISCOVERY = 169,
PROP_MANUAL_SLAVE_ADDRESS_BINDING = 170,
PROP_SLAVE_ADDRESS_BINDING = 171,
PROP_SLAVE_PROXY_ENABLE = 172,
PROP_LAST_NOTIFY_TIME = 173,
PROP_SCHEDULE_DEFAULT = 174,
PROP_ACCEPTED_MODES = 175,
PROP_ADJUST_VALUE = 176,
PROP_COUNT = 177,
PROP_COUNT_BEFORE_CHANGE = 178,
PROP_COUNT_CHANGE_TIME = 179,
PROP_COV_PERIOD = 180,
PROP_INPUT_REFERENCE = 181,
PROP_LIMIT_MONITORING_INTERVAL = 182,
PROP_LOGGING_DEVICE = 183,
PROP_LOGGING_RECORD = 184,
PROP_PRESCALE = 185,
PROP_PULSE_RATE = 186,
PROP_SCALE = 187,
PROP_SCALE_FACTOR = 188,
PROP_UPDATE_TIME = 189,
PROP_VALUE_BEFORE_CHANGE = 190,
PROP_VALUE_SET = 191,
PROP_VALUE_CHANGE_TIME = 192,
/* enumerations 193-206 are new */
PROP_ALIGN_INTERVALS = 193,
PROP_GROUP_MEMBER_NAMES = 194,
PROP_INTERVAL_OFFSET = 195,
PROP_LAST_RESTART_REASON = 196,
PROP_LOGGING_TYPE = 197,
PROP_MEMBER_STATUS_FLAGS = 198,
PROP_NOTIFICATION_PERIOD = 199,
PROP_PREVIOUS_NOTIFY_RECORD = 200,
PROP_REQUESTED_UPDATE_INTERVAL = 201,
PROP_RESTART_NOTIFICATION_RECIPIENTS = 202,
PROP_TIME_OF_DEVICE_RESTART = 203,
PROP_TIME_SYNCHRONIZATION_INTERVAL = 204,
PROP_TRIGGER = 205,
PROP_UTC_TIME_SYNCHRONIZATION_RECIPIENTS = 206,
/* enumerations 207-211 are used in Addendum d to ANSI/ASHRAE 135-2004 */
PROP_NODE_SUBTYPE = 207,
PROP_NODE_TYPE = 208,
PROP_STRUCTURED_OBJECT_LIST = 209,
PROP_SUBORDINATE_ANNOTATIONS = 210,
PROP_SUBORDINATE_LIST = 211,
/* enumerations 212-225 are used in Addendum e to ANSI/ASHRAE 135-2004 */
PROP_ACTUAL_SHED_LEVEL = 212,
PROP_DUTY_WINDOW = 213,
PROP_EXPECTED_SHED_LEVEL = 214,
PROP_FULL_DUTY_BASELINE = 215,
/* enumerations 216-217 are used in Addendum i to ANSI/ASHRAE 135-2004 */
PROP_BLINK_PRIORITY_THRESHOLD = 216,
PROP_BLINK_TIME = 217,
/* enumerations 212-225 are used in Addendum e to ANSI/ASHRAE 135-2004 */
PROP_REQUESTED_SHED_LEVEL = 218,
PROP_SHED_DURATION = 219,
PROP_SHED_LEVEL_DESCRIPTIONS = 220,
PROP_SHED_LEVELS = 221,
PROP_STATE_DESCRIPTION = 222,
/* enumerations 223-225 are used in Addendum i to ANSI/ASHRAE 135-2004 */
PROP_FADE_TIME = 223,
PROP_LIGHTING_COMMAND = 224,
PROP_LIGHTING_COMMAND_PRIORITY = 225,
/* enumerations 226-235 are used in Addendum f to ANSI/ASHRAE 135-2004 */
PROP_DOOR_ALARM_STATE = 226,
PROP_DOOR_EXTENDED_PULSE_TIME = 227,
PROP_DOOR_MEMBERS = 228,
PROP_DOOR_OPEN_TOO_LONG_TIME = 229,
PROP_DOOR_PULSE_TIME = 230,
PROP_DOOR_STATUS = 231,
PROP_DOOR_UNLOCK_DELAY_TIME = 232,
PROP_LOCK_STATUS = 233,
PROP_MASKED_ALARM_VALUES = 234,
PROP_SECURED_STATUS = 235,
/* enumerations 236-243 are used in Addendum i to ANSI/ASHRAE 135-2004 */
PROP_OFF_DELAY = 236,
PROP_ON_DELAY = 237,
PROP_POWER = 238,
PROP_POWER_ON_VALUE = 239,
PROP_PROGRESS_VALUE = 240,
PROP_RAMP_RATE = 241,
PROP_STEP_INCREMENT = 242,
PROP_SYSTEM_FAILURE_VALUE = 243,
/* enumerations 244-311 are used in Addendum j to ANSI/ASHRAE 135-2004 */
PROP_ABSENTEE_LIMIT = 244,
PROP_ACCESS_ALARM_EVENTS = 245,
PROP_ACCESS_DOORS = 246,
PROP_ACCESS_EVENT = 247,
PROP_ACCESS_EVENT_AUTHENTICATION_FACTOR = 248,
PROP_ACCESS_EVENT_CREDENTIAL = 249,
PROP_ACCESS_EVENT_TIME = 250,
PROP_ACCESS_RULES = 251,
PROP_ACCESS_RULES_ENABLE = 252,
PROP_ACCESS_TRANSACTION_EVENTS = 253,
PROP_ACCOMPANIED = 254,
PROP_ACTIVATION_TIME = 255,
PROP_ACTIVE_AUTHENTICATION_POLICY = 256,
PROP_ASSIGNED_ACCESS_RIGHTS = 257,
PROP_AUTHENTICATION_FACTOR_INPUT_LIST = 258,
PROP_AUTHENTICATION_FACTORS = 259,
PROP_AUTHENTICATION_POLICY_LIST = 260,
PROP_AUTHENTICATION_POLICY_NAMES = 261,
PROP_AUTHORIZATION_MODE = 262,
PROP_BELONGS_TO = 263,
PROP_CREDENTIAL_DISABLE = 264,
PROP_CREDENTIAL_STATUS = 265,
PROP_CREDENTIALS = 266,
PROP_CREDENTIALS_IN_ZONE = 267,
PROP_DAYS_REMAINING = 268,
PROP_ENTRY_POINTS = 269,
PROP_EXIT_POINTS = 270,
PROP_EXPIRY_TIME = 271,
PROP_EXTENDED_TIME_ENABLE = 272,
PROP_FAILED_ATTEMPT_EVENTS = 273,
PROP_FAILED_ATTEMPTS = 274,
PROP_FAILED_ATTEMPTS_TIME = 275,
PROP_FORMAT_CLASS_SUPPORTED = 276,
PROP_FORMAT_TYPE = 277,
PROP_LAST_ACCESS_EVENT = 278,
PROP_LAST_ACCESS_POINT = 279,
PROP_LAST_CREDENTIAL_ADDED = 280,
PROP_LAST_CREDENTIAL_ADDED_TIME = 281,
PROP_LAST_CREDENTIAL_REMOVED = 282,
PROP_LAST_CREDENTIAL_REMOVED_TIME = 283,
PROP_LAST_USE_TIME = 284,
PROP_LOCKDOWN = 285,
PROP_LOCKDOWN_RELINQUISH_TIME = 286,
PROP_MASTER_EXEMPTION = 287,
PROP_MAX_FAILED_ATTEMPTS = 288,
PROP_MEMBERS = 289,
PROP_MASTER_POINT = 290,
PROP_NUMBER_OF_AUTHENTICATION_POLICIES = 291,
PROP_OCCUPANCY_COUNT = 293,
PROP_OCCUPANCY_COUNT_ENABLE = 294,
PROP_OCCUPANCY_COUNT_EXEMPTION = 295,
PROP_OCCUPANCY_LOWER_THRESHOLD = 296,
PROP_OCCUPANCY_LOWER_THRESHOLD_ENFORCED = 297,
PROP_OCCUPANCY_STATE = 298,
PROP_OCCUPANCY_UPPER_LIMIT = 299,
PROP_OCCUPANCY_UPPER_LIMIT_ENFORCED = 300,
PROP_PASSBACK_EXEMPTION = 301,
PROP_PASSBACK_MODE = 302,
PROP_PASSBACK_TIMEOUT = 303,
PROP_POSITIVE_ACCESS_RULES = 304,
PROP_READ_STATUS = 305,
PROP_REASON_FOR_DISABLE = 306,
PROP_THREAT_AUTHORITY = 307,
PROP_THREAT_LEVEL = 308,
PROP_TRACE_FLAG = 309,
PROP_TRANSACTION_NOTIFICATION_CLASS = 310,
PROP_USER_EXTERNAL_IDENTIFIER = 311,
/* enumerations 312-313 are used in Addendum k to ANSI/ASHRAE 135-2004 */
PROP_CHARACTER_SET = 312,
PROP_STRICT_CHARACTER_MODE = 313,
/* enumerations 312-313 are used in Addendum k to ANSI/ASHRAE 135-2004 */
PROP_BACKUP_AND_RESTORE_STATE = 314,
PROP_BACKUP_PREPARATION_TIME = 315,
PROP_RESTORE_PREPARATION_TIME = 316,
/* enumerations 317-323 are used in Addendum j to ANSI/ASHRAE 135-2004 */
PROP_USER_INFORMATION_REFERENCE = 317,
PROP_USER_NAME = 318,
PROP_USER_TYPE = 319,
PROP_USES_REMAINING = 320,
PROP_VENDOR_FORMAT_IDENTIFIER = 321,
PROP_ZONE_FROM = 322,
PROP_ZONE_TO = 323,
/* enumerations 324-325 are used in Addendum i to ANSI/ASHRAE 135-2004 */
PROP_BINARY_ACTIVE_VALUE = 324,
PROP_BINARY_INACTIVE_VALUE = 325
/* The special property identifiers all, optional, and required */
/* are reserved for use in the ReadPropertyConditional and */
/* ReadPropertyMultiple services or services not defined in this standard. */
/* Enumerated values 0-511 are reserved for definition by ASHRAE. */
/* Enumerated values 512-4194303 may be used by others subject to the */
/* procedures and constraints described in Clause 23. */
} BACNET_PROPERTY_ID;
BACnet engineering units codes may be found in your copy of the BACnet protocol specification, ANSI/ASHRAE Standard 135. That document is copyrighted, but the C enumeration shown below for reference is taken from open source code available under GPL at http://sourceforge.net, and provides essentially the same information (copyrighted by Steve Karg, licensed under GPL as noted at http://sourceforge.net).
typedef enum {
/* Acceleration */
UNITS_METERS_PER_SECOND_PER_SECOND = 166,
/* Area */
UNITS_SQUARE_METERS = 0,
UNITS_SQUARE_CENTIMETERS = 116,
UNITS_SQUARE_FEET = 1,
UNITS_SQUARE_INCHES = 115,
/* Currency */
UNITS_CURRENCY1 = 105,
UNITS_CURRENCY2 = 106,
UNITS_CURRENCY3 = 107,
UNITS_CURRENCY4 = 108,
UNITS_CURRENCY5 = 109,
UNITS_CURRENCY6 = 110,
UNITS_CURRENCY7 = 111,
UNITS_CURRENCY8 = 112,
UNITS_CURRENCY9 = 113,
UNITS_CURRENCY10 = 114,
/* Electrical */
UNITS_MILLIAMPERES = 2,
UNITS_AMPERES = 3,
UNITS_AMPERES_PER_METER = 167,
UNITS_AMPERES_PER_SQUARE_METER = 168,
UNITS_AMPERE_SQUARE_METERS = 169,
UNITS_FARADS = 170,
UNITS_HENRYS = 171,
UNITS_OHMS = 4,
UNITS_OHM_METERS = 172,
UNITS_MILLIOHMS = 145,
UNITS_KILOHMS = 122,
UNITS_MEGOHMS = 123,
UNITS_SIEMENS = 173, /* 1 mho equals 1 siemens */
UNITS_SIEMENS_PER_METER = 174,
UNITS_TESLAS = 175,
UNITS_VOLTS = 5,
UNITS_MILLIVOLTS = 124,
UNITS_KILOVOLTS = 6,
UNITS_MEGAVOLTS = 7,
UNITS_VOLT_AMPERES = 8,
UNITS_KILOVOLT_AMPERES = 9,
UNITS_MEGAVOLT_AMPERES = 10,
UNITS_VOLT_AMPERES_REACTIVE = 11,
UNITS_KILOVOLT_AMPERES_REACTIVE = 12,
UNITS_MEGAVOLT_AMPERES_REACTIVE = 13,
UNITS_VOLTS_PER_DEGREE_KELVIN = 176,
UNITS_VOLTS_PER_METER = 177,
UNITS_DEGREES_PHASE = 14,
UNITS_POWER_FACTOR = 15,
UNITS_WEBERS = 178,
/* Energy */
UNITS_JOULES = 16,
UNITS_KILOJOULES = 17,
UNITS_KILOJOULES_PER_KILOGRAM = 125,
UNITS_MEGAJOULES = 126,
UNITS_WATT_HOURS = 18,
UNITS_KILOWATT_HOURS = 19,
UNITS_MEGAWATT_HOURS = 146,
UNITS_BTUS = 20,
UNITS_KILO_BTUS = 147,
UNITS_MEGA_BTUS = 148,
UNITS_THERMS = 21,
UNITS_TON_HOURS = 22,
/* Enthalpy */
UNITS_JOULES_PER_KILOGRAM_DRY_AIR = 23,
UNITS_KILOJOULES_PER_KILOGRAM_DRY_AIR = 149,
UNITS_MEGAJOULES_PER_KILOGRAM_DRY_AIR = 150,
UNITS_BTUS_PER_POUND_DRY_AIR = 24,
UNITS_BTUS_PER_POUND = 117,
/* Entropy */
UNITS_JOULES_PER_DEGREE_KELVIN = 127,
UNITS_KILOJOULES_PER_DEGREE_KELVIN = 151,
UNITS_MEGAJOULES_PER_DEGREE_KELVIN = 152,
UNITS_JOULES_PER_KILOGRAM_DEGREE_KELVIN = 128,
/* Force */
UNITS_NEWTON = 153,
/* Frequency */
UNITS_CYCLES_PER_HOUR = 25,
UNITS_CYCLES_PER_MINUTE = 26,
UNITS_HERTZ = 27,
UNITS_KILOHERTZ = 129,
UNITS_MEGAHERTZ = 130,
UNITS_PER_HOUR = 131,
/* Humidity */
UNITS_GRAMS_OF_WATER_PER_KILOGRAM_DRY_AIR = 28,
UNITS_PERCENT_RELATIVE_HUMIDITY = 29,
/* Length */
UNITS_MILLIMETERS = 30,
UNITS_CENTIMETERS = 118,
UNITS_METERS = 31,
UNITS_INCHES = 32,
UNITS_FEET = 33,
/* Light */
UNITS_CANDELAS = 179,
UNITS_CANDELAS_PER_SQUARE_METER = 180,
UNITS_WATTS_PER_SQUARE_FOOT = 34,
UNITS_WATTS_PER_SQUARE_METER = 35,
UNITS_LUMENS = 36,
UNITS_LUXES = 37,
UNITS_FOOT_CANDLES = 38,
/* Mass */
UNITS_KILOGRAMS = 39,
UNITS_POUNDS_MASS = 40,
UNITS_TONS = 41,
/* Mass Flow */
UNITS_GRAMS_PER_SECOND = 154,
UNITS_GRAMS_PER_MINUTE = 155,
UNITS_KILOGRAMS_PER_SECOND = 42,
UNITS_KILOGRAMS_PER_MINUTE = 43,
UNITS_KILOGRAMS_PER_HOUR = 44,
UNITS_POUNDS_MASS_PER_SECOND = 119,
UNITS_POUNDS_MASS_PER_MINUTE = 45,
UNITS_POUNDS_MASS_PER_HOUR = 46,
UNITS_TONS_PER_HOUR = 156,
/* Power */
UNITS_MILLIWATTS = 132,
UNITS_WATTS = 47,
UNITS_KILOWATTS = 48,
UNITS_MEGAWATTS = 49,
UNITS_BTUS_PER_HOUR = 50,
UNITS_KILO_BTUS_PER_HOUR = 157,
UNITS_HORSEPOWER = 51,
UNITS_TONS_REFRIGERATION = 52,
/* Pressure */
UNITS_PASCALS = 53,
UNITS_HECTOPASCALS = 133,
UNITS_KILOPASCALS = 54,
UNITS_MILLIBARS = 134,
UNITS_BARS = 55,
UNITS_POUNDS_FORCE_PER_SQUARE_INCH = 56,
UNITS_CENTIMETERS_OF_WATER = 57,
UNITS_INCHES_OF_WATER = 58,
UNITS_MILLIMETERS_OF_MERCURY = 59,
UNITS_CENTIMETERS_OF_MERCURY = 60,
UNITS_INCHES_OF_MERCURY = 61,
/* Temperature */
UNITS_DEGREES_CELSIUS = 62,
UNITS_DEGREES_KELVIN = 63,
UNITS_DEGREES_KELVIN_PER_HOUR = 181,
UNITS_DEGREES_KELVIN_PER_MINUTE = 182,
UNITS_DEGREES_FAHRENHEIT = 64,
UNITS_DEGREE_DAYS_CELSIUS = 65,
UNITS_DEGREE_DAYS_FAHRENHEIT = 66,
UNITS_DELTA_DEGREES_FAHRENHEIT = 120,
UNITS_DELTA_DEGREES_KELVIN = 121,
/* Time */
UNITS_YEARS = 67,
UNITS_MONTHS = 68,
UNITS_WEEKS = 69,
UNITS_DAYS = 70,
UNITS_HOURS = 71,
UNITS_MINUTES = 72,
UNITS_SECONDS = 73,
UNITS_HUNDREDTHS_SECONDS = 158,
UNITS_MILLISECONDS = 159,
/* Torque */
UNITS_NEWTON_METERS = 160,
/* Velocity */
UNITS_MILLIMETERS_PER_SECOND = 161,
UNITS_MILLIMETERS_PER_MINUTE = 162,
UNITS_METERS_PER_SECOND = 74,
UNITS_METERS_PER_MINUTE = 163,
UNITS_METERS_PER_HOUR = 164,
UNITS_KILOMETERS_PER_HOUR = 75,
UNITS_FEET_PER_SECOND = 76,
UNITS_FEET_PER_MINUTE = 77,
UNITS_MILES_PER_HOUR = 78,
/* Volume */
UNITS_CUBIC_FEET = 79,
UNITS_CUBIC_METERS = 80,
UNITS_IMPERIAL_GALLONS = 81,
UNITS_LITERS = 82,
UNITS_US_GALLONS = 83,
/* Volumetric Flow */
UNITS_CUBIC_FEET_PER_SECOND = 142,
UNITS_CUBIC_FEET_PER_MINUTE = 84,
UNITS_CUBIC_METERS_PER_SECOND = 85,
UNITS_CUBIC_METERS_PER_MINUTE = 165,
UNITS_CUBIC_METERS_PER_HOUR = 135,
UNITS_IMPERIAL_GALLONS_PER_MINUTE = 86,
UNITS_LITERS_PER_SECOND = 87,
UNITS_LITERS_PER_MINUTE = 88,
UNITS_LITERS_PER_HOUR = 136,
UNITS_US_GALLONS_PER_MINUTE = 89,
/* Other */
UNITS_DEGREES_ANGULAR = 90,
UNITS_DEGREES_CELSIUS_PER_HOUR = 91,
UNITS_DEGREES_CELSIUS_PER_MINUTE = 92,
UNITS_DEGREES_FAHRENHEIT_PER_HOUR = 93,
UNITS_DEGREES_FAHRENHEIT_PER_MINUTE = 94,
UNITS_JOULE_SECONDS = 183,
UNITS_KILOGRAMS_PER_CUBIC_METER = 186,
UNITS_KW_HOURS_PER_SQUARE_METER = 137,
UNITS_KW_HOURS_PER_SQUARE_FOOT = 138,
UNITS_MEGAJOULES_PER_SQUARE_METER = 139,
UNITS_MEGAJOULES_PER_SQUARE_FOOT = 140,
UNITS_NO_UNITS = 95,
UNITS_NEWTON_SECONDS = 187,
UNITS_NEWTONS_PER_METER = 188,
UNITS_PARTS_PER_MILLION = 96,
UNITS_PARTS_PER_BILLION = 97,
UNITS_PERCENT = 98,
UNITS_PERCENT_OBSCURATION_PER_FOOT = 143,
UNITS_PERCENT_OBSCURATION_PER_METER = 144,
UNITS_PERCENT_PER_SECOND = 99,
UNITS_PER_MINUTE = 100,
UNITS_PER_SECOND = 101,
UNITS_PSI_PER_DEGREE_FAHRENHEIT = 102,
UNITS_RADIANS = 103,
UNITS_RADIANS_PER_SECOND = 184,
UNITS_REVOLUTIONS_PER_MINUTE = 104,
UNITS_SQUARE_METERS_PER_NEWTON = 185,
UNITS_WATTS_PER_METER_PER_DEGREE_KELVIN = 189,
UNITS_WATTS_PER_SQUARE_METER_DEGREE_KELVIN = 141,
  ; /* Enumerated values 0-255 are reserved for definition by ASHRAE. */
/* Enumerated values 256-65535 may be used by others subject to */
/* the procedures and constraints described in Clause 23. */
/* The last enumeration used in this version is 189. */
MAX_UNITS = 190
} BACNET_ENGINEERING_UNITS;
BACnet error codes may be found in your copy of the BACnet protocol specification, ANSI/ASHRAE Standard 135. That document is copyrighted, but the C enumeration shown below for reference is taken from open source code available under GPL at http://sourceforge.net, and provides essentially the same information (copyrighted by Steve Karg, licensed under GPL as noted at http://sourceforge.net).
BACnet error codes actually consist of two codes: The error Class and the error Code. The classes are the shorter list shown first below, and the codes that may occur for each class follow.
typedef enum {
ERROR_CLASS_DEVICE = 0,
ERROR_CLASS_OBJECT = 1,
ERROR_CLASS_PROPERTY = 2,
ERROR_CLASS_RESOURCES = 3,
ERROR_CLASS_SECURITY = 4,
ERROR_CLASS_SERVICES = 5,
ERROR_CLASS_VT = 6,
ERROR_CLASS_COMMUNICATION = 7,
/* Enumerated values 0-63 are reserved for definition by ASHRAE. */
/* Enumerated values 64-65535 may be used by others subject to */
/* the procedures and constraints described in Clause 23. */
MAX_BACNET_ERROR_CLASS = 8
} BACNET_ERROR_CLASS;
/* These are sorted in the order given in
Clause 18. ERROR, REJECT AND ABORT CODES
The Class and Code pairings are required
to be used in accordance with Clause 18. */
typedef enum {
/* valid for all classes */
ERROR_CODE_OTHER = 0,
/* Error Class - Device */
ERROR_CODE_DEVICE_BUSY = 3,
ERROR_CODE_CONFIGURATION_IN_PROGRESS = 2,
ERROR_CODE_OPERATIONAL_PROBLEM = 25,
/* Error Class - Object */
ERROR_CODE_DYNAMIC_CREATION_NOT_SUPPORTED = 4,
ERROR_CODE_NO_OBJECTS_OF_SPECIFIED_TYPE = 17,
ERROR_CODE_OBJECT_DELETION_NOT_PERMITTED = 23,
ERROR_CODE_OBJECT_IDENTIFIER_ALREADY_EXISTS = 24,
ERROR_CODE_READ_ACCESS_DENIED = 27,
ERROR_CODE_UNKNOWN_OBJECT = 31,
ERROR_CODE_UNSUPPORTED_OBJECT_TYPE = 36,
/* Error Class - Property */
ERROR_CODE_CHARACTER_SET_NOT_SUPPORTED = 41,
ERROR_CODE_DATATYPE_NOT_SUPPORTED = 47,
ERROR_CODE_INCONSISTENT_SELECTION_CRITERION = 8,
ERROR_CODE_INVALID_ARRAY_INDEX = 42,
ERROR_CODE_INVALID_DATA_TYPE = 9,
ERROR_CODE_NOT_COV_PROPERTY = 44,
ERROR_CODE_OPTIONAL_FUNCTIONALITY_NOT_SUPPORTED = 45,
ERROR_CODE_PROPERTY_IS_NOT_AN_ARRAY = 50,
/* ERROR_CODE_READ_ACCESS_DENIED = 27, */
ERROR_CODE_UNKNOWN_PROPERTY = 32,
ERROR_CODE_VALUE_OUT_OF_RANGE = 37,
ERROR_CODE_WRITE_ACCESS_DENIED = 40,
/* Error Class - Resources */
ERROR_CODE_NO_SPACE_FOR_OBJECT = 18,
ERROR_CODE_NO_SPACE_TO_ADD_LIST_ELEMENT = 19,
ERROR_CODE_NO_SPACE_TO_WRITE_PROPERTY = 20,
/* Error Class - Security */
ERROR_CODE_AUTHENTICATION_FAILED = 1,
/* ERROR_CODE_CHARACTER_SET_NOT_SUPPORTED = 41, */
ERROR_CODE_INCOMPATIBLE_SECURITY_LEVELS = 6,
ERROR_CODE_INVALID_OPERATOR_NAME = 12,
ERROR_CODE_KEY_GENERATION_ERROR = 15,
ERROR_CODE_PASSWORD_FAILURE = 26,
ERROR_CODE_SECURITY_NOT_SUPPORTED = 28,
ERROR_CODE_TIMEOUT = 30,
/* Error Class - Services */
/* ERROR_CODE_CHARACTER_SET_NOT_SUPPORTED = 41, */
ERROR_CODE_COV_SUBSCRIPTION_FAILED = 43,
ERROR_CODE_DUPLICATE_NAME = 48,
ERROR_CODE_DUPLICATE_OBJECT_ID = 49,
ERROR_CODE_FILE_ACCESS_DENIED = 5,
ERROR_CODE_INCONSISTENT_PARAMETERS = 7,
ERROR_CODE_INVALID_CONFIGURATION_DATA = 46,
ERROR_CODE_INVALID_FILE_ACCESS_METHOD = 10,
ERROR_CODE_ERROR_CODE_INVALID_FILE_START_POSITION = 11,
ERROR_CODE_INVALID_PARAMETER_DATA_TYPE = 13,
ERROR_CODE_INVALID_TIME_STAMP = 14,
ERROR_CODE_MISSING_REQUIRED_PARAMETER = 16,
/* ERROR_CODE_OPTIONAL_FUNCTIONALITY_NOT_SUPPORTED = 45, */
ERROR_CODE_PROPERTY_IS_NOT_A_LIST = 22,
ERROR_CODE_SERVICE_REQUEST_DENIED = 29,
/* Error Class - VT */
ERROR_CODE_UNKNOWN_VT_CLASS = 34,
ERROR_CODE_UNKNOWN_VT_SESSION = 35,
ERROR_CODE_NO_VT_SESSIONS_AVAILABLE = 21,
ERROR_CODE_VT_SESSION_ALREADY_CLOSED = 38,
ERROR_CODE_VT_SESSION_TERMINATION_FAILURE = 39,
/* unused */
ERROR_CODE_RESERVED1 = 33,
/* new error codes from new addenda */
ERROR_CODE_ABORT_BUFFER_OVERFLOW = 51,
ERROR_CODE_ABORT_INVALID_APDU_IN_THIS_STATE = 52,
ERROR_CODE_ABORT_PREEMPTED_BY_HIGHER_PRIORITY_TASK = 53,
ERROR_CODE_ABORT_SEGMENTATION_NOT_SUPPORTED = 54,
ERROR_CODE_ABORT_PROPRIETARY = 55,
ERROR_CODE_ABORT_OTHER = 56,
ERROR_CODE_INVALID_TAG = 57,
ERROR_CODE_NETWORK_DOWN = 58,
ERROR_CODE_REJECT_BUFFER_OVERFLOW = 59,
ERROR_CODE_REJECT_INCONSISTENT_PARAMETERS = 60,
ERROR_CODE_REJECT_INVALID_PARAMETER_DATA_TYPE = 61,
ERROR_CODE_REJECT_INVALID_TAG = 62,
ERROR_CODE_REJECT_MISSING_REQUIRED_PARAMETER = 63,
ERROR_CODE_REJECT_PARAMETER_OUT_OF_RANGE = 64,
ERROR_CODE_REJECT_TOO_MANY_ARGUMENTS = 65,
ERROR_CODE_REJECT_UNDEFINED_ENUMERATION = 66,
ERROR_CODE_REJECT_UNRECOGNIZED_SERVICE = 67,
ERROR_CODE_REJECT_PROPRIETARY = 68,
ERROR_CODE_REJECT_OTHER = 69,
ERROR_CODE_UNKNOWN_DEVICE = 70,
ERROR_CODE_UNKNOWN_ROUTE = 71,
ERROR_CODE_VALUE_NOT_INITIALIZED = 72,
ERROR_CODE_INVALID_EVENT_STATE = 73,
ERROR_CODE_NO_ALARM_CONFIGURED = 74,
ERROR_CODE_LOG_BUFFER_FULL = 75,
ERROR_CODE_LOGGED_VALUE_PURGED = 76,
ERROR_CODE_NO_PROPERTY_SPECIFIED = 77,
ERROR_CODE_NOT_CONFIGURED_FOR_TRIGGERED_LOGGING = 78,
ERROR_CODE_UNKNOWN_SUBSCRIPTION = 79,
ERROR_CODE_PARAMETER_OUT_OF_RANGE = 80,
ERROR_CODE_UNKNOWN_FILE_SIZE = 81,
ERROR_CODE_BUSY = 82,
ERROR_CODE_COMMUNICATION_DISABLED = 83,
MAX_BACNET_ERROR_CODE = 84
/* Enumerated values 0-255 are reserved for definition by ASHRAE. */
/* Enumerated values 256-65535 may be used by others subject to */
/* the procedures and constraints described in Clause 23. */
/* The last enumeration used in this version is 50. */
} BACNET_ERROR_CODE;