Skip to content

Commit

Permalink
[SL-UP]Update our refrigerator app zap configs. Enable identify, set …
Browse files Browse the repository at this point in the history
…default… (#86)
  • Loading branch information
jmartinez-silabs authored Nov 1, 2024
1 parent b58c614 commit 9e3f034
Show file tree
Hide file tree
Showing 4 changed files with 491 additions and 382 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,56 @@ struct AtomicAttributeStatusStruct {
status statusCode = 1;
}

/** Attributes and commands for putting a device into Identification mode (e.g. flashing a light). */
cluster Identify = 3 {
revision 4;

enum EffectIdentifierEnum : enum8 {
kBlink = 0;
kBreathe = 1;
kOkay = 2;
kChannelChange = 11;
kFinishEffect = 254;
kStopEffect = 255;
}

enum EffectVariantEnum : enum8 {
kDefault = 0;
}

enum IdentifyTypeEnum : enum8 {
kNone = 0;
kLightOutput = 1;
kVisibleIndicator = 2;
kAudibleBeep = 3;
kDisplay = 4;
kActuator = 5;
}

attribute int16u identifyTime = 0;
readonly attribute IdentifyTypeEnum identifyType = 1;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
readonly attribute attrib_id attributeList[] = 65531;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;

request struct IdentifyRequest {
int16u identifyTime = 0;
}

request struct TriggerEffectRequest {
EffectIdentifierEnum effectIdentifier = 0;
EffectVariantEnum effectVariant = 1;
}

/** Command description for Identify */
command access(invoke: manage) Identify(IdentifyRequest): DefaultSuccess = 0;
/** Command description for TriggerEffect */
command access(invoke: manage) TriggerEffect(TriggerEffectRequest): DefaultSuccess = 64;
}

/** The Descriptor Cluster is meant to replace the support from the Zigbee Device Object (ZDO) for describing a node, its endpoints and clusters. */
cluster Descriptor = 29 {
revision 2;
Expand Down Expand Up @@ -921,53 +971,6 @@ cluster NetworkCommissioning = 49 {
command access(invoke: administer) QueryIdentity(QueryIdentityRequest): QueryIdentityResponse = 9;
}

/** The cluster provides commands for retrieving unstructured diagnostic logs from a Node that may be used to aid in diagnostics. */
cluster DiagnosticLogs = 50 {
revision 1; // NOTE: Default/not specifically set

enum IntentEnum : enum8 {
kEndUserSupport = 0;
kNetworkDiag = 1;
kCrashLogs = 2;
}

enum StatusEnum : enum8 {
kSuccess = 0;
kExhausted = 1;
kNoLogs = 2;
kBusy = 3;
kDenied = 4;
}

enum TransferProtocolEnum : enum8 {
kResponsePayload = 0;
kBDX = 1;
}

readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
readonly attribute attrib_id attributeList[] = 65531;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;

request struct RetrieveLogsRequestRequest {
IntentEnum intent = 0;
TransferProtocolEnum requestedProtocol = 1;
optional char_string<32> transferFileDesignator = 2;
}

response struct RetrieveLogsResponse = 1 {
StatusEnum status = 0;
long_octet_string logContent = 1;
optional epoch_us UTCTimeStamp = 2;
optional systime_us timeSinceBoot = 3;
}

/** Retrieving diagnostic logs from a Node */
command RetrieveLogsRequest(RetrieveLogsRequestRequest): RetrieveLogsResponse = 0;
}

/** The General Diagnostics Cluster, along with other diagnostics clusters, provide a means to acquire standardized diagnostics metrics that MAY be used by a Node to assist a user or Administrative Node in diagnosing potential problems. */
cluster GeneralDiagnostics = 51 {
revision 2;
Expand Down Expand Up @@ -1640,6 +1643,20 @@ endpoint 0 {
device type ma_rootdevice = 22, version 1;


server cluster Identify {
ram attribute identifyTime default = 0x0;
ram attribute identifyType default = 0x00;
callback attribute generatedCommandList;
callback attribute acceptedCommandList;
callback attribute eventList;
callback attribute attributeList;
ram attribute featureMap default = 0;
ram attribute clusterRevision default = 4;

handle command Identify;
handle command TriggerEffect;
}

server cluster Descriptor {
callback attribute deviceTypeList;
callback attribute serverList;
Expand Down Expand Up @@ -1757,10 +1774,12 @@ endpoint 0 {
ram attribute lastNetworkingStatus;
ram attribute lastNetworkID;
ram attribute lastConnectErrorValue;
callback attribute supportedThreadFeatures;
callback attribute threadVersion;
callback attribute generatedCommandList;
callback attribute acceptedCommandList;
callback attribute attributeList;
ram attribute featureMap default = 2;
callback attribute featureMap default = 2;
ram attribute clusterRevision default = 1;

handle command ScanNetworks;
Expand All @@ -1773,18 +1792,6 @@ endpoint 0 {
handle command ReorderNetwork;
}

server cluster DiagnosticLogs {
callback attribute generatedCommandList;
callback attribute acceptedCommandList;
callback attribute eventList;
callback attribute attributeList;
ram attribute featureMap default = 0;
ram attribute clusterRevision default = 1;

handle command RetrieveLogsRequest;
handle command RetrieveLogsResponse;
}

server cluster GeneralDiagnostics {
emits event HardwareFaultChange;
emits event RadioFaultChange;
Expand Down Expand Up @@ -1924,7 +1931,7 @@ endpoint 1 {
}

server cluster RefrigeratorAlarm {
ram attribute mask default = 0;
ram attribute mask default = 1;
ram attribute state default = 0;
ram attribute supported default = 0;
callback attribute generatedCommandList;
Expand Down
Loading

0 comments on commit 9e3f034

Please sign in to comment.