unsigned long startTime; unsigned long endTime; void setup() { // put your setup code here, to run once: pinMode(10, INPUT); Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: while(digitalRead(12) == LOW); startTime = millis(); while(digitalRead(12) == HIGH); endTime = millis() - startTime; Serial.print("I received impuls with length in ms : "); Serial.println(endTime, DEC); }