Newbie: Reverse engineering serial signal. Serial.read & .write not symmetrical?

void loop() {
  // read the incoming byte:
  incomingByte = Serial.read();

  // say what you got:
  Serial.println(incomingByte, HEX);
}

What numbers are you getting? You need to check Serial.available before trying to read it.