I2C Sensor Wiring for ESP8266MOD (BMP180 & BH1750)
⚠️ CRITICAL SOLDERING WARNINGS
DO NOT use the 5V, VU, or VIN pins on the ESP8266 to power the sensors. The ESP8266 uses 3.3V logic. Supplying 5V will permanently damage the modules. Use ONLY the 3V3 pin.
Leave the ADDR Pin Empty: The BH1750 has an 'ADDR' pin. Do not connect any wire to it. It has a built-in resistor that sets the correct default address.
Tin Your Wires: Always apply a small amount of solder to the wire tips and sensor pads separately before joining them. This ensures a solid, clean joint.
🔌 I2C Pin Connections (Shared Bus)
Because these sensors use the I2C protocol, they share the exact same pins on the ESP8266. You do not need separate pins for each sensor.
ESP8266 NodeMCU
BMP180 Sensor
BH1750 Sensor
Function
3V3
VCC (or VIN)
VCC
Power: Safe 3.3V supply.
GND
GND
GND
Ground: Completes the circuit.
D1 (GPIO 5)
SCL
SCL
Clock: Syncs data speed.
D2 (GPIO 4)
SDA
SDA
Data: The actual WX data pathway.
🎮 Interactive Wiring Visualizer
Click the buttons below to trace the electrical path from the ESP8266 to the sensors.
Click a button above to highlight the wiring path. Notice how one pin on the ESP8266 splits to connect to both sensors simultaneously.
🛠️ Recommended Soldering Methods
Method 1: "The Star Topology" (Recommended)
Cut two separate wires for each connection (e.g., two red wires for Power).
Solder one wire to the BMP180's VCC, and the other to the BH1750's VCC.
Twist the two remaining loose ends together.
Solder that twisted pair into the single 3V3 hole on the ESP8266 at the same time.
Repeat this process for GND, SCL, and SDA.
Method 2: "The Daisy-Chain" (Cleaner look)
Solder a wire from the ESP8266's 3V3 pin to the BMP180's VCC hole.
From that exact same BMP180 VCC hole, solder a short jumper wire over to the BH1750's VCC hole.
The electrical current flows through the first sensor into the second one.
Repeat this chaining method for the GND, SCL, and SDA pins.