Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add service area cluster to rvc device type template #34075

Merged
Show file tree
Hide file tree
Changes from 47 commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
0a7ecbd
Add definitions for common HomeLocationStruct and types - see connect…
johnfierke May 22, 2024
234c103
Add definition for Service Area Cluster - see connectedhomeip-spec PR…
johnfierke May 22, 2024
ac17ea0
Add semantic tag definitions needed for Service Area Cluster - see co…
johnfierke May 22, 2024
e70eaa8
Update Service Area Cluster definition of LocationInfoStruct - see co…
johnfierke May 22, 2024
c115aa6
Rename SurfaceTag to FloorSurfaceTag - spec PR 8937 commit 431739b3e3…
johnfierke May 22, 2024
08219ee
Fix Carport typo, remove IsGroundFloor field (spec change)
johnfierke May 23, 2024
b6bcd68
Update home location definitions per spec PR 8933 commit f04958166412…
johnfierke May 25, 2024
893333d
update generated files
johnfierke May 25, 2024
0099124
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
johnfierke May 25, 2024
7fdbde7
Update Service Area Cluster definitions per spec PR 8937 up to commit…
johnfierke May 25, 2024
a969dbc
update generated files
johnfierke May 25, 2024
6f74d9d
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 3, 2024
8aaa2dc
Regenerated zap files after merge.
hicklin Jun 3, 2024
ca9d207
Moved the AreaTypeTag namespace definition to namespaces.xml.
hicklin Jun 3, 2024
9837b22
Moved the HomeLoc global struct into global-sturcts.xml.
hicklin Jun 3, 2024
71e6931
Updated the AreaTypeTag namespace to match the latest spec definition.
hicklin Jun 3, 2024
def38fc
Updated the AreaTypeTag namespace to match the latest spec definition.
hicklin Jun 3, 2024
d132cfb
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 3, 2024
3811e36
Updated the matterlint rules with the changes in the xml files.
hicklin Jun 3, 2024
568eb3f
Reverted changes to the rvc zap file.
hicklin Jun 3, 2024
a562e2b
Addded global xml files to relevant lists of xmls.
hicklin Jun 3, 2024
7d61a65
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 4, 2024
cf62628
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 4, 2024
7d60124
Added the Position, Landmark and Floor Surface Namespaces.
hicklin Jun 4, 2024
7dd222e
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 4, 2024
9d34335
Removed namespace tag definitions from the service area cluters XML.
hicklin Jun 4, 2024
61181f2
Regenerated zap files.
hicklin Jun 4, 2024
abad92f
Explicitly set the conformance.
hicklin Jun 7, 2024
b827762
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 7, 2024
4a15763
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 7, 2024
672936c
Fixed typos in the service-area clusters XML from review.
hicklin Jun 7, 2024
fea95d4
Used a more feature rich method for defining the cluster's features.
hicklin Jun 7, 2024
2f17ccc
Reordered data-type definitions to match the order in the spec.
hicklin Jun 7, 2024
6bea5e9
Regenerated zap files.
hicklin Jun 7, 2024
e4d5ee8
Merge branch 'master' into Add-xml-definition-for-service-area-cluster
hicklin Jun 7, 2024
a9012f1
Added github issue to a comment.
hicklin Jun 18, 2024
b343f80
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 18, 2024
60c831c
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 18, 2024
f6816f9
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 20, 2024
cb592f2
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 20, 2024
8fe8493
Renamed namespaces.xml to semantic-tag-namespace-enums.xml.
hicklin Jun 24, 2024
7d03706
Merge branch 'master' into Add-common-definitions-for-Home-Location
hicklin Jun 24, 2024
9a48e48
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 24, 2024
12d2543
Missed some rename locations.
hicklin Jun 24, 2024
e624fdc
Merge branch 'Add-common-definitions-for-Home-Location' into Add-xml-…
hicklin Jun 24, 2024
1915406
Added the Service Area cluster as an optional cluster to the Robotic …
hicklin Jun 25, 2024
babd124
Merge branch 'master' into Add-service-area-cluster-to-rvc-device-typ…
hicklin Jun 26, 2024
dd6b34c
Regenerated zap files after sync with upstream.
hicklin Jun 26, 2024
f327faa
Merge branch 'refs/heads/master' into Add-service-area-cluster-to-rvc…
hicklin Jun 26, 2024
0e23d2a
Regenerated zap files after sync with upstream.
hicklin Jun 26, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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-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 \
src/app/zap-templates/zcl/data-model/chip/access-control-cluster.xml \
src/app/zap-templates/zcl/data-model/chip/account-login-cluster.xml \
Expand Down
1 change: 1 addition & 0 deletions docs/zap_clusters.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ Generally regenerate using one of:
| 257 | 0x101 | DoorLock |
| 258 | 0x102 | WindowCovering |
| 259 | 0x103 | BarrierControl |
| 336 | 0x150 | ServiceArea |
| 512 | 0x200 | PumpConfigurationAndControl |
| 513 | 0x201 | Thermostat |
| 514 | 0x202 | FanControl |
Expand Down
3 changes: 3 additions & 0 deletions scripts/rules.matterlint
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ load "../src/app/zap-templates/zcl/data-model/chip/flow-measurement-cluster.xml"
load "../src/app/zap-templates/zcl/data-model/chip/general-commissioning-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/general-diagnostics-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/global-attributes.xml";
load "../src/app/zap-templates/zcl/data-model/chip/global-structs.xml";
load "../src/app/zap-templates/zcl/data-model/chip/groups-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/group-key-mgmt-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/identify-cluster.xml";
Expand All @@ -58,6 +59,7 @@ load "../src/app/zap-templates/zcl/data-model/chip/media-playback-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/messages-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/mode-base-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/mode-select-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/semantic-tag-namespace-enums.xml";
load "../src/app/zap-templates/zcl/data-model/chip/network-commissioning-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/occupancy-sensing-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/onoff-cluster.xml";
Expand All @@ -79,6 +81,7 @@ load "../src/app/zap-templates/zcl/data-model/chip/refrigerator-and-temperature-
load "../src/app/zap-templates/zcl/data-model/chip/relative-humidity-measurement-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/rvc-clean-mode-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/rvc-run-mode-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/service-area-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/scene.xml";
load "../src/app/zap-templates/zcl/data-model/chip/smoke-co-alarm-cluster.xml";
load "../src/app/zap-templates/zcl/data-model/chip/software-diagnostics-cluster.xml";
Expand Down
3 changes: 3 additions & 0 deletions src/app/zap-templates/zcl/data-model/all.xml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
<xi:include href="chip/general-commissioning-cluster.xml" />
<xi:include href="chip/general-diagnostics-cluster.xml" />
<xi:include href="chip/global-attributes.xml" />
<xi:include href="chip/global-structs.xml" />
<xi:include href="chip/groups-cluster.xml" />
<xi:include href="chip/group-key-mgmt-cluster.xml" />
<xi:include href="chip/icd-management-cluster.xml" />
Expand All @@ -61,6 +62,7 @@
<xi:include href="chip/messages-cluster.xml" />
<xi:include href="chip/mode-base-cluster.xml" />
<xi:include href="chip/mode-select-cluster.xml" />
<xi:include href="chip/semantic-tag-namespace-enums.xml" />
<xi:include href="chip/network-commissioning-cluster.xml" />
<xi:include href="chip/occupancy-sensing-cluster.xml" />
<xi:include href="chip/onoff-cluster.xml" />
Expand All @@ -85,6 +87,7 @@
<xi:include href="chip/replacable-monitoring-cluster.xml.xml" />
<xi:include href="chip/resource-monitoring-cluster.xml" />
<xi:include href="chip/scene.xml" />
<xi:include href="chip/service-area-cluster.xml" />
<xi:include href="chip/smoke-co-alarm-cluster.xml" />
<xi:include href="chip/software-diagnostics-cluster.xml" />
<xi:include href="chip/switch-cluster.xml" />
Expand Down
34 changes: 34 additions & 0 deletions src/app/zap-templates/zcl/data-model/chip/global-structs.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?xml version="1.0"?>
<!--
Copyright (c) 2024 Project CHIP Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<!--
TODO: Make these structures global rather than defining them for each cluster.
This depends on the ability to define global structs via XML tags.
see: https://github.com/project-chip/connectedhomeip/issues/29818
-->

<configurator>
<domain name="CHIP"/>
<struct name="HomeLocationStruct">
<cluster code="0x0150"/> <!-- Service Area Cluster -->
<!-- TODO: add Basic Information Cluster code="0x0028" -->

<item fieldId="0" name="LocationName" type="char_string" length="128" isNullable="false" optional="false"/>
<item fieldId="1" name="FloorNumber" type="int16s" isNullable="true" optional="false"/>
<item fieldId="2" name="AreaType" type="AreaTypeTag" isNullable="true" optional="false"/>
</struct>
</configurator>
Original file line number Diff line number Diff line change
Expand Up @@ -2325,6 +2325,7 @@ limitations under the License.
<include cluster="RVC Run Mode" client="false" server="true" clientLocked="true" serverLocked="true"></include>
<include cluster="RVC Clean Mode" client="false" server="false" clientLocked="true" serverLocked="false"></include>
<include cluster="RVC Operational State" client="false" server="true" clientLocked="true" serverLocked="true"></include>
<include cluster="Service Area" client="false" server="false" clientLocked="true" serverLocked="false"></include>
</clusters>
</deviceType>
<deviceType>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,239 @@
<?xml version="1.0"?>
<!--
Copyright (c) 2024 Project CHIP Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->


<!--
TODO: Make these namespace enums global rather than defining them for each cluster.
This depends on the ability to define global enums via XML tags.
See issue [#29818](https://github.com/project-chip/connectedhomeip/issues/29818).
-->


<configurator>
<enum name="PositionTag" type="enum8">
<cluster code="0x0150"/>
<item value="0x00" name="Left"/>
<item value="0x01" name="Right"/>
<item value="0x02" name="Top"/>
<item value="0x03" name="Bottom"/>
<item value="0x04" name="Middle"/>
<item value="0x05" name="Row"/>
<item value="0x06" name="Column"/>
<item value="0x07" name="Under"/>
<item value="0x08" name="Next To"/>
<item value="0x09" name="Around"/>
<item value="0x0A" name="On"/>
<item value="0x0B" name="Above"/>
<item value="0x0C" name="Front Of"/>
<item value="0x0D" name="Behind"/>
</enum>

<enum name="AreaTypeTag" type="enum8">
<cluster code="0x0150"/> <!-- Service Area Cluster -->
<!-- TODO: add Basic Information Cluster code="0x0028" -->

<item value="0x00" name="Aisle"/>
<item value="0x01" name="Attic"/>
<item value="0x02" name="Back Door"/>
<item value="0x03" name="Back Yard"/>
<item value="0x04" name="Balcony"/>
<item value="0x05" name="Ballroom"/>
<item value="0x06" name="Bathroom"/>
<item value="0x07" name="Bedroom"/>
<item value="0x08" name="Border"/>
<item value="0x09" name="Boxroom"/>
<item value="0x0A" name="Breakfast Room"/>
<item value="0x0B" name="Carport"/>
<item value="0x0C" name="Cellar"/>
<item value="0x0D" name="Cloakroom"/>
<item value="0x0E" name="Closet"/>
<item value="0x0F" name="Conservatory"/>

<item value="0x10" name="Corridor"/>
<item value="0x11" name="Craft Room"/>
<item value="0x12" name="Cupboard"/>
<item value="0x13" name="Deck"/>
<item value="0x14" name="Den"/>
<item value="0x15" name="Dining"/>
<item value="0x16" name="Drawing Room"/>
<item value="0x17" name="Dressing Room"/>
<item value="0x18" name="Driveway"/>
<item value="0x19" name="Elevator"/>
<item value="0x1A" name="Ensuite"/>
<item value="0x1B" name="Entrance"/>
<item value="0x1C" name="Entryway"/>
<item value="0x1D" name="Family Room"/>
<item value="0x1E" name="Foyer"/>
<item value="0x1F" name="Front Door"/>

<item value="0x20" name="Front Yard"/>
<item value="0x21" name="Game Room"/>
<item value="0x22" name="Garage"/>
<item value="0x23" name="Garage Door"/>
<item value="0x24" name="Garden"/>
<item value="0x25" name="Garden Door"/>
<item value="0x26" name="Guest Bathroom"/>
<item value="0x27" name="Guest Bedroom"/>
<item value="0x28" name="Guest Restroom"/>
<item value="0x29" name="Guest Room"/>
<item value="0x2A" name="Gym"/>
<item value="0x2B" name="Hallway"/>
<item value="0x2C" name="Hearth Room"/>
<item value="0x2D" name="Kids Room"/>
<item value="0x2E" name="Kids Bedroom"/>
<item value="0x2F" name="Kitchen"/>

<item value="0x30" name="Larder"/>
<item value="0x31" name="Laundry Room"/>
<item value="0x32" name="Lawn"/>
<item value="0x33" name="Library"/>
<item value="0x34" name="Living Room"/>
<item value="0x35" name="Lounge"/>
<item value="0x36" name="Media/TV Room"/>
<item value="0x37" name="Mud Room"/>
<item value="0x38" name="Music Room"/>
<item value="0x39" name="Nursery"/>
<item value="0x3A" name="Office"/>
<item value="0x3B" name="Outdoor Kitchen"/>
<item value="0x3C" name="Outside"/>
<item value="0x3D" name="Pantry"/>
<item value="0x3E" name="Parking Lot"/>
<item value="0x3F" name="Parlor"/>

<item value="0x40" name="Patio"/>
<item value="0x41" name="Play Room"/>
<item value="0x42" name="Pool Room"/>
<item value="0x43" name="Porch"/>
<item value="0x44" name="Primary Bathroom"/>
<item value="0x45" name="Primary Bedroom"/>
<item value="0x46" name="Ramp"/>
<item value="0x47" name="Reception Room"/>
<item value="0x48" name="Recreation Room"/>
<item value="0x49" name="Restroom"/>
<item value="0x4A" name="Roof"/>
<item value="0x4B" name="Sauna"/>
<item value="0x4C" name="Scullery"/>
<item value="0x4D" name="Sewing Room"/>
<item value="0x4E" name="Shed"/>
<item value="0x4F" name="Side Door"/>

<item value="0x50" name="Side Yard"/>
<item value="0x51" name="Sitting Room"/>
<item value="0x52" name="Snug"/>
<item value="0x53" name="Spa"/>
<item value="0x54" name="Staircase"/>
<item value="0x55" name="Steam Room"/>
<item value="0x56" name="Storage Room"/>
<item value="0x57" name="Studio"/>
<item value="0x58" name="Study"/>
<item value="0x59" name="Sun Room"/>
<item value="0x5A" name="Swimming Pool"/>
<item value="0x5B" name="Terrace"/>
<item value="0x5C" name="Utility Room"/>
<item value="0x5D" name="Ward"/>
<item value="0x5E" name="Workshop"/>
</enum>

<enum name="LandmarkTag" type="enum8">
<cluster code="0x0150"/>
<item value="0x00" name="Air Conditioner"/>
<item value="0x01" name="Air Purifier"/>
<item value="0x02" name="Back Door"/>
<item value="0x03" name="Bar Stool"/>
<item value="0x04" name="Bath Mat"/>
<item value="0x05" name="Bathtub"/>
<item value="0x06" name="Bed"/>
<item value="0x07" name="Bookshelf"/>
<item value="0x08" name="Chair"/>
<item value="0x09" name="Christmas Tree"/>
<item value="0x0A" name="Coat Rack"/>
<item value="0x0B" name="Coffee Table"/>
<item value="0x0C" name="Cooking Range"/>
<item value="0x0D" name="Couch"/>
<item value="0x0E" name="Countertop"/>
<item value="0x0F" name="Cradle"/>

<item value="0x10" name="Crib"/>
<item value="0x11" name="Desk"/>
<item value="0x12" name="Dining Table"/>
<item value="0x13" name="Dishwasher"/>
<item value="0x14" name="Door"/>
<item value="0x15" name="Dresser"/>
<item value="0x16" name="Laundry Dryer"/>
<item value="0x17" name="Fan"/>
<item value="0x18" name="Fireplace"/>
<item value="0x19" name="Freezer"/>
<item value="0x1A" name="Front Door"/>
<item value="0x1B" name="High Chair"/>
<item value="0x1C" name="Kitchen Island"/>
<item value="0x1D" name="Lamp"/>
<item value="0x1E" name="Litter Box"/>
<item value="0x1F" name="Mirror"/>

<item value="0x20" name="Nightstand"/>
<item value="0x21" name="Oven"/>
<item value="0x22" name="Pet Bed"/>
<item value="0x23" name="Pet Bowl"/>
<item value="0x24" name="Pet Crate"/>
<item value="0x25" name="Refrigerator"/>
<item value="0x26" name="Scratching Post"/>
<item value="0x27" name="Shoe Rack"/>
<item value="0x28" name="Shower"/>
<item value="0x29" name="Side Door"/>
<item value="0x2A" name="Sink"/>
<item value="0x2B" name="Sofa"/>
<item value="0x2C" name="Stove"/>
<item value="0x2D" name="Table"/>
<item value="0x2E" name="Toilet"/>
<item value="0x2F" name="Trash Can"/>

<item value="0x30" name="Laundry Washer"/>
<item value="0x31" name="Window"/>
<item value="0x32" name="Wine Cooler"/>
</enum>

<enum name="FloorSurfaceTag" type="enum8">
<cluster code="0x0150"/>
<item value="0x00" name="Carpet"/>
<item value="0x01" name="Ceramic"/>
<item value="0x02" name="Concrete"/>
<item value="0x03" name="Cork"/>
<item value="0x04" name="Deep Carpet"/>
<item value="0x05" name="Dirt"/>
<item value="0x06" name="Engineered Wood"/>
<item value="0x07" name="Glass"/>
<item value="0x08" name="Grass"/>
<item value="0x09" name="Hardwood"/>
<item value="0x0A" name="Laminate"/>
<item value="0x0B" name="Linoleum"/>
<item value="0x0C" name="Mat"/>
<item value="0x0D" name="Metal"/>
<item value="0x0E" name="Plastic"/>
<item value="0x0F" name="Polished Concrete"/>

<item value="0x10" name="Rubber"/>
<item value="0x11" name="Rug"/>
<item value="0x12" name="Sand"/>
<item value="0x13" name="Stone"/>
<item value="0x14" name="Tatami"/>
<item value="0x15" name="Terrazzo"/>
<item value="0x16" name="Tile"/>
<item value="0x17" name="Vinyl"/>
</enum>


</configurator>
Loading
Loading