Comments (6)
Can you provide a short, simple, complete example sketch that can be used to demonstrate the issue.
from adafruit_circuitpython_bme680.
In principle, the Usage Example in the docs is sufficient to demonstrate the issue, given the presence of the hardware in question. We only sample every 10s for the application here.
Perhaps the gist of the issue is that hardware isn't always 100% reliable. Arguably the best place to handle temporarily unresponsive hardware is in its API, rather than handling it downstream where it would necessitate an additional layer of complexity to forcibly terminate hung read operations. _perform_reading()
could plausibly raise a BlockingIOError if it doesn't receive an acceptable response after a given number of iterations, in preference to an infinite loop.
from adafruit_circuitpython_bme680.
Is the inclusion of the TCA9548A necessary? Or do you get the same issue even without the TCA being used?
from adafruit_circuitpython_bme680.
No and no. There was no issue with the BME680 hardware in either configuration.
from adafruit_circuitpython_bme680.
OK, if there's no issue, then not sure what the issue is?
Is there any issue when using just a single BME680 (no TCA9548A) and running the example code from this library?
https://github.com/adafruit/Adafruit_CircuitPython_BME680/blob/main/examples/bme680_simpletest.py
from adafruit_circuitpython_bme680.
The issue reported is that _perform_reading()
fails to consider the possibility that the hardware may be non-responsive. Instead of failing gracefully and allowing the caller to deal with the problem, it enters an infinite loop, halting progression.
from adafruit_circuitpython_bme680.
Related Issues (20)
- The GAS values is slow to update and is not accurate HOT 5
- Pressure value wrong HOT 3
- SPI broken? HOT 8
- Please add __version__ and __repo__ metadata. Thank you!
- Support for BME680 IAQ readings HOT 3
- Error in filter_size setter
- Please explain filter_size in documentation HOT 1
- Adafruit library shows different values than BSEC library HOT 4
- Wrong conversion result for register 0x04 HOT 4
- SPI HOT 1
- Newest example needs licensed HOT 2
- Gas resistance calculation showing incorrect results for BME688 HOT 3
- Error during __init__ - Failed to find BME680! Chip ID 0x0 HOT 3
- Missing Type Annotations HOT 1
- pyproject.toml missing optional_dependencies
- Method to disable heater please
- Slow refresh rate HOT 1
- Wrong formula for gas_wait causing huge sampling delays
- v3.4.12 always returns wrong/nonsenical, static number for temperature, humidity, and pressure on first reading. Gas also seems wrong HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from adafruit_circuitpython_bme680.