@bacnet-js/device
    Preparing search index...

    Class BDDevice

    Implements a BACnet Device object

    The Device object is a specialized BACnet object that represents the BACnet device itself. It serves as a container for all other BACnet objects and provides device-level properties and services. Each BACnet node hosts exactly one Device object.

    According to the BACnet specification, the Device object includes standard properties:

    • Object_Identifier (automatically added by BACnetObject)
    • Object_Name (automatically added by BACnetObject)
    • Object_Type (automatically added by BACnetObject)
    • System_Status
    • Vendor_Name
    • Vendor_Identifier
    • Model_Name
    • Firmware_Revision
    • Application_Software_Version
    • Protocol_Version
    • Protocol_Revision
    • Protocol_Services_Supported
    • Protocol_Object_Types_Supported
    • Object_List
    • And other properties related to device capabilities and configuration

    Hierarchy (View Summary)

    Implements

    Index

    Constructors

    Properties

    activeCovSubscriptions: BDPolledArrayProperty<COV_SUBSCRIPTION>
    apduSegmentTimeout: BDSingletProperty<UNSIGNED_INTEGER>
    apduTimeout: BDSingletProperty<UNSIGNED_INTEGER>
    applicationSoftwareVersion: BDSingletProperty<CHARACTER_STRING>
    databaseRevision: BDSingletProperty<UNSIGNED_INTEGER>
    daylightSavingsStatus: BDPolledSingletProperty<BOOLEAN>
    description: BDSingletProperty<CHARACTER_STRING>
    deviceAddressBinding: BDArrayProperty<NULL>
    eventState: BDSingletProperty<ENUMERATED, EventState>
    firmwareRevision: BDSingletProperty<CHARACTER_STRING>
    identifier: BACNetObjectID

    The unique identifier for this object (type and instance number)

    localDate: BDPolledSingletProperty<DATE>
    localTime: BDPolledSingletProperty<TIME>
    location: BDSingletProperty<CHARACTER_STRING>
    maxApduLengthAccepted: BDSingletProperty<UNSIGNED_INTEGER>
    maxSegmentsAccepted: BDSingletProperty<UNSIGNED_INTEGER>
    modelName: BDSingletProperty<CHARACTER_STRING>
    numberOfApduRetries: BDSingletProperty<UNSIGNED_INTEGER>
    objectIdentifier: BDSingletProperty<OBJECTIDENTIFIER>
    objectList: BDPolledArrayProperty<OBJECTIDENTIFIER>
    objectName: BDSingletProperty<CHARACTER_STRING>
    objectType: BDSingletProperty<ENUMERATED, ObjectType>
    outOfService: BDSingletProperty<BOOLEAN>
    propertyList: BDPolledArrayProperty<ENUMERATED, PropertyIdentifier>
    protocolObjectTypesSupported: BDSingletProperty<BIT_STRING>
    protocolRevision: BDSingletProperty<UNSIGNED_INTEGER>
    protocolServicesSupported: BDSingletProperty<BIT_STRING>
    protocolVersion: BDSingletProperty<UNSIGNED_INTEGER>
    reliability: BDSingletProperty<ENUMERATED, Reliability>
    segmentationSupported: BDSingletProperty<ENUMERATED, Segmentation>
    serialNumber: BDSingletProperty<CHARACTER_STRING>
    statusFlags: BDSingletProperty<BIT_STRING>
    structuredObjectList: BDPolledArrayProperty<OBJECTIDENTIFIER>
    systemStatus: BDSingletProperty<ENUMERATED, DeviceStatus>
    utcOffset: BDPolledSingletProperty<SIGNED_INTEGER>
    vendorIdentifier: BDSingletProperty<UNSIGNED_INTEGER>
    vendorName: BDSingletProperty<CHARACTER_STRING>

    Methods

    • Adds a BACnet object to this device

      This method registers a new BACnet object with the device and adds it to the device's object list. The object must have a unique identifier (type and instance).

      Type Parameters

      • T extends BDObject

        The specific BACnet object type

      Parameters

      • object: T

        The BACnet object to add to this device

      Returns T

      The added object

      Error if an object with the same identifier already exists

    • Adds a property to this object

      This method registers a new property with the object and sets up event subscriptions for property value changes.

      Type Parameters

      Parameters

      • property: T

        The property to add

      Returns T

      The added property

      Error if a property with the same identifier already exists