-40C to 125C (3C accuracy)
-40C to 125C (3C accuracy)
0% to 80% RH (5% accuracy)
150 A (average)
< 1 A
1.9V to 3.6V
Supports I2C protocol for easy integration with microcontrollers and other devices
0x40 (7-bit) or 0x80 (8-bit)
18 mm x 18 mm (0.7 in x 0.7 in)
2 x 3.2 mm (0.13 in) diameter
-40C to 85C
-50C to 125C
Pin headers for easy connection to breadboards or PCBs
Includes pull-up resistors for I2C communication
Compatible with various microcontrollers, including Arduino, Raspberry Pi, and ESP32/ESP8266
Additional Resources
SI7021 Humidity and Temperature Sensor
Breakout board schematics and layout files
Example code libraries for popular microcontrollers and platforms
Ordering Information
WF-SI7021-BB
1 x Witty Fox SI7021 Humidity Temperature Sensor Breakout Board
Warranty and Support
1-year limited warranty
Dedicated technical support team for assistance with integration and troubleshooting
Witty Fox - SI7021 Humidity Temperature Sensor Breakout Board DocumentationOverviewThe Witty Fox - SI7021 Humidity Temperature Sensor Breakout Board is a compact and easy-to-use board designed to measure relative humidity (RH) and temperature. The board is based on the popular SI7021 sensor, which provides high accuracy and reliability in a wide range of environmental conditions.Technical SpecificationsSensor: SI7021
Humidity Measurement Range: 0-80% RH
Temperature Measurement Range: -40C to 125C
Accuracy:
+ Humidity: 3% RH
+ Temperature: 0.5C
Power Supply: 3.3V or 5V
Communication Protocol: I2CPinoutVCC: Power supply (3.3V or 5V)
GND: Ground
SCL: I2C Clock
SDA: I2C DataExample Code### Example 1: Basic Temperature and Humidity Reading using ArduinoThis example demonstrates how to read temperature and humidity data from the SI7021 sensor using an Arduino board.
```cpp
#include <Wire.h>#define SI7021_ADDRESS 0x40void setup() {
Serial.begin(9600);
Wire.begin();
}void loop() {
int humidity = readHumidity();
int temperature = readTemperature();Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println(" %RH");Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" C");delay(1000);
}int readHumidity() {
Wire.beginTransmission(SI7021_ADDRESS);
Wire.write(0xE5);
Wire.endTransmission();
Wire.requestFrom(SI7021_ADDRESS, 2);
uint8_t humidityMsB = Wire.read();
uint8_t humidityLsB = Wire.read();
int humidity = ((humidityMsB << 8) | humidityLsB) 0.04 - 4.0;
return humidity;
}int readTemperature() {
Wire.beginTransmission(SI7021_ADDRESS);
Wire.write(0xE0);
Wire.endTransmission();
Wire.requestFrom(SI7021_ADDRESS, 2);
uint8_t tempMsB = Wire.read();
uint8_t tempLsB = Wire.read();
int temperature = ((tempMsB << 8) | tempLsB) 0.01 - 40.0;
return temperature;
}
```
### Example 2: Raspberry Pi Python Code for Reading Temperature and HumidityThis example demonstrates how to read temperature and humidity data from the SI7021 sensor using a Raspberry Pi and Python.
```python
import smbus
import time# Define the I2C bus and SI7021 address
bus = smbus.SMBus(1)
address = 0x40def read_humidity():
bus.write_byte(address, 0xE5)
data = bus.read_i2c_block_data(address, 0x00, 2)
humidity = (data[0] << 8) | data[1]
humidity = (humidity 0.04) - 4.0
return humiditydef read_temperature():
bus.write_byte(address, 0xE0)
data = bus.read_i2c_block_data(address, 0x00, 2)
temperature = (data[0] << 8) | data[1]
temperature = (temperature 0.01) - 40.0
return temperaturewhile True:
humidity = read_humidity()
temperature = read_temperature()print("Humidity: {:.1f} %RH".format(humidity))
print("Temperature: {:.1f} C".format(temperature))time.sleep(1)
```
Note: Make sure to install the `smbus` library on your Raspberry Pi using `sudo apt-get install python-smbus` before running the code.These examples demonstrate the basic usage of the Witty Fox - SI7021 Humidity Temperature Sensor Breakout Board. You can modify the code to suit your specific application requirements.