I have connected ITG-3200 and ADXL345 to atmega328p(arduino uno) i2c line.
What I can see from sparkfun schematic of itg-3200 the 4k7 resistors are optional same goes for the adxl345 however when I removed the pull up resistors from the adxl345 i2c communication stopped working or so do I think is that possible should I add pull up also to the itg-3200 ?
I dont thing that i2c without pull-up can damage the board also the internal pull ups in the arduino are not helping me !
Are you using commercial breakout boards for the parts, or are you making your own boards?
The reason I ask is that almost every breakout board includes a pair of 10k pullup resistors (the exact value of I2C pullups is not critical, so you can get away with a couple of parts with pullups on one bus before it becomes a
problem).
You can't use the internal pullups for these parts.
If you do, you may damage the part. Per datasheets, both of those parts are 2.1-3.6v (nominally 2.5 or 3.3), while the internal pullups will pull up to 5v.
You do not need more than 1 set of pullups on a single I2C bus, though you can get away with more than one, as long as the overall resistance isn't so low that the chips can't drive the scl/sda lines LOW.
Well actually I was powering the electronic from li-po battery and I was tryin with a arduino from the outside the board to test the I2C sensors but I found out that the power source of the sensors and the arduino must be same in order to recognize the i2c devices in the line !
Yes, my mistake was that when I used A4,5 from the arduino I never passed the ground from the schematic to the arduino board and this way the i2c scanner was unable to find the devices attached !
However I added 4k7 resistors as pull up at the accelerometer for the whole i2c line I hope they will be enought.