1. Introduction
The Gikfun GY-68 BMP180 is a high-precision, compact, and ultra-low power barometric pressure and temperature sensor module. It is designed for use in mobile devices and various electronic projects, offering accurate environmental data. This module is a direct replacement for the BMP085 sensor and is compatible with microcontrollers like Arduino via the I2C communication protocol.
2. Features
- High-precision barometric pressure and temperature sensing.
- Small size, suitable for integration into various projects.
- Ultra-low power consumption: 5µA in standard mode.
- Absolute accuracy: up to 0.03hPa.
- Pressure range: 300 ~ 1100hPa (+9000m to -500m).
- I2C interface for easy connection with microprocessors.
- Lead-free and RoHS compliant.
3. Product Overview




4. Specifications
| Attribute | Value |
|---|---|
| Pressure Range | 300 ~ 1100hPa (+9000m to -500m) |
| Pressure Accuracy | 0.03hPa (lowest) |
| Power Consumption | 5µA (standard mode) |
| Interface | I2C |
| Compliance | Lead-free, RoHS compliant |
| Item Weight | 0.01 ounces |
| Package Dimensions | 4.65 x 3.07 x 0.2 inches |
5. Setup and Connection
5.1 Pinout
The GY-68 BMP180 module typically has the following pins:
- VIN (VCC): Power supply (typically 3.3V to 5V).
- GND: Ground.
- SCL: I2C Clock Line.
- SDA: I2C Data Line.
5.2 Hardware Connection Example (Arduino UNO)
Connect the BMP180 module to an Arduino board as follows:
- BMP180 VIN to Arduino 5V
- BMP180 GND to Arduino GND
- BMP180 SCL to Arduino A5 (SCL)
- BMP180 SDA to Arduino A4 (SDA)
Video 1: Demonstrates the connection of a similar barometric pressure sensor (BME280) to an Arduino board. The connection principles for the BMP180 are similar.
Video 2: Shows the connection and basic code upload for a BMP390 sensor, which uses similar I2C communication as the BMP180. This can serve as a guide for setting up the BMP180.
5.3 Software Setup (Arduino IDE)
- Install Arduino IDE: Download and install the Arduino IDE from the official Arduino website.
- Install Libraries: Open the Arduino IDE. Go to
Sketch > Include Library > Manage Libraries.... Search for and install the "Adafruit BMP085 Library" (which supports BMP180) and the "Adafruit Unified Sensor" library. - Load Example Sketch: After installing the libraries, go to
File > Examples > Adafruit BMP085 Library > BMP085test(or a similar example for BMP180 if available). - Select Board and Port: In the Arduino IDE, select your Arduino board (e.g., Arduino Uno) under
Tools > Boardand the correct serial port underTools > Port. - Upload Sketch: Click the "Upload" button to compile and upload the sketch to your Arduino board.
6. Operating the Sensor
Once the software is uploaded, open the Serial Monitor in the Arduino IDE (Tools > Serial Monitor) to view the sensor readings. Ensure the baud rate in the Serial Monitor matches the baud rate specified in your sketch (e.g., 9600 or 115200).
6.1 Reading Data
The example sketch will typically output the following data:
- Temperature: Measured in degrees Celsius.
- Pressure: Measured in Pascals (Pa) or hectoPascals (hPa).
- Altitude: Calculated based on the pressure reading and a sea-level pressure reference.
You can modify the example code to integrate these readings into your specific project, such as displaying them on an LCD, logging them to an SD card, or using them for environmental monitoring.
Video 3: A short preview showing a set of BMP280-3.3 sensors, which are replacements for BMP180. This video provides a visual of the product.
7. Maintenance
- Handle with Care: The sensor module contains sensitive electronic components. Avoid dropping or subjecting it to excessive physical shock.
- Keep Dry: Protect the module from moisture and liquids, as water can damage the electronics.
- Cleanliness: Keep the sensor area free from dust and debris to ensure accurate readings. Use a soft, dry brush if cleaning is necessary.
- Storage: Store the module in an anti-static bag when not in use to prevent electrostatic discharge (ESD) damage.
- Soldering: If soldering pin headers, use appropriate soldering techniques and avoid excessive heat to prevent damage to the sensor.
8. Troubleshooting
- No Readings/Incorrect Readings:
- Verify all wiring connections are secure and correct (VIN, GND, SCL, SDA).
- Ensure the correct libraries are installed in the Arduino IDE.
- Check that the correct board and serial port are selected in the Arduino IDE.
- Confirm the baud rate in the Serial Monitor matches the sketch.
- Test with a known working I2C scanner sketch to confirm the sensor is detected on the I2C bus.
- Module Not Detected:
- Double-check power supply (VIN) and ground (GND) connections.
- Ensure the I2C lines (SCL, SDA) are connected to the correct pins on your microcontroller.
- Some microcontrollers may require external pull-up resistors on SCL and SDA lines (typically 4.7kΩ), though many modules have them built-in.
- Unstable Readings:
- Ensure the sensor is not exposed to direct airflow, heat sources, or rapid temperature changes during measurement.
- Check for electrical noise in the environment; proper shielding or shorter wires may help.
9. Warranty and Support
Gikfun products are designed for reliability. For specific warranty information or technical support, please refer to the product packaging or contact Gikfun customer service directly. Keep your purchase receipt for warranty claims.