Skip to content

Commit ae07e9a

Browse files
committed
documenting BME280 usage
1 parent 99ddfa5 commit ae07e9a

File tree

7 files changed

+54
-0
lines changed

7 files changed

+54
-0
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
*.pdf
22
*.png
3+
*.jpg

sensors/README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Sensors
2+
=======
3+
4+
Most of these sensors are easy to connect to an MCU on their own, often
5+
requiring one or more resistors or capacitors to adjust for the MCU power level
6+
or analog input capabilities. For easier use and less soldering it is therefore
7+
easier to use one of the many breakout boards available online. These will
8+
package the sensor with all the required components (usually in SMD formats) and
9+
leads out clearly labelled pins to solder it onto the MCU with a few short wires
10+
or to stick it to a breadboard for testing.

sensors/bme280/README.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
BME280
2+
======
3+
4+
The Bosch BME280 sensor offers humidity, barometric pressure and temperature
5+
sensing in a single chip. Adafruit offers a breakout board to easily connect the
6+
BME280 to an MCU: <https://www.adafruit.com/product/2652>
7+
8+
There are other similar breakout boards that may be used with the Adafruit
9+
libraries, as long as they offer either I2C or SPI interfaces. Using hardware
10+
SPI is preferred, if your MCU supports it.
11+
12+
Use cases
13+
---------
14+
15+
This sensor is ideal for a weather station as it includes the three measurements
16+
typically found in classic analog barometers.
17+
18+
Limitations
19+
-----------
20+
21+
The sensor caches the measurements, which is why they are requested twice to get
22+
an updated number. If using I2C reading all different values is quite slow, so
23+
(hardware) SPI is the preferred interface on ESP8266 MCUs. The Digispark is only
24+
supporting I2C, so do not expect to read out the values too frequently.
25+
26+
Wiring
27+
------
28+
29+
The following is an example for connecting the Adafruit BME280 breakout board to
30+
a NodeMCU using the ESP8266's hardware SPI pins. If the `D8` pin isn't pulled
31+
HIGH during boot, the sensor connected to it interferes with the startup of the
32+
ESP8266. This can be avoided by using a resistor of 2 - 10 kΩ between ground
33+
and `D8` (the illustration below shows a 3.3 kΩ resistor).
34+
35+
![Adafruit BME280 breakout board connected to a NodeMCU using SPI](bme280 nodemcu.png)
36+
37+
Here below is an example for connecting the Adafruit BME280 breakout board to
38+
a DigiSpark using I2C pins. Although it seems possible to get software SPI
39+
working on the DigiSpark, (software) I2C is better documented and therefore
40+
easier to use.
41+
42+
![Adafruit BME280 breakout board connected to a DigiSpark using I2C](bme280 digispark.png)
43+

sensors/bme280/bme280 digispark.fzz

37.2 KB
Binary file not shown.

sensors/bme280/bme280 digispark.png

30.3 KB
Loading

sensors/bme280/bme280 nodemcu.fzz

411 KB
Binary file not shown.

sensors/bme280/bme280 nodemcu.png

57.6 KB
Loading

0 commit comments

Comments
 (0)