I pondered whether to add to this other topic:
but in the end the use case was different, the topic didn't reach a conclusive answer, and I would be resuscitating a very old thread.
So here it goes: if I use a switch/sensor to connect an input pin to the 3v3 line, and this switch is closed, how much current does the input pin draws from the 3v3 line while reporting a HIGH?
And this is the use case: I have a home alarm system, I re-used the old sensors, each to one input pin, PLUS a long loop tamper which goes in series to all the sensors (and soon a couple more sensors and some sirens). So, imagine a loopback from and to the raspi for each and every component for 1900sqft worth of areas, running on a small diameter wire, let's say 23AWG stranded copper, plus a short length of cat5 wire which doesn't really change much.
I have no idea of the total length of the loop coming back and forth for each component, but I can ballpark a total resistance, let's say 20Ohm assuming an exaggerated 300m total length.
Now, I am using the GPIO PHP library, with several watchdogs, and I keep getting weird readings on the tamper loop pin, that is, it reads LOW->HIGH transitions without any previous HIGH->LOW, and also it occasionally reads HIGH->LOW immediately followed by LOW->HIGH without any component having been really disconneted, to the point that I had to adjust the PHP code to compensate for these occurrencies (and adding several otherwise redundant and useless queries to the already slow SD-based database which I very much would like to avoid).
One of the things I thought, is that, being the loop tamper so long, the resistance might be too high, and the reading from the 3v3 line might get confused for a LOW.
Knowing the input pin current draw I might fancy a total voltage drop over the cable and decide if that's the case, or if I need to look elsewhere.