1

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

Ghanima
  • 15,855
  • 15
  • 61
  • 119

2 Answers2

0

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.

Shreyas Murali
  • 2,416
  • 1
  • 15
  • 22
  • 1
    The I2C bus 1 is working and present. Otherwise i2cdetect would fail as it does for bus 0. – joan Sep 26 '16 at 19:38
0

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.

bruce
  • 436
  • 2
  • 4
  • 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 Sep 27 '16 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 Oct 01 '16 at 11:41