addons
addons copied to clipboard
openthread-border-router: Bump firmwares, flasher, and OTBR to latest versions
@agners I've also bumped OTBR itself. It looks like dhcpcd is now installed and prefix delegation is in use, probably for Thread 1.4. Is this something we want to disable?
I've set DHCPV6_PD_REF=0 in this PR for now to at least get it building. Untested.
It looks like
dhcpcdis now installed and prefix delegation is in use, probably for Thread 1.4. Is this something we want to disable?
What do yo mean by "dhcpcd is now installed"? With this change? We don't really use the regular installation script with the add-on, so I don't think that gets installed just like that no?
Afaik, dhcpcd was an option since a while.
Hm, Apple BRs use PD addresses already since a while, even with Thread 1.3. Not sure if this is directly related to 1.4.
so I don't think that gets installed just like that no?
It's installed by bootstrap, which we run: https://github.com/openthread/ot-br-posix/blob/580cafc150946bc418aa6790a416bd2c951bae24/script/bootstrap#L110-L121
It's installed by
bootstrap, which we run: https://github.com/openthread/ot-br-posix/blob/580cafc150946bc418aa6790a416bd2c951bae24/script/bootstrap#L110-L121
Hm, I see that changed just recently with https://github.com/openthread/ot-br-posix/commit/3b145fa40ffec3eb49b535093d6388d5c7331d1b. We could opt-out of PD at this point, which might make sense.
I think there are two things we need to decide here:
a) Do we want to update to Thread 1.4 (e.g. set OT_THREAD_VERSION=1.4)
b) Do we want to enable IPv6 PD by default
I tend to say no to b). For a) I am a bit less certain. I'll check what setting Thread version to 1.4 exactly entails.
I've reverted the advertised Thread version back to 1.3 and included the OTBR coprocessor version API patch.
📝 Walkthrough
📝 Walkthrough
Walkthrough
The changes in this pull request include updates to the OpenThread Border Router (OTBR) components, with a new version entry for 2.12.0 added to the changelog, reflecting various enhancements and fixes. The Dockerfile introduces a new environment variable, while the build configuration files update specific version numbers for the OTBR and the Universal Silabs Flasher. Additionally, firmware version strings in scripts have been updated for specific devices, and new parameters have been added to a discovery script to enhance information sent to Home Assistant.
Changes
| File Path | Change Summary |
|---|---|
openthread_border_router/CHANGELOG.md |
Added new version entry ## 2.12.0, detailing updates and fixes including firmware and log enhancements. |
openthread_border_router/Dockerfile |
Added new environment variable: ENV DHCPV6_PD_REF 0. |
openthread_border_router/build.yaml |
Updated OTBR_VERSION from ff7227ea9a2dc0e50f92ab93bd5c9a29e82fe793 to b041fa52daaa4dfbf6aa4665d8925c1be0350ca5 and UNIVERSAL_SILABS_FLASHER from 0.0.22 to 0.0.25. |
openthread_border_router/config.yaml |
Updated version from 2.11.1 to 2.12.0. |
openthread_border_router/rootfs/etc/s6-overlay/scripts/universal-silabs-flasher-up |
Updated firmware version strings for Home Assistant Yellow and Nabu Casa USB devices. |
openthread_border_router/rootfs/etc/s6-overlay/scripts/otbr-agent-rest-discovery.sh |
Added new fields device and firmware to the JSON object for OTBR discovery. |
Sequence Diagram(s)
sequenceDiagram
participant User
participant OTBR
participant HomeAssistant
User->>OTBR: Request device discovery
OTBR->>OTBR: Retrieve configuration
OTBR->>OTBR: Get firmware version
OTBR->>HomeAssistant: Send discovery information (device, firmware)
HomeAssistant-->>OTBR: Acknowledge discovery
📜 Recent review details
Configuration used: CodeRabbit UI Review profile: CHILL
📥 Commits
Reviewing files that changed from the base of the PR and between d4d12ca8f18ff556a6ff33a96418501311a8ae77 and bc15777527e0e398e482e4a0f28ded15dd9b2776.
📒 Files selected for processing (1)
openthread_border_router/CHANGELOG.md(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
openthread_border_router/CHANGELOG.md (6)
Pattern */**(html|markdown|md): - For instructional content in documentation, use a direct and authoritative tone. Avoid expressions of politeness such as 'may' or 'please', and ensure the goal of the instruction is fronted.
- Apply the Microsoft Style Guide to ensure documentation maintains clarity and conciseness.
- In step-by-step instructions, front the location phrase in the instructional sentence.
- In step-by-step instructions, front the 'goal' in the instructional sentence.
- In step-by-step instructions, if in doubt what to front, front the 'goal' before the location phrase in the instructional sentence.
- do not hyphenate terms like 'top-right' or 'bottom-left' with 'corner'
Pattern */**(html|markdown|md): - Use bold to mark UI strings.
- If "" are used to mark UI strings, replace them by bold.
Pattern */**(html|markdown|md): - Be brief in your replies and don't add fluff like "thank you for..." and "Please let me know if"
Pattern */**(html|markdown|md): - Use sentence-style capitalization also in headings.
Pattern */**(html|markdown|md): do not comment on HTML used for icons
Pattern */**(html|markdown|md): Avoid flagging inline HTML for embedding videos in future reviews for this repository.
🔇 Additional comments (1)
openthread_border_router/CHANGELOG.md (1)
6-6: Verify the OTBR POSIX version commit hash and timestamp
Let's verify that the OTBR POSIX version commit hash and timestamp are accurate.
✅ Verification successful
OTBR POSIX version commit hash and timestamp are accurate ✓
The commit hash b041fa52daa in the changelog corresponds to a real commit in the ot-br-posix repository with timestamp "2024-11-14T16:18:28Z", which matches the changelog entry's timestamp "2024-11-14 08:18:28 -0800" (both represent the same moment in different time zones).
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify the OTBR POSIX version commit hash and timestamp
# Test: Search for the commit hash in the repository
gh api repos/openthread/ot-br-posix/commits/b041fa52daa --jq '.commit.committer.date' || echo "Commit not found"
Length of output: 106
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
🪧 Tips
Chat
There are 3 ways to chat with CodeRabbit:
- Review comments: Directly reply to a review comment made by CodeRabbit. Example:
I pushed a fix in commit <commit_id>, please review it.Generate unit testing code for this file.Open a follow-up GitHub issue for this discussion.
- Files and specific lines of code (under the "Files changed" tab): Tag
@coderabbitaiin a new review comment at the desired location with your query. Examples:@coderabbitai generate unit testing code for this file.@coderabbitai modularize this function.
- PR comments: Tag
@coderabbitaiin a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.@coderabbitai read src/utils.ts and generate unit testing code.@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.@coderabbitai help me debug CodeRabbit configuration file.
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.
CodeRabbit Commands (Invoked using PR comments)
@coderabbitai pauseto pause the reviews on a PR.@coderabbitai resumeto resume the paused reviews.@coderabbitai reviewto trigger an incremental review. This is useful when automatic reviews are disabled for the repository.@coderabbitai full reviewto do a full review from scratch and review all the files again.@coderabbitai summaryto regenerate the summary of the PR.@coderabbitai resolveresolve all the CodeRabbit review comments.@coderabbitai configurationto show the current CodeRabbit configuration for the repository.@coderabbitai helpto get help.
Other keywords and placeholders
- Add
@coderabbitai ignoreanywhere in the PR description to prevent this PR from being reviewed. - Add
@coderabbitai summaryto generate the high-level summary at a specific location in the PR description. - Add
@coderabbitaior@coderabbitai titleanywhere in the PR title to generate the title automatically.
CodeRabbit Configuration File (.coderabbit.yaml)
- You can programmatically configure CodeRabbit by adding a
.coderabbit.yamlfile to the root of your repository. - Please see the configuration documentation for more information.
- If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation:
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
Documentation and Community
- Visit our Documentation for detailed information on how to use CodeRabbit.
- Join our Discord Community to get help, request features, and share feedback.
- Follow us on X/Twitter for updates and announcements.