Serial monitor doesn't reflect Pin 13 status

I'm playing around with using the serial monitor for debugging another project and am trying to bring things down to their basics.

Can someone tell me why the serial monitor always displays 0 even thought the LED on pin 13 is blinking?

int ledPin = 13;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int ledPinValue = digitalRead(ledPin);
  digitalWrite(ledPin, HIGH);
  Serial.print("should be high ");
  Serial.println(ledPinValue);
  delay(1000);
  digitalWrite(ledPin, LOW);
  Serial.print("should be low ");
  Serial.println(ledPinValue);
  delay(1000);
}

Aha! Thanks!

Interesting: I've never ever read an output pin, assuming that the program does what I want and it's high or low as expected.

May be useful I guess, to check a pin is actually high or low as commanded.

I'm having trouble with a project and the serial monitor was not showing me what I knew was true -- a part of the output was working properly but my debugging code was not. So I took my debug code over to the most simple program of all -- the tried and true blink program.

I used that to make sure I was writing the serial monitor code properly -- which I was not. With the help of Delta_G I got my serial monitor code working -- so now I can take it back the project that is failing and see if I can't use it to troubleshoot over there!