Skip to content

Conversation

@SuGlider
Copy link
Collaborator

@SuGlider SuGlider commented Nov 7, 2025

Description of Change

This PR adds the Arduino OpenThread Documentation.

Test Scenarios

CI Only

Related links

None.

@SuGlider SuGlider added this to the 3.3.0 milestone Nov 7, 2025
@SuGlider SuGlider self-assigned this Nov 7, 2025
@SuGlider SuGlider added the Type: Documentation Issue pertains to Documentation of Arduino ESP32 label Nov 7, 2025
@SuGlider SuGlider added the Area: OpenThread Issues and Feature Request about OpenThread Protocol label Nov 7, 2025
@SuGlider SuGlider moved this from Todo to In Progress in Arduino ESP32 Core Project Roadmap Nov 7, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Nov 7, 2025

Warnings
⚠️

Some issues found for the commit messages in this PR:

  • the commit message "fix(op":
    • summary looks empty
    • type/action looks empty

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: 1932), 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 99deee5

@SuGlider SuGlider moved this from In Progress to In Review in Arduino ESP32 Core Project Roadmap Nov 7, 2025
@SuGlider SuGlider added the Status: Review needed Issue or PR is awaiting review label Nov 7, 2025
@lucasssvaz lucasssvaz requested a review from Copilot November 7, 2025 11:55
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 OpenThread API documentation for ESP32 Arduino, introducing support for Thread networking on ESP32-H2, ESP32-C6, and ESP32-C5 devices. The documentation covers two distinct programming interfaces: a Stream-based CLI Helper Functions API and an object-oriented Classes API.

Key Changes:

  • Documentation for Thread network protocol and topology
  • Complete API reference for OpenThread, DataSet, and OpenThreadCLI classes
  • CLI Helper Functions API documentation for command-line interface interaction
  • Practical code examples covering common Thread networking scenarios

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
docs/en/libraries.rst Adds OpenThread APIs section with links to four new documentation files
docs/en/openthread/openthread.rst Main OpenThread documentation covering Thread protocol overview, library structure, device roles, supported hardware, and troubleshooting
docs/en/openthread/openthread_core.rst Complete API reference for the OpenThread class including network control, dataset management, address management, and device role monitoring
docs/en/openthread/openthread_dataset.rst Documentation for the DataSet class covering creation, configuration, and management of Thread operational datasets
docs/en/openthread/openthread_cli.rst Documentation for OpenThreadCLI class and CLI Helper Functions API for command-line interface interaction

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

* **Router**: Extends network range, routes messages, maintains network topology. This device shall be powered by a wall adapter.
* **Child**: End device that can sleep for extended periods (battery-powered devices). It can be powered by a battery or a wall adapter.
* **Detached**: Device not currently participating in a Thread network.
* **Disabled**: The Thread stack and interface is disabled.
Copy link

Copilot AI Nov 7, 2025

Choose a reason for hiding this comment

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

Spelling error: "interface" should not have an extra space before "is". The phrase "The Thread stack and interface is disabled" should be "The Thread stack and interface is disabled" (or better yet, "The Thread stack and interface are disabled" for grammatical correctness).

Suggested change
* **Disabled**: The Thread stack and interface is disabled.
* **Disabled**: The Thread stack and interface are disabled.

Copilot uses AI. Check for mistakes.

**Other Thread Network Devices:**

* **Thread Border Router**: A device that connects a Thread network to other IP-based networks in the extrenal world. The Thread Border Router is connected to both the Thread network and external IP networks (like Wi-Fi router), enabling Thread devices to communicate with devices on other networks and the Internet. A Border Router can be implemented on a device with any Thread device role (Leader, Router, or Child). It can also act as gateway to other protocols such as MQTT or Zigbee.
Copy link

Copilot AI Nov 7, 2025

Choose a reason for hiding this comment

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

Multiple spelling and grammar errors in this line:

  1. "extrenal" should be "external"
  2. "like Wi-Fi router" should be "like a Wi-Fi router"
  3. "act as gateway" should be "act as a gateway"
Suggested change
* **Thread Border Router**: A device that connects a Thread network to other IP-based networks in the extrenal world. The Thread Border Router is connected to both the Thread network and external IP networks (like Wi-Fi router), enabling Thread devices to communicate with devices on other networks and the Internet. A Border Router can be implemented on a device with any Thread device role (Leader, Router, or Child). It can also act as gateway to other protocols such as MQTT or Zigbee.
* **Thread Border Router**: A device that connects a Thread network to other IP-based networks in the external world. The Thread Border Router is connected to both the Thread network and external IP networks (like a Wi-Fi router), enabling Thread devices to communicate with devices on other networks and the Internet. A Border Router can be implemented on a device with any Thread device role (Leader, Router, or Child). It can also act as a gateway to other protocols such as MQTT or Zigbee.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: OpenThread Issues and Feature Request about OpenThread Protocol Status: Review needed Issue or PR is awaiting review Type: Documentation Issue pertains to Documentation of Arduino ESP32

Projects

Status: In Review

Development

Successfully merging this pull request may close these issues.

4 participants