-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
[qmc5883l] Add note about I2C errors #5389
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
base: current
Are you sure you want to change the base?
Conversation
WalkthroughDocumentation update to the QMC5883L sensor page: the update_interval field description now warns that very short intervals may cause I2C errors. No code, configuration, defaults, or behavior changes. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✨ Finishing touches🧪 Generate unit tests
Tip 👮 Agentic pre-merge checks are now available in preview!Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.
Please see the documentation for more information. Example: reviews:
pre_merge_checks:
custom_checks:
- name: "Undocumented Breaking Changes"
mode: "warning"
instructions: |
Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal). Please share your feedback with us on this Discord post. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Actionable comments posted: 0
🧹 Nitpick comments (4)
content/components/sensor/qmc5883l.md (4)
63-64
: Make the warning actionable and consistent (I²C vs I2C).Clarify what "too short" means in practice and suggest mitigation steps. Also use consistent “I²C” styling used elsewhere in this page.
-**update_interval** (*Optional*, [Time](#config-time)): The interval to check the sensor. Note that if the - interval is too short it may result in I2C errors. Defaults to `60s`. +**update_interval** (*Optional*, [Time](#config-time)): How often to read the sensor. Very short intervals may lead to I²C transaction errors (NACK) on some modules, especially when combined with high oversampling. If you encounter I²C errors, increase the interval and/or lower oversampling. Defaults to `60s`. See also the linked issue for context.
12-15
: Fix typos and tighten wording.Correct spelling and phrasing; keep tone consistent with ESPHome docs.
-ESPHome. This sensor is very simular to the [HMC5883L](#hmc5883l) sensor and is oftern found -as a knock off replacement. The QMC5883L sensor performs on par to the HMC5883L sensor, -though the configuration differs. The [I²C Bus](#i2c) is required to be set up in your -configuration for this sensor to work. +ESPHome. This sensor is very similar to the [HMC5883L](#hmc5883l) sensor and is often found +as a knock‑off replacement. The QMC5883L sensor performs on par with the HMC5883L sensor, +though the configuration differs. The [I²C Bus](#i2c) must be set up in your +configuration for this sensor to work.
43-44
: Capitalize “I²C” consistently.Match casing used elsewhere on this page.
-- **address** (*Optional*, int): Manually specify the I²c address of the sensor. Defaults to `0x0D`. +- **address** (*Optional*, int): Manually specify the I²C address of the sensor. Defaults to `0x0D`.
77-79
: Fix spelling and clarify oversampling text.“adverage” → “average”; avoid ambiguous “x samples”.
-By default, the QMC5883L sensor measures each value 512 times when requesting a new value. You can, however, -configure this amount. The result is the sensor will take the adverage of the x samples. Possible sampling values: +By default, the QMC5883L sensor oversamples 512 times per reading. You can configure this. +The sensor reports the average of those samples. Possible sampling values:
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
content/components/sensor/qmc5883l.md
(1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
- Do not generate or add any sequence diagrams
Files:
content/components/sensor/qmc5883l.md
✅ Deploy Preview for esphome ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
FYI... I will be submitting a PR to update the QMC5883L Component to allow for the MAXIMUM DATA RATE that the device can handle per the Datasheet (200Hz). Adding "drdy_pin" and "data_rate" config options that allow for the maximum data rate, and it is working well so far... I need to "button up" some logging issues and I'll create the PR (probably this weekend)! |
Description:
Add note about I2C errors and short update intervals
Related issue (if applicable): fixes esphome/esphome#10769
Pull request in esphome with YAML changes (if applicable):
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
/components/index.rst
when creating new documents for new components or cookbook.New Component Images
If you are adding a new component to ESPHome, you can automatically generate a standardized black and white component name image for the documentation.
To generate a component image:
Comment on this pull request with the following command, replacing
COMPONENT_NAME
with your component name in UPPER_CASE format with underscores (e.g.,BME280
,SHT3X
,DALLAS_TEMP
):The ESPHome bot will respond with a downloadable ZIP file containing the SVG image.
Extract the SVG file and place it in the
images/
folder of this repository.Use the image in your component's index table entry in
/components/index.rst
.Example: For a component called "DHT22 Temperature Sensor", use: