It doesn't use those pins as analog pins. Many pins on the board have more than one function and A4 and A5 in addition to being digital IO and analog inputs are also where the I2C bus lives. Those are just the pins they decided to put it on.
Do you know if the Pro Mini operates the same way.
I looked it up under the products tab and it was listed in the chart as ( I2C 1 )
does the 1 mean there is only one port? it seems like it would need two for SDA and SCL
or does it mean it can only support one I2C device? which from my understanding somebody can put as many I2C devises as they want as long as the address/device code is different.
Do you know if the Pro Mini operates the same way.
Yes exactly the same way, because it is the same processor.
The I2C bus can support 127 devices. You need two Arduino pins one for SDA and the other for SCL, these two must be the specific pins specified because they are attached to hardware inside the processor that no other pins are attached to.
It means it only has one I2C bus. That is one SDA and SCL pair. And you can put as many devices on it as you want so long as they all have different addresses.
Datasheet tells me that these sensors can be set to two addresses.
1101000 when AD_select is connected to ground, and 1101001 when connected to VDD.
I2C pull up strength needed depends on wire length (wire capacitance).
There might already be a (4k7 or 10k) pull up resistor on the breakout board. That value should be ok for 30cm.
Leo..
I2C specs say 1-10k for pull-up. 4k7 is indeed common and will work just fine in most situations.
If you're using breakout boards for i2c sensors there's a good chance that there are 10k pull-up resistors on those boards already, check the schematics. Add three of those boards and you end up at an effective 3k3 pull-up and there's no need for you to add extra resistors.