GY-30 Digital Light Intensity Sensor Module – BH1750FVI-based Ambient Light Detection Board

SKU: FA3002-6
Sensor IC

ROHM BH1750FVI

Measurement Range

1 – 65,535 lx

Resolution

1 lx (H-Res), 0.5 lx (H-Res2), 4 lx (L-Res)

Interface

I²C (address 0x23 or 0x5C)

Operating Voltage

3.3V – 5V DC

Active Current

Approx. 0.12mA

Measurement Time

120ms (H-Res), 16ms (L-Res)

Module Dimensions

Compact PCB with miniature light sphere

The GY-30 Digital Light Intensity Sensor Module is a high-precision ambient light detection board designed for measuring illumination in lux (lx) with excellent accuracy and a wide dynamic range. Built around the ROHM BH1750FVI digital ambient light sensor IC, this module provides a direct digital output via the I²C interface, eliminating the need for complex analog-to-digital conversion or calibration. It is an ideal solution for automatic lighting control, display backlight adjustment, agriculture monitoring, and IoT projects requiring accurate light measurement.

At the heart of the module is the BH1750FVI, a digital 16-bit ambient light sensor that measures light intensity from 1 lx to 65,535 lx with a spectral response close to the human eye. The sensor uses a photodiode with a miniature light sphere (a small dome-shaped diffuser) on top, which ensures cosine correction — meaning it accurately measures light from different angles, not just directly overhead. This makes it far more reliable than simple photoresistors (LDRs) for precise lux measurements.

The module communicates via the I²C interface, supporting standard mode (100kHz) and fast mode (400kHz). The I²C address is 0x23 (when the ADDR pin is LOW) or 0x5C (when ADDR is HIGH). The module operates from 3.3V to 5V DC, making it compatible with Arduino, ESP32, ESP8266, STM32, and Raspberry Pi. The GY-30 version includes onboard level shifting for direct connection to 5V microcontrollers.

The 16-bit digital output provides high resolution across the entire measurement range. The sensor supports multiple measurement modes:

  • Continuously H-Resolution Mode — 1 lx resolution, 120ms measurement time

  • Continuously H-Resolution Mode2 — 0.5 lx resolution, 120ms measurement time

  • Continuously L-Resolution Mode — 4 lx resolution, 16ms measurement time

  • One-Time H-Resolution Mode — Single measurement, then auto power-down

  • One-Time L-Resolution Mode — Single low-resolution measurement, then auto power-down

The ultra-low power consumption (typically 0.12mA in active mode) makes the module suitable for battery-powered and energy-harvesting applications. The compact form factor with a 5-pin header (VCC, GND, SCL, SDA, ADDR) allows easy integration into custom enclosures and project boxes.

The module is widely used in automatic lighting control, display backlight adjustment, smart home automation, agriculture monitoring, weather stations, IoT devices, and portable electronics. It is also popular in educational projects for teaching light sensing, I²C communication, and digital sensor principles.

Important Note: The BH1750FVI measures visible light with a spectral response close to the human eye. It is not suitable for measuring infrared or ultraviolet light. Ensure the miniature light sphere is not obstructed or covered during operation. The module requires a 3.3V to 5V DC power supply.

Whether you are building an automatic lighting system, a display with adaptive brightness, or a precision light monitoring device, the GY-30 Digital Light Intensity Sensor Module provides a reliable, accurate solution. It is suitable for individual makers, students, and businesses purchasing in bulk for product development or educational programs.

Features

  • ROHM BH1750FVI sensor IC — High-precision digital ambient light sensor

  • 16-bit digital output — Direct lux measurement (1–65,535 lx)

  • I²C interface — Standard (100kHz) and fast (400kHz) modes

  • Miniature light sphere — Cosine correction for accurate multi-angle measurement

  • Spectral response close to human eye — Accurate visible light measurement

  • Multiple measurement modes — Continuous and one-time, high and low resolution

  • Wide operating voltage — 3.3V to 5V DC (with level shifting)

  • Ultra-low power consumption — Typically 0.12mA active

  • Compact form factor — With 5-pin header for easy integration

  • Wide application range — Automatic lighting, displays, agriculture, IoT, education

Technical Specifications 

# Parameter Specification
1 Sensor IC ROHM BH1750FVI
2 Measurement Range 1 – 65,535 lx
3 Resolution 1 lx (H-Res), 0.5 lx (H-Res2), 4 lx (L-Res)
4 Interface I²C (address 0x23 or 0x5C)
5 Operating Voltage 3.3V – 5V DC
6 Active Current Approx. 0.12mA
7 Measurement Time 120ms (H-Res), 16ms (L-Res)
8 Module Dimensions Compact PCB with miniature light sphere

Usage

Getting Started

  1. Connect power — Supply 3.3V or 5V DC to the VCC pin and GND to ground. The GY-30 version includes onboard level shifting for 5V compatibility.

  2. Connect I²C lines — Connect SDA to your microcontroller’s I²C data line and SCL to the I²C clock line:

    • Arduino Uno: SDA → A4, SCL → A5

    • ESP32: SDA → GPIO21, SCL → GPIO22 (default)

    • ESP8266: SDA → D2, SCL → D1

    • Raspberry Pi: SDA → GPIO2, SCL → GPIO3

  3. Set I²C address — The default address is 0x23 when the ADDR pin is LOW. Connect ADDR to VCC for address 0x5C.

  4. Install the library — Use the BH1750 library by Christopher Laws or hp_BH1750 library by Stefan Armborst through the Arduino Library Manager.

  5. Upload a test sketch — Read lux values and verify operation. Example: lightMeter.readLightLevel() returns the lux value.

Pin Connections

Module Pin Function
VCC Power (3.3V–5V)
GND Ground
SCL I²C Clock
SDA I²C Data
ADDR Address Select (optional)

I²C Address Selection

ADDR Pin I²C Address
LOW (GND) 0x23
HIGH (VCC) 0x5C

Typical Applications

  • Automatic lighting control — Adjust lights based on ambient brightness

  • Display backlight adjustment — Adaptive brightness for LCD/OLED screens

  • Smart home automation — Light-based scenes and routines

  • Agriculture monitoring — Track light levels for plant growth

  • Weather stations — Measure ambient light for environmental data

  • IoT devices — Light sensing for connected products

  • Portable electronics — Adaptive brightness for battery-powered devices

  • Educational projects — Teaching light sensing and I²C communication

Notes for Business Buyers

  • High precision — Far more accurate than photoresistors (LDRs) for lux measurement.

  • Cosine correction — Miniature light sphere ensures accurate multi-angle measurement.

  • Wide compatibility — Works with Arduino, ESP32, ESP8266, STM32, and Raspberry Pi.

  • Suitable for bulk purchasing — Ideal for lighting manufacturers, display integrators, and educational institutions.

Q: What is the GY-30 Digital Light Intensity Sensor Module used for?

It is a high-precision ambient light sensor for measuring illumination in lux, used in automatic lighting, display backlight adjustment, agriculture monitoring, and IoT projects.

Q: What is the measurement range?

The module measures from 1 lx to 65,535 lx.

Q: What is the I²C address?

The default address is 0x23 when the ADDR pin is LOW, or 0x5C when ADDR is HIGH.

Q: What voltage does the module require?

It operates from 3.3V to 5V DC. The GY-30 version includes onboard level shifting for 5V compatibility.

Q: What is the difference between GY-30 and GY-302?

Both modules use the BH1750FVI sensor. The GY-30 typically includes a 5V level shifter and a 5-pin header. The GY-302 is a newer revision with similar functionality, often with a different PCB layout.

Q: What is the purpose of the miniature light sphere?

The miniature light sphere acts as a diffuser and provides cosine correction, ensuring the sensor accurately measures light from different angles, not just directly overhead.

Q: What library should I use?

Use the BH1750 library by Christopher Laws or the hp_BH1750 library by Stefan Armborst, available through the Arduino Library Manager.

Q: What are the measurement modes?

The sensor supports Continuously H-Resolution, Continuously H-Resolution2 (0.5 lx), Continuously L-Resolution, One-Time H-Resolution, and One-Time L-Resolution modes.

Q: Can I use this module with a Raspberry Pi?

Yes. Connect SDA to GPIO2 and SCL to GPIO3, and use the smbus or Adafruit BH1750 library.

Q: Can I purchase in bulk for a product development project?

Yes. This module is suitable for both individual users and business purchasing, including lighting manufacturers, display integrators, and educational institutions.