Danke für deine Antwort,

die maximale Laufzeit beträgt 36ms. Dementsprechend würde ich meinen, dass ich das pulseIn() abfragen kann. pulseIn() arbeitet in Mikrosekunden. Einfach geschrieben

Code:
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

if(pulseIn(echoPin, HIGH) < 36000)
{
  duration = pulseIn(echoPin, HIGH);
  distance = microsecondsToCentimeters(duration);
  Serial.println(distance);
} else {
  Serial.println("time out");
}
nur haut das natürlich nicht so hin wie ich mir das wünsche... das gesamte System arbeitet sehr träge.
Bitte um weitere Hilfe...