All Projects β†’ malokhvii-eduard β†’ arduino-bme280

malokhvii-eduard / arduino-bme280

Licence: MIT license
πŸ’§ Arduino library for Bosch Sensortec BME280 – combined temperature, pressure, humidity sensor. The library allows using the sensor over I2C or SPI on any board that supports Arduino.

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to arduino-bme280

BME680
Arduino Library to access the Bosch BME680 - temperature, pressure, humidity and gas sensor
Stars: ✭ 30 (+20%)
Mutual labels:  i2c, temperature, spi, pressure, bosch, humidity
TempRa
Monitors the temperature, the humidity and the pressure in your room on Raspberry Pi.
Stars: ✭ 16 (-36%)
Mutual labels:  temperature, pressure, humidity, bme280
Periph
GoΒ·HardwareΒ·Lean
Stars: ✭ 1,700 (+6700%)
Mutual labels:  i2c, spi, bme280
embedded-sht
Embedded SHT Drivers for Sensirion Temperature and Humidity Sensors - Download the Zip Package from the Release Page
Stars: ✭ 53 (+112%)
Mutual labels:  i2c, temperature, humidity
Ha4iot
Open Source Home Automation system for .NET
Stars: ✭ 146 (+484%)
Mutual labels:  i2c, temperature
Esp32 Mpu Driver
ESP32 full library for all MPU6000 MPU6050 MPU6500 MPU9150 MPU9250 with SPI and I2C support and more.
Stars: ✭ 111 (+344%)
Mutual labels:  i2c, spi
Ofxgpio
Library C++ for raspberrypi and orangepi, GPIO interfaces compatible with openframeworks.
Stars: ✭ 155 (+520%)
Mutual labels:  i2c, spi
Johnny Five
JavaScript Robotics and IoT programming framework, developed at Bocoup.
Stars: ✭ 12,498 (+49892%)
Mutual labels:  i2c, spi
Mraa
Linux Library for low speed IO Communication in C with bindings for C++, Python, Node.js & Java. Supports generic io platforms, as well as Intel Edison, Intel Joule, Raspberry Pi and many more.
Stars: ✭ 1,220 (+4780%)
Mutual labels:  i2c, spi
Nf Interpreter
βš™οΈ nanoFramework Interpreter, CLR, HAL, PAL and reference target boards
Stars: ✭ 168 (+572%)
Mutual labels:  i2c, spi
Ch341 Store
Documents and Software Related to the famous CH341a used in I2C/SPI Flash Programmers also called as Bios Programmers
Stars: ✭ 225 (+800%)
Mutual labels:  i2c, spi
Powershell Iot
Interact with I2C, SPI & GPIO devices using PowerShell Core!
Stars: ✭ 106 (+324%)
Mutual labels:  i2c, spi
Esp8266 Oled Ssd1306
Driver for the SSD1306 and SH1106 based 128x64, 128x32, 64x48 pixel OLED display running on ESP8266/ESP32
Stars: ✭ 1,590 (+6260%)
Mutual labels:  i2c, spi
Gopi
Raspberry Pi Go Language Interface
Stars: ✭ 82 (+228%)
Mutual labels:  i2c, spi
bme280-esp-idf-i2c
Sample code for reading values from a BME280 temperature-humidity-pressure sensor, via ESP-IDF's I2C master driver, supports both normal mode and forced mode described in the datasheet. https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BME280_DS001-11.pdf
Stars: ✭ 38 (+52%)
Mutual labels:  i2c, bme280
Diozero
Java Device I/O library that is portable across Single Board Computers. Tested with Raspberry Pi, Odroid C2, BeagleBone Black, Next Thing CHIP, Asus Tinker Board and Arduinos. Supports GPIO, I2C, SPI as well as Serial communication. Also known to work with Udoo Quad.
Stars: ✭ 167 (+568%)
Mutual labels:  i2c, spi
Drivers
TinyGo drivers for sensors and other devices that use I2C, SPI, GPIO, ADC, and UART interfaces.
Stars: ✭ 250 (+900%)
Mutual labels:  i2c, spi
awesome-embedded-swift
βš‘οΈπŸ› πŸ§° A curated list for Embedded and Low-Level development in the Swift programming language.
Stars: ✭ 57 (+128%)
Mutual labels:  i2c, spi
io
Go drivers for pheripheral I/O on Linux.
Stars: ✭ 20 (-20%)
Mutual labels:  i2c, spi
Rt U8g2
U8g2 for rt-thread - a monochrome graphics library
Stars: ✭ 56 (+124%)
Mutual labels:  i2c, spi

πŸ’§ Arduino library for Bosch Sensortec BME280

The library allows using the sensor over I2C or SPI on any board that supports Arduino.

License Husky Commitizen semantic-release Style Guide clang-format markdownlint commitlint Tested on Arduino Uno Tested on Arduino Nano Tested on NodeMCU Tested on Wemos D1 Code Coverage CI Workflow Release Workflow

πŸŽ‰ Features

✨ Getting Started

πŸ“¦ Installation

πŸ‘‰ PlatformIO

Run pio lib install "malokhvii-eduard/arduino-bme280" or declare in platformio.ini configuration file using lib_deps option. Enjoy! πŸŽ‰πŸ‘

πŸ‘‰ Arduino IDE (Library Manager)

Go to the Arduino IDE and click Tools > Manage Libraries. In the library manager dialogue that opens, enter search query Bme280. Afterward, find a library Bme280 by Eduard Malokhvii and click Install. Enjoy! πŸŽ‰πŸ‘

πŸ‘‰ Arduino IDE (Manual)

Download Bme280.zip from release assets. Once downloaded, go to the Arduino IDE and click Sketch > Include Library > Add .zip Library. In the file dialogue that opens, locate your downloaded ZIP file. Afterward, you should receive a Library Added message just above the debug window. Enjoy! πŸŽ‰πŸ‘

πŸ‘€ Usage

There are various examples to demonstrate usage of the library. The examples are listed below:

❓ FAQs

πŸ™‹β€β™‚οΈ In which units temperature, pressure, humidity are measured?

πŸ‘‰ The temperature is measured in degrees Celsius (symbol: Β°C). The pressure is measured in pascals (symbol: Pa). The humidity is measured in percentages (symbol: %).

πŸ™‹β€β™‚οΈ What settings are used by default?

πŸ‘‰ The default settings are:

  • mode – Bme280Mode::Normal
  • temperature oversampling – Bme280Oversampling::X16
  • pressure oversampling – Bme280Oversampling::X16
  • humidity oversampling – Bme280Oversampling::X16
  • filter – Bme280Filter::Off
  • standby time – Bme280StandbyTime::Ms0_5

πŸ™‹β€β™‚οΈ Are there any settings presets out-of-the-box?

πŸ‘‰ Yes. There are some settings presets out-of-the-box according to the recomendations in the datasheet. You can create settings preset by call one of factory methods in Bme280Settings. The factory methods are listed below:

  • Bme280Settings::indoor()
  • Bme280Settings::weatherMonitoring()
  • Bme280Settings::gaming()
  • Bme280Settings::humiditySensing()

πŸ™‹β€β™‚οΈ How to off one of any measurements?

πŸ‘‰ Assign Bme280Oversampling::Off to an oversampling in settings.

πŸ™‹β€β™‚οΈ How does it work?

πŸ‘‰ You can explore unit tests to see the behavior of all library members.

πŸ› οΈ Tech Stack

EditorConfig Markdown C++ PlatformIO Arduino Google Test gcovr npm clang-format Prettier markdownlint commitlint semantic-release BME280 Shields.io Git GitHub GitHub Actions

✍️ Contributing

πŸ‘πŸŽ‰ First off, thanks for taking the time to contribute! πŸŽ‰πŸ‘

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/awesome-feature)
  3. Commit your Changes (git commit -m 'Add awesome feature')
  4. Push to the Branch (git push origin feature/awesome-feature)
  5. Open a Pull Request

πŸ’– Like this project?

Leave a ⭐ if you think this project is cool or useful for you.

⚠️ License

arduino-bme280 is licenced under the MIT License. See the LICENSE for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].