The MCP23017 (16 bit I/O expander) can supply 25mA per pin and there are 16 pins for the mentioned I/O expander
From the datasheet of MCP23017, the max current into Vin is limited to 125mA. Also, the current supply to SDA and SCL is limited to 3mA. where does the current to the 16 GPIO pins come from?
I mean 25ma * 16 I/O pins = 400 mA. Could someone please through some light?
Unfortunately, its whatever limit you hit first will determine how many pins or how much current/pin you can use.
For example, if all 16 pins are used with equal current, then the limitation will be 7.8 mA per pin.