Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jnsbyr/arduino-hdc10xx
Adruino driver for Texas Instruments HDC10XX humidity and temperature sensors with I2C bus.
https://github.com/jnsbyr/arduino-hdc10xx
arduino-library hdc1000 hdc1008 hdc1010 hdc1050 hdc1080 humidity-sensor low-power non-blocking temperature-sensor
Last synced: 28 days ago
JSON representation
Adruino driver for Texas Instruments HDC10XX humidity and temperature sensors with I2C bus.
- Host: GitHub
- URL: https://github.com/jnsbyr/arduino-hdc10xx
- Owner: jnsbyr
- License: apache-2.0
- Created: 2024-01-20T19:00:30.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-01-20T19:23:18.000Z (11 months ago)
- Last Synced: 2024-10-15T03:27:03.064Z (2 months ago)
- Topics: arduino-library, hdc1000, hdc1008, hdc1010, hdc1050, hdc1080, humidity-sensor, low-power, non-blocking, temperature-sensor
- Language: C++
- Homepage:
- Size: 13.7 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Texas Instruments HDC10X0 Humidity and Temperature Sensor Driver for Arduino
## Features
- supports HDC1080
- supports HDC1000, HDC1008, HDC1010 and HDC1050 (untested)
- blocking and non-blocking mode
- multiple I2C bus support
- heater support
- convenience method to heat the sensor for a specified duration
- serial ID support
- CPU deep sleep support
- tested with SAMD21 MCU
- test build for ATmega 328P, ESP8266 and ESP32 MCU### Table of contents
[1. Motivation](#motivation)
[2. Results](#results)
[3. Documentation](#documentation)
[4. Examples](#examples)
[5. Contributing](#contributing)
[6. Licenses and Credits](#licenses-and-credits)## Motivation
There are several Arduino libraries available for the HDC10XX sensors, but most of them share at least one of the following drawbacks:
- support for non-blocking usage missing
- build-in delays
- sparse implementation of device features
- not all HDC10XX variants supported
- GPL license## Results
In non-blocking mode with 11 bit resolution it is possible to perform an acquisition cycle for humidity and temperature in about 10 ms with the CPU
being involved for less than 1 ms (tested with a SAMD21 MCU).Freeing up the CPU for about 9 ms compared to blocking mode does not sound like much, but even with a CPU running at 8 MHz this typically equates to significantly more than 50.000 CPU instructions.
## Documentation
See method description in the [header file](src/TI_HDC10XX.h).
## Examples
Examples for blocking and non-blocking use can be found in the [examples](examples) subdirectory.
## Contributing
Contributors are welcome. Please create a merge request if you want to fix a bug or add a feature.
## Licenses and Credits
Copyright (c) 2024 [Jens B.](https://github.com/jnsbyr/)
[![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0)
This library depends on the Arduino platform and the Arduino Wire library.
The code was edited with [Visual Studio Code](https://code.visualstudio.com).
The badges in this document are provided by [img.shields.io](https://img.shields.io/).