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

Web_server-detail-all #4301

Open
wants to merge 19 commits into
base: current
Choose a base branch
from

Conversation

RFDarter
Copy link
Contributor

@RFDarter RFDarter commented Oct 2, 2024

Description:

Related issue (if applicable): fixes

Pull request in esphome with YAML changes (if applicable): esphome/esphome#7531

Checklist:

  • [] I am merging into next because this is new documentation that has a matching pull-request in esphome as linked above.
    or

  • I am merging into current because this is a fix, change and/or adjustment in the current documentation and is not for a new component or feature.

  • Link added in /index.rst when creating new documents for new components or cookbook.

Copy link

netlify bot commented Oct 2, 2024

Deploy Preview for esphome ready!

Name Link
🔨 Latest commit 96d69b0
🔍 Latest deploy log https://app.netlify.com/sites/esphome/deploys/6769f7228dda3800083fdc86
😎 Deploy Preview https://deploy-preview-4301--esphome.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

Copy link

github-actions bot commented Dec 2, 2024

There hasn't been any activity on this pull request recently. This pull request has been automatically marked as stale because of that and will be closed if no further activity occurs within 7 days. Thank you for your contributions.

@jesserockz
Copy link
Member

@RFDarter sorry I missed this PR along with the code. Can you rebase it and target current since the changes are already released?

@RFDarter RFDarter changed the base branch from next to current December 23, 2024 23:51
@probot-esphome probot-esphome bot removed the next label Dec 23, 2024
Copy link
Contributor

coderabbitai bot commented Dec 23, 2024

Walkthrough

This pull request encompasses version updates and documentation enhancements across multiple files in the ESPHome project. The changes primarily focus on updating version numbers from 2024.12.2 to 2025.1.0-dev, modifying configuration files, and improving documentation for various components like climate, display, light, OpenTherm, and remote transmitter/receiver. The modifications include adding new configuration variables, clarifying existing descriptions, and introducing more detailed setup instructions for different hardware configurations.

Changes

File Changes
Doxyfile Updated PROJECT_NUMBER from 2024.12.2 to 2025.1.0-dev
Makefile Changed ESPHOME_REF from 2024.12.2 to dev
_static/version Updated version from 2024.12.2 to 2025.1.0-dev
components/climate/midea.rst Added use_fahrenheit variable, updated temperature description
components/display/qspi_dbi.rst Added new display models, new configuration variables
components/light/esp32_rmt_led_strip.rst Reorganized rmt_channel and chipset variables, added rmt_symbols
components/opentherm.rst Added boiler-specific configuration variables and automation hooks
components/remote_receiver.rst Added new configuration variables for signal processing
components/remote_transmitter.rst Added new configuration variables like id, rmt_symbols
conf.py Updated version to 2025.1 and release to 2025.1.0-dev
web-api/index.rst Added detail=all parameter for verbose component information

Possibly related PRs

Suggested reviewers

  • jesserockz

Tip

CodeRabbit's docstrings feature is now available as part of our Early Access Program! Simply use the command @coderabbitai generate docstrings to have CodeRabbit automatically generate docstrings for your pull request. We would love to hear your feedback on Discord.


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?

❤️ Share
🪧 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 @coderabbitai in 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 @coderabbitai in 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 pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR. (Beta)
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file 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.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (5)
components/light/esp32_rmt_led_strip.rst (2)

46-49: Configuring a maximum refresh rate can prevent performance pitfalls.
This is a helpful addition to throttle updates, preventing overly rapid changes on resource-constrained devices.


67-78: Separate Arduino configuration variables are well-organized.
Placing rmt_channel settings under the Arduino section clarifies the requirement for unique channels per strip.

components/climate/midea.rst (1)

162-172: Enhance temperature range documentation with examples.

While the temperature ranges are clearly documented, adding practical examples would make it more user-friendly.

Add examples like:

 Sets the value of an internal temperature sensor. The value will be **clamped** to the range:  

 - `0 °C to 37 °C` when ``use_fahrenheit`` is ``false``.  
 - `32 °F to 99 °F` when ``use_fahrenheit`` is ``true``.
+
+For example:
+- If you set 40 °C with ``use_fahrenheit: false``, it will be clamped to 37 °C
+- If you set 25 °F with ``use_fahrenheit: true``, it will be clamped to 32 °F
components/opentherm.rst (2)

81-84: Add cross-reference to automation triggers section.

While the automation hooks are documented, adding a cross-reference to ESPHome's general automation documentation would be helpful.

Add a reference to the automation documentation:

 - **before_send** (**Optional**) An automation to perform on OpenTherm message before it is sent to the boiler.
 - **before_process_response** (**Optional**) An automation to perform on boiler response before it is processed.

 See :ref:`on-the-fly-message-editing` for details.
+See also :doc:`/guides/automations` for more information about automation syntax.

361-377: Enhance code example with additional comments.

The example code would benefit from more detailed comments explaining the message structure and potential side effects.

Add more detailed comments:

     opentherm:
         # Usual hub config
         before_send:
             then:
                 - lambda: |-
-                    if (x.id == 56) { // 56 is standard message id for DHW setpoint
-                        x.id = 162;     // message is passed by refence, so we can change anything, including message id
+                    // Message ID 56 is the standard OpenTherm message id for DHW setpoint
+                    // For Daikin D2C boilers, we need to use message ID 162 instead
+                    if (x.id == 56) {
+                        // Message is passed by reference, so modifications affect the actual message
+                        // Note: Ensure your boiler supports this message ID to avoid communication issues
+                        x.id = 162;
                     }
         before_process_response:
             then:
                 - lambda: |-
-                    if (x.id == 162) { // We substitute the original id back, so that esphome is not confused.
-                    x.id = 56;
+                    // Convert the non-standard message ID back to the standard one
+                    // This ensures ESPHome processes the response correctly
+                    if (x.id == 162) {
+                        x.id = 56;
                     }
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between d6bb477 and 96d69b0.

📒 Files selected for processing (11)
  • Doxygen (1 hunks)
  • Makefile (1 hunks)
  • _static/version (1 hunks)
  • components/climate/midea.rst (2 hunks)
  • components/display/qspi_dbi.rst (4 hunks)
  • components/light/esp32_rmt_led_strip.rst (2 hunks)
  • components/opentherm.rst (2 hunks)
  • components/remote_receiver.rst (14 hunks)
  • components/remote_transmitter.rst (20 hunks)
  • conf.py (1 hunks)
  • web-api/index.rst (1 hunks)
✅ Files skipped from review due to trivial changes (2)
  • _static/version
  • Doxygen
👮 Files not reviewed due to content moderation or server errors (2)
  • components/remote_receiver.rst
  • components/remote_transmitter.rst
🧰 Additional context used
📓 Path-based instructions (9)
web-api/index.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

Makefile (1)

Pattern **: - Do not generate or add any sequence diagrams

components/climate/midea.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

conf.py (1)

Pattern **: - Do not generate or add any sequence diagrams

components/remote_receiver.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

components/display/qspi_dbi.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

components/light/esp32_rmt_led_strip.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

components/remote_transmitter.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

components/opentherm.rst (1)

Pattern **: - Do not generate or add any sequence diagrams

🔇 Additional comments (19)
conf.py (2)

74-74: New version number aligns with the updated development cycle.
The version has been incremented to "2025.1", which appears consistent with the broader versioning changes.


76-76: Dev release notation confirmed.
Using "2025.1.0-dev" for the release helps distinguish in-development builds from stable versions.

Makefile (1)

2-2: Switching to the 'dev' reference ensures integration with the latest development branch.
This allows fetching the most up-to-date code from the ESPHome repository, suitable for in-progress features and changes.

components/light/esp32_rmt_led_strip.rst (5)

26-27: Clarified chipset requirement.
Stating that the chipset is not required if manual timings are specified helps avoid confusion.


36-36: Ensuring clarity in RGB order instructions.
The enumerated list of valid RGB orders is well-defined and consistent with typical LED strip configurations.


50-56: Introduced IDF configuration block.
Documenting IDF-specific variables (like rmt_symbols) separately helps users distinguish settings under different frameworks.


57-66: CSV table clarifies memory allocation.
Providing variant-specific data about RMT memory is beneficial for selecting appropriate values.


82-82: Manual timings reference is properly anchored.
Users can now quickly locate the relevant section for custom chipset timing configurations.

components/display/qspi_dbi.rst (8)

18-19: Expanded list of tested displays.
Mentioning the JC3636W518 board ensures clearer coverage of different hardware options.


60-66: Enumerated model options are consistent.
Defining each model in one place prevents confusion and helps with quick reference.


87-87: swap_xy availability note is helpful.
Highlighting that some chips do not support axis swapping prevents user frustration.


90-90: More detail on data_rate clarifies hardware constraints.
Documenting supported values (e.g., 80MHz, 40MHz, etc.) helps ensure compatibility with a user’s specific display.


92-94: draw_rounding is a valuable addition for partial updates.
Ensuring alignment with power-of-2 boundaries aids in stable rendering for certain display controllers.


213-213: Explicitly setting 'model: JC4832W535'.
This ensures the correct initialization sequence and display behavior for that board.


215-215: Software rotation set to 270°.
Clear documentation on rotating to landscape mode helps new users orient their display.


222-222: Introduced show_test_card for easy troubleshooting.
Having a test card option helps quickly verify wiring and orientation before finalizing the setup.

components/climate/midea.rst (1)

Line range hint 148-157: LGTM! Clear and accurate description of the FollowMe command.

The documentation clearly explains the purpose and usage of the FollowMe command.

web-api/index.rst (1)

78-79: LGTM! Clear introduction of the new detail parameter.

The documentation clearly introduces the new feature.

components/opentherm.rst (1)

63-77: LGTM! Well-structured boiler-specific configuration documentation.

The configuration options are clearly documented with their respective OpenTherm message IDs and value ranges.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants