Bridges and fabric administration57 — Bridged Device Basic Information

Matter Cluster 57 — Bridged Device Basic Information

Matter Cluster 57 (0x0039) Bridged Device Basic Information: attributes, commands, events, data types, shadow paths and bridge payload examples.

Matter Cluster 57 — Bridged Device Basic Information Cluster

Matter Cluster 57, also written as 0x0039, is the Bridged Device Basic Information Cluster. This cluster provides attributes and events for determining basic information about Bridged Nodes. This cluster is derived from the Basic Information cluster and serves two purposes towards a Node communicating with a Bridge: - Indicate that the functionality on the Endpoint where it is placed (and its Parts) is bridged, and - Provide a centralized collection of attributes that the Node may collect to aid in conveying information regarding the Bridged Device to a user, such as the vendor name, the model name, or user-assigned name.

This cluster is derived from the Basic Information cluster: it inherits the base attributes, commands and data types listed below and adds the cluster-specific values. Where the base definition applies, the base text is used.

Cluster Identity

FieldValue
Cluster ID decimal57
Cluster ID hex0x0039
Cluster nameBridged Device Basic Information
Cluster revision (Matter 1.6.1)6
Roleutility
ScopeEndpoint
PICS codeBRBINFO
Typical endpoint1

Revision history

RevisionChange
1Initial revision
2Added ProductAppearance attribute
3Added SpecificationVersion and MaxPathsPerInvoke attributes
4Updated conformance for UniqueID to mandatory, ProductID to optional when bridging Matter devices, add the BridgedICDSupport feature
5Added ConfigurationVersion attribute
6Adopt latest version of base cluster (Basic Information).

Shadow Path Format

Cluster 57 values in the device shadow use this format:

endpoint_id / 57 / attribute_id

Example:

{
  "1/57/17": true
}
PartMeaning
1Endpoint ID
57Bridged Device Basic Information cluster
17Reachable attribute

Cluster 57 Features

The FeatureMap attribute (1/57/65532) is a bitmap. Each bit set means the device implements that feature and the attributes and commands that depend on it.

BitCodeFeatureConformanceMeaning
20BISBridgedICDSupport[ClusterRevision >= 4]Support bridged ICDs.

Example: FeatureMap = 0 means no optional feature is enabled; 1048576 means every feature listed above is enabled.


Data Types

ColorEnum

The data type of ColorEnum is derived from enum8.

ValueNameConformanceMeaning
0BlackMApproximately RGB #000000.
1NavyMApproximately RGB #000080.
2GreenMApproximately RGB #008000.
3TealMApproximately RGB #008080.
4MaroonMApproximately RGB #800000.
5PurpleMApproximately RGB #800080.
6OliveMApproximately RGB #808000.
7GrayMApproximately RGB #808080.
8BlueMApproximately RGB #0000FF.
9LimeMApproximately RGB #00FF00.
10AquaMApproximately RGB #00FFFF.
11RedMApproximately RGB #FF0000.
12FuchsiaMApproximately RGB #FF00FF.
13YellowMApproximately RGB #FFFF00.
14WhiteMApproximately RGB #FFFFFF.
15NickelMTypical hardware "Nickel" color.
16ChromeMTypical hardware "Chrome" color.
17BrassMTypical hardware "Brass" color.
18CopperMTypical hardware "Copper" color.
19SilverMTypical hardware "Silver" color.
20GoldMTypical hardware "Gold" color.

ProductFinishEnum

The data type of ProductFinishEnum is derived from enum8.

ValueNameConformanceMeaning
0OtherMProduct has some other finish not listed below.
1MatteMProduct has a matte finish.
2SatinMProduct has a satin finish.
3PolishedMProduct has a polished or shiny finish.
4RuggedMProduct has a rugged finish.
5FabricMProduct has a fabric finish.

CapabilityMinimaStruct (struct)

This structure provides constant values related to overall global capabilities of this Node, that are not cluster-specific.

FieldNameTypeConformanceConstraintMeaning
0CaseSessionsPerFabricuint16M3 to 10000Indicates the actual minimum number of concurrent CASE sessions that are supported per fabric.
1SubscriptionsPerFabricuint16M3 to 10000Indicates the actual minimum number of concurrent subscriptions supported per fabric.
2SimultaneousInvocationsSupporteduint16ClusterRevision >= 61 to 10000Indicates the actual maximum number of concurrent Invoke interactions that can be processed simultaneously by the node before possibly returning a BUSY status code.
3SimultaneousWritesSupporteduint16ClusterRevision >= 61 to 10000Indicates the actual minimum number of concurrent Write interactions that can be processed simultaneously by the node before possibly returning a BUSY status code.
4ReadPathsSupporteduint16ClusterRevision >= 69 to 10000Indicates the actual maximum number of read paths (i.e. the sum of lengths of the lists of AttributePathIB and EventPathIB in the action) which a node guarantees being able to process in any Read Request Action.
5SubscribePathsSupporteduint16ClusterRevision >= 63 to 10000Indicates the actual maximum number of subscription paths (i.e. the sum of lengths of the lists of AttributePathIB and EventPathIB in the action) which a node guarantees being able to process in any Subscribe Request …

ProductAppearanceStruct (struct)

This structure provides a description of the product's appearance.

FieldNameTypeConformanceConstraintMeaning
0FinishProductFinishEnumM—Indicates the visible finish of the product.
1PrimaryColorColorEnum (nullable)M—This field indicates the representative color of the visible parts of the product.

Cluster 57 Attributes

Cluster 57 defines 24 attributes plus the global attributes. Conformance: M mandatory, O optional, a feature code means "mandatory when that feature is present", square brackets mean "optional when …".

IDHexAttributeTypeConformanceAccessQualitiesDefault
00x0000DataModelRevisionuint16XR (read: view)—MS
10x0001VendorNamestringdescR (read: view)—MS
20x0002VendorIDvendor-iddescR (read: view)—MS
30x0003ProductNamestringOR (read: view)—MS
40x0004ProductIDuint16descR (read: view)—MS
50x0005NodeLabelstringOR/W (read: view, write: manage)persisted""
60x0006LocationstringXR/W (read: view, write: admin)persisted"XX"
70x0007HardwareVersionuint16OR (read: view)—0
80x0008HardwareVersionStringstringOR (read: view)—MS
90x0009SoftwareVersionuint32OR (read: view)—0
100x000ASoftwareVersionStringstringOR (read: view)—MS
110x000BManufacturingDatestringOR (read: view)—MS
120x000CPartNumberstringOR (read: view)—MS
130x000DProductURLstringOR (read: view)—MS
140x000EProductLabelstringOR (read: view)—MS
150x000FSerialNumberstringOR (read: view)—MS
160x0010LocalConfigDisabledboolXR/W (read: view, write: manage)persistedfalse
170x0011ReachableboolMR (read: view)—true
180x0012UniqueIDstringClusterRevision >= 4, OR (read: view)—MS
190x0013CapabilityMinimaCapabilityMinimaStructXR (read: view)—MS
200x0014ProductAppearanceProductAppearanceStruct[ClusterRevision >= 2]R (read: view)—MS
210x0015SpecificationVersionuint32XR (read: view)—0
220x0016MaxPathsPerInvokeuint16XR (read: view)—1
240x0018ConfigurationVersionuint32[ClusterRevision >= 6]R (read: view)persisted1

Global attributes

IDHexAttributeMeaning
655280xFFF8GeneratedCommandListResponse command IDs this server generates.
655290xFFF9AcceptedCommandListCommand IDs this server accepts.
655310xFFFBAttributeListAttribute IDs implemented.
655320xFFFCFeatureMapImplemented optional features (see above).
655330xFFFDClusterRevisionCluster revision implemented; 6 for a Matter 1.6.1 device.

Attribute Details

Attribute 0 / 0x0000 — DataModelRevision

Path example:

1/57/0

No condensed specification text is available for DataModelRevision; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typeuint16
ConformanceX
AccessR (read: view)
Constraintdesc
DefaultMS

Example:

{
  "1/57/0": 1
}

Attribute 1 / 0x0001 — VendorName

Path example:

1/57/1

No condensed specification text is available for VendorName; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
Conformancedesc
AccessR (read: view)
Constraintmax length 32
DefaultMS

Example:

{
  "1/57/1": "example"
}

Attribute 2 / 0x0002 — VendorID

Path example:

1/57/2

No condensed specification text is available for VendorID; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typevendor-id
Conformancedesc
AccessR (read: view)
DefaultMS

Example:

{
  "1/57/2": 1
}

Attribute 3 / 0x0003 — ProductName

Path example:

1/57/3

No condensed specification text is available for ProductName; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintmax length 32
DefaultMS

Example:

{
  "1/57/3": "example"
}

Attribute 4 / 0x0004 — ProductID

Path example:

1/57/4

No condensed specification text is available for ProductID; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typeuint16
Conformancedesc
AccessR (read: view)
DefaultMS

Example:

{
  "1/57/4": 1
}

Attribute 5 / 0x0005 — NodeLabel

Path example:

1/57/5

No condensed specification text is available for NodeLabel; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR/W (read: view, write: manage)
Qualitiespersisted
Constraintmax length 32
Default""

Example:

{
  "1/57/5": "example"
}

Attribute 6 / 0x0006 — Location

Path example:

1/57/6

No condensed specification text is available for Location; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceX
AccessR/W (read: view, write: admin)
Qualitiespersisted
Constraintallowed: 2
Default"XX"

Example:

{
  "1/57/6": "example"
}

Attribute 7 / 0x0007 — HardwareVersion

Path example:

1/57/7

No condensed specification text is available for HardwareVersion; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typeuint16
ConformanceO
AccessR (read: view)
Default0

Example:

{
  "1/57/7": 1
}

Attribute 8 / 0x0008 — HardwareVersionString

Path example:

1/57/8

No condensed specification text is available for HardwareVersionString; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintlength 1 to 64
DefaultMS

Example:

{
  "1/57/8": "example"
}

Attribute 9 / 0x0009 — SoftwareVersion

Path example:

1/57/9

No condensed specification text is available for SoftwareVersion; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typeuint32
ConformanceO
AccessR (read: view)
Constraintdesc
Default0

Example:

{
  "1/57/9": 1
}

Attribute 10 / 0x000A — SoftwareVersionString

Path example:

1/57/10

No condensed specification text is available for SoftwareVersionString; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintlength 1 to 64
DefaultMS

Example:

{
  "1/57/10": "example"
}

Attribute 11 / 0x000B — ManufacturingDate

Path example:

1/57/11

No condensed specification text is available for ManufacturingDate; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintlength 8 to 16
DefaultMS

Example:

{
  "1/57/11": "example"
}

Attribute 12 / 0x000C — PartNumber

Path example:

1/57/12

No condensed specification text is available for PartNumber; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintmax length 32
DefaultMS

Example:

{
  "1/57/12": "example"
}

Attribute 13 / 0x000D — ProductURL

Path example:

1/57/13

No condensed specification text is available for ProductURL; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintmax length 256
DefaultMS

Example:

{
  "1/57/13": "example"
}

Attribute 14 / 0x000E — ProductLabel

Path example:

1/57/14

No condensed specification text is available for ProductLabel; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintmax length 64
DefaultMS

Example:

{
  "1/57/14": "example"
}

Attribute 15 / 0x000F — SerialNumber

Path example:

1/57/15

No condensed specification text is available for SerialNumber; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceO
AccessR (read: view)
Constraintmax length 32
DefaultMS

Example:

{
  "1/57/15": "example"
}

Attribute 16 / 0x0010 — LocalConfigDisabled

Path example:

1/57/16

No condensed specification text is available for LocalConfigDisabled; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typebool
ConformanceX
AccessR/W (read: view, write: manage)
Qualitiespersisted
Defaultfalse

Example:

{
  "1/57/16": true
}

Attribute 17 / 0x0011 — Reachable

Path example:

1/57/17

This attribute is used to indicate whether the bridged device is reachable by the bridge, so a Matter Node which wants to communicate with a bridged device can get an indication that this might fail (when the attribute is False). Determination of reachability might not be perfect (e.g. depending on technology employed), so the Matter Node should be aware of the risk of false positives and negatives on reachability determination. For example, a bridged device may be marked as unreachable while it could actually be reached, and vice-versa.

PropertyValue
Typebool
ConformanceM
AccessR (read: view)
Defaulttrue

Example:

{
  "1/57/17": true
}

Attribute 18 / 0x0012 — UniqueID

Path example:

1/57/18

No condensed specification text is available for UniqueID; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typestring
ConformanceClusterRevision >= 4, O
AccessR (read: view)
Constraintmax length 32
DefaultMS

Example:

{
  "1/57/18": "example"
}

Attribute 19 / 0x0013 — CapabilityMinima

Path example:

1/57/19

No condensed specification text is available for CapabilityMinima; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
TypeCapabilityMinimaStruct
ConformanceX
AccessR (read: view)
DefaultMS

Value is a CapabilityMinimaStruct struct (see Data Types).

Example:

{
  "1/57/19": {
    "caseSessionsPerFabric": 3,
    "subscriptionsPerFabric": 3,
    "simultaneousInvocationsSupported": 1,
    "simultaneousWritesSupported": 1
  }
}

Attribute 20 / 0x0014 — ProductAppearance

Path example:

1/57/20

No condensed specification text is available for ProductAppearance; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
TypeProductAppearanceStruct
Conformance[ClusterRevision >= 2]
AccessR (read: view)
DefaultMS

Value is a ProductAppearanceStruct struct (see Data Types).

Example:

{
  "1/57/20": {
    "finish": 0,
    "primaryColor": 0
  }
}

Attribute 21 / 0x0015 — SpecificationVersion

Path example:

1/57/21

No condensed specification text is available for SpecificationVersion; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typeuint32
ConformanceX
AccessR (read: view)
Constraintdesc
Default0

Example:

{
  "1/57/21": 1
}

Attribute 22 / 0x0016 — MaxPathsPerInvoke

Path example:

1/57/22

No condensed specification text is available for MaxPathsPerInvoke; use the type, conformance and constraint below together with the cluster description above.

PropertyValue
Typeuint16
ConformanceX
AccessR (read: view)
Constraintmin 1
Default1

Example:

{
  "1/57/22": 1
}

Attribute 24 / 0x0018 — ConfigurationVersion

Path example:

1/57/24

This attribute contains the current version number for the configuration of the bridged device. A larger value of ConfigurationVersion indicates a newer configuration than a lower value. If the bridge detects a change on a bridged device, which it deems as a change in the configuration of the bridged device, it must increase this attribute (and the corresponding attribute on the bridge itself). The ability and the method used to detect such a change on a bridged device is manufacturer specific.

PropertyValue
Typeuint32
Conformance[ClusterRevision >= 6]
AccessR (read: view)
Qualitiespersisted
Constraintmin 1
Default1

Example:

{
  "1/57/24": 1
}

Cluster 57 Commands

Cluster 57 has 1 client-to-server command and 0 responses.

IDHexCommandDirectionConformanceResponseDescription
1280x80KeepActiveclient → serverBISstatusOn receipt, the server must attempt to keep the bridged device active for the duration specified by the command, when the device is next active.

AcceptedCommandList

The AcceptedCommandList attribute lists the command IDs the endpoint actually implements:

endpoint_id / 57 / 65529
{
  "1/57/65529": [
    128
  ]
}

Before sending a Cluster 57 command, check that the command ID exists in endpoint/57/65529. Optional commands are only present when the matching feature is set in FeatureMap.


Bridge Command Payload Format

The bridge accepts Matter commands in this structure:

{
  "message_id": "1",
  "command": "device_command",
  "args": {
    "endpoint_id": 1,
    "cluster_id": 57,
    "command_name": "KeepActive",
    "payload": {},
    "timed_request_timeout_ms": 1000
  }
}

For Cluster 57, always use "cluster_id": 57. Payload keys are the command field names in lowerCamelCase. Octet-string fields are base64-encoded. timed_request_timeout_ms is required for timed commands and ignored otherwise.


Command: KeepActive

Purpose

On receipt, the server must attempt to keep the bridged device active for the duration specified by the command, when the device is next active. The implementation of this is best-effort since it may interact with non-native protocols. However, several specific protocol requirements are: - If the bridged device is a Matter Intermittently Connected Device, then the server must send a StayActiveRequest command with the StayActiveDuration field set to value of the StayActiveDuration field in the received command to the bridged device when the bridged device next sends a checks-in message or subscription report. See Intermittently Connected Devices Behavior for details on ICD state management.

Command Identity

FieldValue
Command ID128
Command hex0x80
Command nameKeepActive
Directionclient → server
ConformanceBIS
Responsestatus
Access(invoke: operate)

Payload Fields

IDFieldPayload keyTypeConformanceConstraintMeaning
0StayActiveDurationstayActiveDurationuint32M—Indicates the duration, in milliseconds, that the device is requested to remain active, once the device becomes active again.
1TimeoutMstimeoutMsuint32M30000 to 3600000Indicates the period, in milliseconds, that the server will wait before the "pending active" state expires. See the KeepActive Command description for details.

Bridge Command Example

{
  "message_id": "1",
  "command": "device_command",
  "args": {
    "endpoint_id": 1,
    "cluster_id": 57,
    "command_name": "KeepActive",
    "payload": {
      "stayActiveDuration": 1,
      "timeoutMs": 30000
    }
  }
}

Cluster 57 Events

IDHexEventPriorityConformanceDescription
00x00StartUpcriticalO—
10x01ShutDowncriticalO—
20x02LeaveinfoOThe Leave event should be generated by the bridge when it detects that the associated device has left the non-Matter network.
30x03ReachableChangedinfoMThis event is generated when there is a change in the Reachable attribute.
1280x80ActiveChangedinfoBISThis event (when supported) is generated the next time a bridged device becomes active after a KeepActive command is received.

Event 0 — StartUp

IDFieldTypeConformanceMeaning
0SoftwareVersionuint32MThis field is set to the same value as the one available in the SoftwareVersion attribute.

Event 1 — ShutDown

This event has no fields.

Event 2 — Leave

The Leave event should be generated by the bridge when it detects that the associated device has left the non-Matter network. The FabricIndex field has the X conformance, indicating it must NOT be present. This event, in the context of Bridged Device Basic Information cluster, has no usable fields, but the original Basic Information cluster's field definition is kept for completeness.

IDFieldTypeConformanceMeaning
0FabricIndexfabric-idxXThis field contains the local fabric-index of the fabric which the node is about to leave.

Event 3 — ReachableChanged

This event is generated when there is a change in the Reachable attribute. Its purpose is to provide an indication towards interested parties that the reachability of a bridged device has changed over its native connectivity technology, so they may take appropriate action. After (re)start of a bridge this event may be generated.

IDFieldTypeConformanceMeaning
0ReachableNewValueboolMIndicates the value of the Reachable attribute after it was changed.

Event 128 — ActiveChanged

This event (when supported) is generated the next time a bridged device becomes active after a KeepActive command is received. See KeepActive for more details.

IDFieldTypeConformanceMeaning
0PromisedActiveDurationuint32MIndicates the minimum duration, in milliseconds, that the bridged device will remain active after receiving the initial request from the KeepActive processing steps.

SmartphoneKey Notes

  • Bridged Device Basic Information appears on child endpoints of a bridge (for example a Zigbee gateway). Reachable (attribute 17) reflects the bridge's own view of the child, not the hub's presence pipeline.
  • Shadow paths follow endpoint/57/attribute; attribute values that the device reports as unreadable are written as n/a.
  • Attribute IDs, command IDs and enum values on this page come from the CSA Matter 1.6.1 data model; descriptions are condensed from the specification text.