If (pin == low)

I want to see when a pin goes low ... seen alot of tutorials on reading when pin goes high but can't find anything on how to do it without getting false readings

Please read and follow the directions in "How to use this forum".

If you are using a button, have a read up on 'bouncing' or 'button bounce'.

digitalRead will not give false readings, it will tell you exactly what the micro-controller is seeing.

If not a button, please give us some more detailed information as to what you are actually doing.

ahhhhh pinMode(2, INPUT_PULLUP); seems to do it for me

ahhhhh pinMode(2, INPUT_PULLUP); seems to do it for me

The input must be driven or "pulled" in one direction or the other. If you've got a button or a switch with no pull-up or pull-down, the input is floating when the switch is off (open) and it may float unreliably up or down or it may pick-up noise and jump between high and low.

If you've got the output of one Arduino connected to the input of another Arduino, you don't need a pull-up or pull-down because the output is driven in both directions and it never floats (as long as it's configured as output).

The [u]Digital Read Serial Example[/u] uses a pull-down. When the switch/button is off (open) the resistor pulls the input low. When the switch is on, the input is forced high "overpowering" the resistor.

In real world circuits, pull-ups are far more common than pull-downs.

If (pin == low)

It's either high or low so if 'if-low' isn't working reliably, 'if-high' won't work reliably either. :wink:

There is an abstract relationship between the hardware (pull-up or pull-down, etc.), the logic, and the software... You can wire-up a button with a pull-down resistor and write a program that turns-on an LED when you push the button, or you can wire it up with a pull-up and modify your program so the LED again turns-on when the button is pressed.