My Raspy 2 B+ doesn't detect the BMP085 sensor via i2c bus. The wiring was checked again and again, it's true :

Vcc -> 3.3V GND -> GND SDA -> SDA0 pin SCL -> SCL0 pin

Results of the "i2cdetect" command when the BMP085 is connected : enter image description here

Results of the "i2cdetect -y 0": enter image description here

i2c is already enabled and the BMP085 works perfectly on an Arduino Uno !

Kernel Version :

Linux raspberrypi 4.4.11+ #888 Mon May 23 20:02:58 BST 2016 armv6l GNU/Linux

OS Version :

PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)" NAME="Raspbian GNU/Linux" VERSION_ID="8" VERSION="8 (jessie)" ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

The blacklisted file is empty. And I2C is already enabled with the "raspi-config" command.

Raspy connections enter image description here

BMP085 connections enter image description here

  • 1
    You haven't connected the BMP085 to the Pi properly. A photo of your connections may show what is wrong.
    – joan
    Commented Sep 26, 2016 at 19:40
  • The photos are a little too blurred to make out the connections.
    – joan
    Commented Sep 26, 2016 at 20:35
  • GND : Pin 6 (black), SDA : Pin 3/GPIO8 (Yellow), SCL : Pin 5/GPIO9 (Green), VCC : 3.3 V / Pin 1 (Red) Commented Sep 26, 2016 at 20:48
  • have a look at this ... firmware might be the problem Commented Sep 26, 2016 at 21:01
  • I know this is silly, but try different jumper cables?
    – recantha
    Commented Sep 27, 2016 at 6:51

2 Answers 2


looks like your software is working fine. check if you have pull ups on your slave device. although it is master devices responsibility to provide pull ups. if you don't have pull-ups then install 4.7K pull-ups on SDA and SCL line. it should work. if you are not comfortable with hardware get a raspberry pi i2c shield.

  • 1
    On the Pi the slave device SHOULD NOT provide pull-ups. The Pi has hard-wired 1k8 pull-ups to 3V3 on I2C bus 1 (pins 3/5). Slave pull-ups can damage the Pi, especially if they are to a voltage greater than 3V3.
    – joan
    Commented Sep 27, 2016 at 20:07
  • @joan i am really really sorry. yes, you are correct its master responsibility to provide pulls.. i just got confused .. my apologies...
    – bruce
    Commented Oct 1, 2016 at 11:41

Usually posting the details of uname -a (kernel version) and /etc/os-release (os version) helps in narrowing down problems.

I suspect the i2c has been blacklisted (disabled) in the kernel. here are the instructions to enable it. briefly using raspi-config you should be able to enable like so

sudo raspi-config => Advanced Options => I2C Enable ? Yes

Reboot and check again.

  • 1
    The I2C bus 1 is working and present. Otherwise i2cdetect would fail as it does for bus 0.
    – joan
    Commented Sep 26, 2016 at 19:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.