Skip to content

Commit

Permalink
Merge branch 'master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
ankk-css authored Aug 6, 2024
2 parents 5327952 + 653a55f commit cd0d970
Show file tree
Hide file tree
Showing 189 changed files with 5,116 additions and 4,506 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ jobs:
if: github.actor != 'restyled-io[bot]'

container:
image: ghcr.io/project-chip/chip-build:54
image: ghcr.io/project-chip/chip-build:65
volumes:
- "/:/runner-root-volume"
- "/tmp/log_output:/tmp/test_logs"
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,8 @@ jobs:
--no-print \
--log-level info \
src/app/zap-templates/zcl/data-model/chip/global-attributes.xml \
src/app/zap-templates/zcl/data-model/chip/global-bitmaps.xml \
src/app/zap-templates/zcl/data-model/chip/global-enums.xml \
src/app/zap-templates/zcl/data-model/chip/global-structs.xml \
src/app/zap-templates/zcl/data-model/chip/semantic-tag-namespace-enums.xml \
src/app/zap-templates/zcl/data-model/chip/access-control-definitions.xml \
Expand Down
4 changes: 3 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,9 @@
"thread": "cpp",
"variant": "cpp",
"any": "cpp",
"future": "cpp"
"future": "cpp",
"list": "cpp",
"unordered_set": "cpp"
},
// Configure paths or glob patterns to exclude from file watching.
"files.watcherExclude": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@ enum AreaTypeTag : enum8 {
kWorkshop = 94;
}

enum AtomicRequestTypeEnum : enum8 {
kBeginWrite = 0;
kCommitWrite = 1;
kRollbackWrite = 2;
}

enum FloorSurfaceTag : enum8 {
kCarpet = 0;
kCeramic = 1;
Expand Down Expand Up @@ -220,6 +226,11 @@ struct LocationDescriptorStruct {
nullable AreaTypeTag areaType = 2;
}

struct AtomicAttributeStatusStruct {
attrib_id attributeID = 0;
status statusCode = 1;
}

/** Attributes and commands for putting a device into Identification mode (e.g. flashing a light). */
cluster Identify = 3 {
revision 4;
Expand Down Expand Up @@ -1520,7 +1531,7 @@ cluster ActivatedCarbonFilterMonitoring = 114 {

/** An interface for configuring and controlling the functionality of a thermostat. */
cluster Thermostat = 513 {
revision 6;
revision 7;

enum ACCapacityFormatEnum : enum8 {
kBTUh = 0;
Expand Down Expand Up @@ -1566,7 +1577,6 @@ cluster Thermostat = 513 {
}

enum PresetScenarioEnum : enum8 {
kUnspecified = 0;
kOccupied = 1;
kUnoccupied = 2;
kSleep = 3;
Expand Down Expand Up @@ -1639,7 +1649,6 @@ cluster Thermostat = 513 {
kLocalTemperatureNotExposed = 0x40;
kMatterScheduleConfiguration = 0x80;
kPresets = 0x100;
kSetpoints = 0x200;
}

bitmap HVACSystemTypeBitmap : bitmap8 {
Expand All @@ -1649,6 +1658,10 @@ cluster Thermostat = 513 {
kHeatingUsesFuel = 0x20;
}

bitmap OccupancyBitmap : bitmap8 {
kOccupied = 0x1;
}

bitmap PresetTypeFeaturesBitmap : bitmap16 {
kAutomatic = 0x1;
kSupportsNames = 0x2;
Expand Down Expand Up @@ -1714,7 +1727,7 @@ cluster Thermostat = 513 {
optional char_string<64> name = 2;
optional octet_string<16> presetHandle = 3;
ScheduleTransitionStruct transitions[] = 4;
optional nullable boolean builtIn = 5;
nullable boolean builtIn = 5;
}

struct PresetStruct {
Expand Down Expand Up @@ -1746,23 +1759,23 @@ cluster Thermostat = 513 {

readonly attribute nullable temperature localTemperature = 0;
readonly attribute optional nullable temperature outdoorTemperature = 1;
readonly attribute optional bitmap8 occupancy = 2;
readonly attribute optional OccupancyBitmap occupancy = 2;
readonly attribute optional temperature absMinHeatSetpointLimit = 3;
readonly attribute optional temperature absMaxHeatSetpointLimit = 4;
readonly attribute optional temperature absMinCoolSetpointLimit = 5;
readonly attribute optional temperature absMaxCoolSetpointLimit = 6;
readonly attribute optional int8u PICoolingDemand = 7;
readonly attribute optional int8u PIHeatingDemand = 8;
attribute access(write: manage) optional bitmap8 HVACSystemTypeConfiguration = 9;
attribute access(write: manage) optional HVACSystemTypeBitmap HVACSystemTypeConfiguration = 9;
attribute access(write: manage) optional int8s localTemperatureCalibration = 16;
attribute optional int16s occupiedCoolingSetpoint = 17;
attribute optional int16s occupiedHeatingSetpoint = 18;
attribute optional int16s unoccupiedCoolingSetpoint = 19;
attribute optional int16s unoccupiedHeatingSetpoint = 20;
attribute access(write: manage) optional int16s minHeatSetpointLimit = 21;
attribute access(write: manage) optional int16s maxHeatSetpointLimit = 22;
attribute access(write: manage) optional int16s minCoolSetpointLimit = 23;
attribute access(write: manage) optional int16s maxCoolSetpointLimit = 24;
attribute optional temperature occupiedCoolingSetpoint = 17;
attribute optional temperature occupiedHeatingSetpoint = 18;
attribute optional temperature unoccupiedCoolingSetpoint = 19;
attribute optional temperature unoccupiedHeatingSetpoint = 20;
attribute access(write: manage) optional temperature minHeatSetpointLimit = 21;
attribute access(write: manage) optional temperature maxHeatSetpointLimit = 22;
attribute access(write: manage) optional temperature minCoolSetpointLimit = 23;
attribute access(write: manage) optional temperature maxCoolSetpointLimit = 24;
attribute access(write: manage) optional int8s minSetpointDeadBand = 25;
attribute access(write: manage) optional RemoteSensingBitmap remoteSensing = 26;
attribute access(write: manage) ControlSequenceOfOperationEnum controlSequenceOfOperation = 27;
Expand Down Expand Up @@ -1803,8 +1816,7 @@ cluster Thermostat = 513 {
readonly attribute optional nullable octet_string<16> activeScheduleHandle = 79;
attribute access(write: manage) optional PresetStruct presets[] = 80;
attribute access(write: manage) optional ScheduleStruct schedules[] = 81;
readonly attribute optional boolean presetsSchedulesEditable = 82;
readonly attribute optional nullable epoch_s setpointHoldExpiryTimestamp = 83;
readonly attribute optional nullable epoch_s setpointHoldExpiryTimestamp = 82;
readonly attribute command_id generatedCommandList[] = 65528;
readonly attribute command_id acceptedCommandList[] = 65529;
readonly attribute event_id eventList[] = 65530;
Expand Down Expand Up @@ -1844,28 +1856,32 @@ cluster Thermostat = 513 {
octet_string<16> presetHandle = 0;
}

request struct StartPresetsSchedulesEditRequestRequest {
int16u timeoutSeconds = 0;
response struct AtomicResponse = 253 {
status statusCode = 0;
AtomicAttributeStatusStruct attributeStatus[] = 1;
optional int16u timeout = 2;
}

request struct AtomicRequestRequest {
AtomicRequestTypeEnum requestType = 0;
attrib_id attributeRequests[] = 1;
optional int16u timeout = 2;
}

/** Command description for SetpointRaiseLower */
/** Upon receipt, the attributes for the indicated setpoint(s) SHALL have the amount specified in the Amount field added to them. */
command SetpointRaiseLower(SetpointRaiseLowerRequest): DefaultSuccess = 0;
/** Command description for SetWeeklySchedule */
/** This command is used to update the thermostat weekly setpoint schedule from a management system. */
command access(invoke: manage) SetWeeklySchedule(SetWeeklyScheduleRequest): DefaultSuccess = 1;
/** Command description for GetWeeklySchedule */
/** The Current Weekly Schedule Command is sent from the server in response to the Get Weekly Schedule Command. */
command GetWeeklySchedule(GetWeeklyScheduleRequest): GetWeeklyScheduleResponse = 2;
/** This command is used to clear the weekly schedule. The ClearWeeklySchedule command has no payload. */
/** This command is used to clear the weekly schedule. */
command access(invoke: manage) ClearWeeklySchedule(): DefaultSuccess = 3;
/** This command is used to set the active schedule. */
/** Upon receipt, if the Schedules attribute contains a ScheduleStruct whose ScheduleHandle field matches the value of the ScheduleHandle field, the server SHALL set the thermostat's ActiveScheduleHandle attribute to the value of the ScheduleHandle field. */
command SetActiveScheduleRequest(SetActiveScheduleRequestRequest): DefaultSuccess = 5;
/** This command is used to set the active preset. */
/** ID */
command SetActivePresetRequest(SetActivePresetRequestRequest): DefaultSuccess = 6;
/** This command is used to start editing the presets and schedules. */
command access(invoke: manage) StartPresetsSchedulesEditRequest(StartPresetsSchedulesEditRequestRequest): DefaultSuccess = 7;
/** This command is used to cancel editing presets and schedules. */
command access(invoke: manage) CancelPresetsSchedulesEditRequest(): DefaultSuccess = 8;
/** This command is used to notify the server that all edits are done and should be committed. */
command access(invoke: manage) CommitPresetsSchedulesRequest(): DefaultSuccess = 9;
/** Begins, Commits or Cancels an atomic write */
command access(invoke: manage) AtomicRequest(AtomicRequestRequest): AtomicResponse = 254;
}

/** An interface for controlling a fan in a heating/cooling system. */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@ enum AreaTypeTag : enum8 {
kWorkshop = 94;
}

enum AtomicRequestTypeEnum : enum8 {
kBeginWrite = 0;
kCommitWrite = 1;
kRollbackWrite = 2;
}

enum FloorSurfaceTag : enum8 {
kCarpet = 0;
kCeramic = 1;
Expand Down Expand Up @@ -220,6 +226,11 @@ struct LocationDescriptorStruct {
nullable AreaTypeTag areaType = 2;
}

struct AtomicAttributeStatusStruct {
attrib_id attributeID = 0;
status statusCode = 1;
}

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

0 comments on commit cd0d970

Please sign in to comment.