multiple pull-ups on I2C bus
AGCB
Posts: 327
in Propeller 1
I'm building a weather data recorder (using flash memory to store data, see [simple spi flash program]) and most of the input devises that use I2C have built in pull-up resistors on the module.
Since all data and clock lines are tied together, can I get rid of some of the resistors? Is just 1 set enough? Or should the built-in ones be replaced by a pair of discreet resistors on the Quickstart board.
On a separate question, are pull-ups needed on both SDA and SCL
As of now there are 4 I2C devices on the bus, each having it's own pull-ups. It is working good right now however 4 4K7 resistors in parallel may be drawing more current than necessary. Could that affect communication?
Thanks for your input
Aaron
Since all data and clock lines are tied together, can I get rid of some of the resistors? Is just 1 set enough? Or should the built-in ones be replaced by a pair of discreet resistors on the Quickstart board.
On a separate question, are pull-ups needed on both SDA and SCL
As of now there are 4 I2C devices on the bus, each having it's own pull-ups. It is working good right now however 4 4K7 resistors in parallel may be drawing more current than necessary. Could that affect communication?
Thanks for your input
Aaron
Comments
More than four sets might start causing problems if the propeller can't pull the lines low.
Bean
Some simpler slaves to no use Clock Stretching,
You can remove pull-ups, but you do need to ensure there is at least one pair.
Also, if the bus is operating at 3.3V, you can easily use smaller pull-ups. For example, 3.3K on a 3.3V bus will source almost as much current as 4.7K on a 5V bus.
-Phil
Aaron