I have two devices on my I2C bus (eeprom and another device) and I have external pull ups attached on the bus - scl, sda (4.7k). Post addition of the external pull-ups I observe a bump in current consumption - about 500uA continuous consumption(also when chip sleeps). This goes away once the external pull-ups are removed. A potential reason might be that the i2c lines are not being deactivated.
My code for initializing i2c is like this:
GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_6, INPUT, PID_I2C_SCL, false); GPIO_ConfigurePin(GPIO_PORT_0, GPIO_PIN_7, INPUT, PID_I2C_SDA, false); i2c_eeprom_init(); i2c_eeprom_read_data(); i2c_eeprom_release();
I tried to reconfigure the scl, sda lines back to gpio state, but that didn't help with the current consumption.
Is there a way to deactivate the internal pull-ups for i2c transfer that can help with the current consumption? Can you provide any additional inputs on debugging this?