Blog

GY-302 BH1750 Digital Light Sensor Module for Arduino 3V-5V

GY-302 BH1750 Digital Light Sensor Module

High-Precision Ambient Light Sensing for Arduino Projects

Introduction

The GY-302 BH1750 is a digital ambient light sensor that measures illuminance in lux (lx) with high resolution (1-65535 lx). This I2C interface module operates from 3V to 5V and is ideal for automatic brightness adjustment in displays, smart lighting systems, and environmental monitoring.

Key Features

💡 Wide Range

1-65535 lx measurement range

🔍 High Resolution

1 lx resolution at low light levels

🔋 Low Power

0.12mA active current (0.01μA standby)

🌈 Spectral Response

Close to human eye sensitivity

Technical Specifications

Measurement Range 1 – 65535 lx
Resolution 1 lx (at 0-5461 lx range)
Accuracy ±20% (typical)
Supply Voltage 2.4V – 3.6V (5V tolerant I/O)
I2C Address 0x23 (default) or 0x5C (ADDR pin high)
Interface I2C (up to 400kHz)

Pin Configuration

Pin Label Description Arduino Connection
1 VCC Power (3.3V recommended) 3.3V
2 GND Ground GND
3 SCL I2C Clock A5 (Uno) or SCL
4 SDA I2C Data A4 (Uno) or SDA
5 ADDR Address Select GND (0x23) or VCC (0x5C)
Note: Module includes pull-up resistors for I2C lines

Wiring Diagram (Arduino Uno)

 

 

Basic Light Measurement

 

Library Required: Install “BH1750” by Christopher Laws via Arduino Library Manager

Advanced Configuration

Measurement Modes

Address Selection

Measurement Timing

Power Saving

Troubleshooting

No Readings

  • Verify I2C connections (SDA/SCL)
  • Check with I2C scanner sketch
  • Confirm power supply (3.3V recommended)

Incorrect Values

  • Ensure proper measurement mode selected
  • Check for light leaks or shadows
  • Calibrate against known light source

Communication Errors

  • Add 4.7kΩ pull-up resistors if missing
  • Reduce I2C clock speed if using long wires
  • Check for address conflicts