OK, I thought a bit about the whole "long cable => low pulldown" theme - and I don't get it.
As long as my button is not pressed, the pulldown resistor pulls my input-pin to ground. At that moment the value of the resistor is completely irrelevant.
As soon as my button is pressed, I have a series of resistors between 5V and GND:
R(C) is the cable resistance and R(P) is the pulldown-resistor.
That is a voltage-divider, the voltage "x" that is applied to my input is as follows:
x = 5V/(RC+RP) * RP
As long as RC is as small as possible, we have
x = 5V / RP * RP = 5V
As soon as I have a hiogher value for my cable-resistance, let's say RC = 1k (which is far beyond realistic!), my RP gets interesting:
x = 5V / (1k+RP) * RP
let's fill in some values:
100o => x = 5V / (1k+0,1k) * 0,1k = 0,45 V
1k => x = 5V / (1k+1k) * 1k = 5V / 2k * 1k = 2,5V
10k => x = 5V / (1k+10k) * 10k = 5V / 11k * 10k = 4,54V
100k => x = 5V / (1k+100k) * 100k = 5V / 101k * 100k = 4,95V
So in my opinion, the higher the resistor is, the better my input-value should be.
Realistic, cat5-cables have a DC-resistance of 50-150Ohm/km, so anything above 1k should be perfect.
So why do you say that I should try a lower pulldown-resistor because of the long cables? I don't want to argue, but I'd love to understand!
It's all to do with current flow and noise rejection. A lower resistance causes more current to flow. That's what the "strength" of a pull up or pull down resistor is all about. A "weak" one, like inside the Atmel chip, is typically 20K. "Average" is 10K. "Strong" is 1K-4K7.
When you press the button, the button, cable and resistor form a voltage divider. That mid point of that divider is then connected to the gate of a MOSFET, which is a capacitative element. Current needs to flow into that gate to turn it on, or out of it to turn it off. The more current you have available in the voltage divider to turn it on, and the lower the resistance on the pull-down to turn it off, the better it is. But at the same time you don't want to waste current