This multifunctional environmental sensor comprises SHTC3 temperature & humidity sensor, BMP280 atmospheric pressure sensor, VEML7700 light sensor, and ML8511 ultraviolet sensor into one and offers 5 kinds of environmental parameters. Professional sensor chips are selected for each kind of parameter measurement. The reasonable layout and heat conduction of the main chip are carefully considered in the circuit design, which effectively guarantees the accuracy of the data

The product has an MCU processing chip onboard that converts the raw sensor data into values with the standard unit so you can directly use them. For example, ℃ and °F for temperature, % for humidity, Kpa for atmospheric pressure, lx for light illuminance, and mw/m² for ultraviolet.

The environmental sensor supports two communication methods, UART and I2C. There are two versions: Gravity and Fermion(breakout), also complete Arduino and Python libraries are provided.

Exquisite and small, you can use it to make indoor and outdoor environmental monitoring systems, or for your environmental monitoring topics. This DFRobot environmental sensor can greatly simplify the wirings and codes of your project.




Atmospheric pressure sensor

Atmospheric pressure unit relationship: 1000pa = 10hpa = 1kpa

Temperature & Humidity Sensor

Ultraviolet Sensor

Ambient light sensor

Function Overview



Board Overview

Board Overview

Num Label Description
1 D/T I2C data line SDA/UART data transmission-TX
2 C/R I2C clock line SCL/UART data receiving-RX
3 - GND
4 + Power +


Download the program to DFRuino UNO, open the serial monitor to check various environmental parameters.


Read Sensor Data via I2C/UART

Connection for UART and I2C


UART on the left, I2C on the right.

Switch Communication Mode

About UART/I2C mode switching:

  1. The default mode in the code is UART. Dial the switch to UART side to use it.
  2. For using I2C, dial the switch to I2C side and replace the 1 at the beginning of the code with 0, as shown below:

mode to MODE


Note: Different motherboards correspond to different wiring pins (refer to “more wiring diagrams” above). In the Arduino IDE, they also correspond to different motherboard options and different ports (COM). The other steps are the same as DFRuino UNO.

Sample Code

Function: Print all data obtained by the module

Expected Results

The read data will be dipalyed on the serial monitor.


Function Library Name Definition


For any questions, advice or cool ideas to share, please visit the DFRobot Forum.

More Documents

DFshopping_car1.png Get Gravity Multifunctional Environmental Sensor from DFRobot Store or DFRobot Distributor.

Turn to the Top