-
Notifications
You must be signed in to change notification settings - Fork 7.8k
feat(matter): adds temperature controlled cabinet ep #12104
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
feat(matter): adds temperature controlled cabinet ep #12104
Conversation
👋 Hello SuGlider, we appreciate your contribution to this project! 📘 Please review the project's Contributions Guide for key guidelines on code, documentation, testing, and more. 🖊️ Please also make sure you have read and signed the Contributor License Agreement for this project. Click to see more instructions ...
Review and merge process you can expect ...
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a new Matter endpoint MatterTemperatureControlledCabinet that implements the Matter temperature control standard for managing temperature-controlled appliances like refrigerators, freezers, and wine coolers. The implementation supports two mutually exclusive operating modes: temperature_number (precise setpoint control with min/max/step) and temperature_level (preset-based control with supported levels array).
Key changes:
- New endpoint class with dual-mode initialization supporting both temperature setpoint and temperature level control
- Comprehensive examples demonstrating both operating modes with dynamic temperature updates
- Complete API documentation including usage examples and integration guides
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| MatterTemperatureControlledCabinet.h | Header file defining the endpoint class with dual-mode API (temperature_number and temperature_level) |
| MatterTemperatureControlledCabinet.cpp | Implementation with attribute management, validation, and custom endpoint for temperature_level mode |
| Matter.h | Added include and friend class declaration for the new endpoint |
| keywords.txt | Added new API keywords and fixed duplicate onChangeMode entry |
| CMakeLists.txt | Added source file to build configuration |
| MatterTemperatureControlledCabinet example | Demonstrates temperature_number mode with dynamic setpoint cycling |
| MatterTemperatureControlledCabinetLevels example | Demonstrates temperature_level mode with dynamic level cycling |
| README.md files | Comprehensive setup and usage documentation for both examples |
| ep_temperature_controlled_cabinet.rst | Complete API reference documentation with examples |
| matter.rst | Added endpoint to documentation index |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
...amples/MatterTemperatureControlledCabinetLevels/MatterTemperatureControlledCabinetLevels.ino
Outdated
Show resolved
Hide resolved
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
Outdated
Show resolved
Hide resolved
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
Show resolved
Hide resolved
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.h
Outdated
Show resolved
Hide resolved
...es/Matter/examples/MatterTemperatureControlledCabinet/MatterTemperatureControlledCabinet.ino
Outdated
Show resolved
Hide resolved
...es/Matter/examples/MatterTemperatureControlledCabinet/MatterTemperatureControlledCabinet.ino
Outdated
Show resolved
Hide resolved
...amples/MatterTemperatureControlledCabinetLevels/MatterTemperatureControlledCabinetLevels.ino
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Test Results 83 files 83 suites 25m 56s ⏱️ Results for commit 9fae46d. ♻️ This comment has been updated with latest results. |
Memory usage test (comparing PR against master branch)The table below shows the summary of memory usage change (decrease - increase) in bytes and percentage for each target.
Click to expand the detailed deltas report [usage change in BYTES]
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 13 out of 13 changed files in this pull request and generated 7 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
libraries/Matter/examples/MatterTemperatureControlledCabinetLevels/README.md
Outdated
Show resolved
Hide resolved
libraries/Matter/examples/MatterTemperatureControlledCabinetLevels/README.md
Outdated
Show resolved
Hide resolved
libraries/Matter/examples/MatterTemperatureControlledCabinet/README.md
Outdated
Show resolved
Hide resolved
libraries/Matter/examples/MatterTemperatureControlledCabinet/README.md
Outdated
Show resolved
Hide resolved
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
Show resolved
Hide resolved
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
Outdated
Show resolved
Hide resolved
libraries/Matter/src/MatterEndpoints/MatterTemperatureControlledCabinet.cpp
Show resolved
Hide resolved
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Reinstate important note about mutually exclusive features for temperature control modes.
Refactor MatterTemperatureControlledCabinet to support both temperature_number and temperature_level features. Introduce new methods for handling temperature levels and update existing methods to accommodate the new structure.
Description of Change
Adds a new Matter endpoint for Temperature Controlled Cabinet with related documentation and examples.
Test Scenarios
CI
Provided examples
Related links
none