Skip to content

Conversation

@SuGlider
Copy link
Collaborator

@SuGlider SuGlider commented Nov 5, 2025

Description of Change

This pull request adds API documentation for Matter Library.

Test Scenarios

CI only

Related links

Requires #11983

@SuGlider SuGlider added this to the 3.3.0 milestone Nov 5, 2025
@SuGlider SuGlider self-assigned this Nov 5, 2025
@SuGlider SuGlider added Type: Documentation Issue pertains to Documentation of Arduino ESP32 Area: Matter Issues and Feature Request about Matter Protocol labels Nov 5, 2025
@SuGlider SuGlider requested a review from Copilot November 5, 2025 09:54
@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

Warnings
⚠️

Some issues found for the commit messages in this PR:

  • the commit message "fix(matter): typo":
    • summary looks too short
  • the commit message "fix(matter): typo":
    • summary looks too short

Please fix these commit messages - here are some basic tips:

  • follow Conventional Commits style
  • correct format of commit message should be: <type/action>(<scope/component>): <summary>, for example fix(esp32): Fixed startup timeout issue
  • allowed types are: change,ci,docs,feat,fix,refactor,remove,revert,test
  • sufficiently descriptive message summary should be between 10 to 72 characters and start with upper case letter
  • avoid Jira references in commit messages (unavailable/irrelevant for our customers)

TIP: Install pre-commit hooks and run this check when committing (uses the Conventional Precommit Linter).

Messages
📖 This PR seems to be quite large (total lines of code: 3223), you might consider splitting it into smaller PRs

👋 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 ...


This automated output is generated by the PR linter DangerJS, which checks if your Pull Request meets the project's requirements and helps you fix potential issues.

DangerJS is triggered with each push event to a Pull Request and modify the contents of this comment.

Please consider the following:
- Danger mainly focuses on the PR structure and formatting and can't understand the meaning behind your code or changes.
- Danger is not a substitute for human code reviews; it's still important to request a code review from your colleagues.
- Resolve all warnings (⚠️ ) before requesting a review from human reviewers - they will appreciate it.
- Addressing info messages (📖) is strongly recommended; they're less critical but valuable.
- To manually retry these Danger checks, please navigate to the Actions tab and re-run last Danger workflow.

Review and merge process you can expect ...


We do welcome contributions in the form of bug reports, feature requests and pull requests.

1. An internal issue has been created for the PR, we assign it to the relevant engineer.
2. They review the PR and either approve it or ask you for changes or clarifications.
3. Once the GitHub PR is approved we do the final review, collect approvals from core owners and make sure all the automated tests are passing.
- At this point we may do some adjustments to the proposed change, or extend it by adding tests or documentation.
4. If the change is approved and passes the tests it is merged into the default branch.

Generated by 🚫 dangerJS against 1ce3a16

@SuGlider SuGlider moved this from Todo to In Progress in Arduino ESP32 Core Project Roadmap Nov 5, 2025
Copy link
Contributor

Copilot AI left a 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 comprehensive documentation for the Matter library in the Arduino ESP32 core. The documentation covers the Matter protocol overview, network topology, the main Matter class, the MatterEndPoint base class, and 15 specialized endpoint classes for various device types (lights, sensors, controls).

  • Complete Matter library documentation with protocol overview and architecture
  • API reference documentation for all endpoint classes with usage examples
  • Structured documentation hierarchy using Sphinx/reStructuredText format

Reviewed Changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
docs/en/matter/matter.rst Main Matter documentation with protocol overview, library structure, troubleshooting guide, and links to endpoint documentation
docs/en/matter/matter_endpoint.rst MatterEndPoint base class documentation covering endpoint management, attributes, identify cluster, and callbacks
docs/en/matter/ep_thermostat.rst MatterThermostat endpoint documentation with temperature control, setpoints, and operating modes
docs/en/matter/ep_temperature_sensor.rst MatterTemperatureSensor endpoint documentation for read-only temperature reporting
docs/en/matter/ep_pressure_sensor.rst MatterPressureSensor endpoint documentation for atmospheric pressure monitoring
docs/en/matter/ep_on_off_plugin.rst MatterOnOffPlugin endpoint documentation for smart power outlets and relays
docs/en/matter/ep_on_off_light.rst MatterOnOffLight endpoint documentation for basic on/off light control
docs/en/matter/ep_occupancy_sensor.rst MatterOccupancySensor endpoint documentation for motion/occupancy detection
docs/en/matter/ep_humidity_sensor.rst MatterHumiditySensor endpoint documentation for humidity monitoring
docs/en/matter/ep_generic_switch.rst MatterGenericSwitch endpoint documentation for smart button/automation triggers
docs/en/matter/ep_fan.rst MatterFan endpoint documentation with speed and mode control
docs/en/matter/ep_enhanced_color_light.rst MatterEnhancedColorLight endpoint documentation with RGB, brightness, and color temperature
docs/en/matter/ep_dimmable_light.rst MatterDimmableLight endpoint documentation with brightness control
docs/en/matter/ep_contact_sensor.rst MatterContactSensor endpoint documentation for door/window sensors
docs/en/matter/ep_color_temperature_light.rst MatterColorTemperatureLight endpoint documentation for tunable white lights
docs/en/matter/ep_color_light.rst MatterColorLight endpoint documentation for RGB color control

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@SuGlider SuGlider requested a review from Copilot November 5, 2025 10:10
Copy link
Contributor

Copilot AI left a 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 18 out of 18 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

libraries/Matter/src/MatterEndpoints/MatterThermostat.h:108

  • The parameters are passed in the wrong order. setCoolingHeatingSetpoints expects heating temperature first, then cooling temperature, but here cooling is set to 0xffff (first parameter) and heating is set to the provided value (second parameter). This should be setCoolingHeatingSetpoints(_setpointHeatingTemperature, (double)0xffff).
    return setCoolingHeatingSetpoints((double)0xffff, _setpointHeatingTemperature);

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

Test Results

 76 files   76 suites   15m 47s ⏱️
 38 tests  38 ✅ 0 💤 0 ❌
241 runs  241 ✅ 0 💤 0 ❌

Results for commit 1ce3a16.

♻️ This comment has been updated with latest results.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

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.

MemoryFLASH [bytes]FLASH [%]RAM [bytes]RAM [%]
TargetDECINCDECINCDECINCDECINC
ESP32C5000.000.00000.000.00
ESP32S3000.000.00000.000.00
ESP32S2000.000.00000.000.00
ESP32C3000.000.00000.000.00
ESP32C6000.000.00000.000.00
ESP32H2000.000.00000.000.00
ESP32000.000.00000.000.00
Click to expand the detailed deltas report [usage change in BYTES]
TargetESP32C5ESP32S3ESP32S2ESP32C3ESP32C6ESP32H2ESP32
ExampleFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAMFLASHRAM
libraries/Matter/examples/MatterColorLight00000000000000
libraries/Matter/examples/MatterCommissionTest00000000000000
libraries/Matter/examples/MatterComposedLights00000000000000
libraries/Matter/examples/MatterContactSensor00000000000000
libraries/Matter/examples/MatterDimmableLight00000000000000
libraries/Matter/examples/MatterEnhancedColorLight00000000000000
libraries/Matter/examples/MatterEvents00000000000000
libraries/Matter/examples/MatterFan00000000000000
libraries/Matter/examples/MatterHumiditySensor00000000000000
libraries/Matter/examples/MatterLambdaSingleCallbackManyEPs00000000000000
libraries/Matter/examples/MatterMinimum00000000000000
libraries/Matter/examples/MatterOccupancySensor00000000000000
libraries/Matter/examples/MatterOnIdentify00000000000000
libraries/Matter/examples/MatterOnOffLight00000000000000
libraries/Matter/examples/MatterOnOffPlugin00000000000000
libraries/Matter/examples/MatterPressureSensor00000000000000
libraries/Matter/examples/MatterSmartButton--------------
libraries/Matter/examples/MatterTemperatureLight00000000000000
libraries/Matter/examples/MatterTemperatureSensor00000000000000
libraries/Matter/examples/MatterThermostat00000000000000

@SuGlider
Copy link
Collaborator Author

SuGlider commented Nov 5, 2025

@me-no-dev - this PR depends on #11983 to be merged because the URL to the SmartButton example fixes the
Buton->Button file name that is used in GenericSwitch.rst file.

@SuGlider SuGlider moved this from In Progress to In Review in Arduino ESP32 Core Project Roadmap Nov 5, 2025
@SuGlider SuGlider added the Status: Review needed Issue or PR is awaiting review label Nov 5, 2025
@lucasssvaz lucasssvaz added the Status: Blocked upstream 🛑 PR is waiting on upstream changes to be merged first label Nov 5, 2025
@P-R-O-C-H-Y P-R-O-C-H-Y removed the Status: Blocked upstream 🛑 PR is waiting on upstream changes to be merged first label Nov 5, 2025
Copy link
Member

@P-R-O-C-H-Y P-R-O-C-H-Y left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@SuGlider The documentation sources needs to be added to the library.rst file. Check how the Zigbee is added there, as you are adding it the same way.

@lucasssvaz
Copy link
Member

@SuGlider The documentation sources needs to be added to the library.rst file. Check how the Zigbee is added there, as you are adding it the same way.

I will fix it.

@RoCorbera
Copy link

@lucasssvaz - it is necessary to add Matter.rst to the main index. I have left the office and I can't fix it from here... Please help fixing all the missing index references to the files.

@me-no-dev me-no-dev added Status: Pending Merge Pull Request is ready to be merged and removed Status: Review needed Issue or PR is awaiting review labels Nov 5, 2025
@github-actions github-actions bot added the Status: Pre-commit fixes required ⚠️ The pre-commit bot can't fix the issues automatically. Please fix the issues manually. label Nov 5, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 5, 2025

⚠️ Pre-commit Hooks Failed

Some pre-commit hooks failed and require manual fixes. Please see the detailed error report below.

What to do:

  1. 📋 View the detailed error report to see which hooks failed
  2. 🔧 Fix the issues locally in your code
  3. 💾 Commit and push your changes
  4. 🔄 The hooks will run again automatically

Need help? Ask in the comments below.

@github-actions github-actions bot removed the Status: Pre-commit fixes required ⚠️ The pre-commit bot can't fix the issues automatically. Please fix the issues manually. label Nov 5, 2025
@me-no-dev me-no-dev merged commit ff5866b into master Nov 5, 2025
79 checks passed
@me-no-dev me-no-dev deleted the documentation/matter_docs branch November 5, 2025 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: Matter Issues and Feature Request about Matter Protocol Status: Pending Merge Pull Request is ready to be merged Type: Documentation Issue pertains to Documentation of Arduino ESP32

Projects

Development

Successfully merging this pull request may close these issues.

6 participants