Vertical Jump Test Timer

Hi Gang

I'm new to the Arduino but loving it already (my last coding was BASIC on the legendary BBC Micro).

I need some ideas with a project that will measure the flight time (lower body explosive power) of an athlete when jumping from a pressure jump mat.

The athlete will start on the mat and when ready will simply jump as high as possible, which will start the timer and the Arduino will measure the 'flight time' and stop the timer when the athlete lands on the mat.

I have found examples of stop watch timers that start when a button is pressed but I want to start when a button is released and stop when the same button is then pressed (of course it will be a jump mat instead of the button).

I intend to output the result on a 16x2 LCD display.

I also have an idea for a more advanced project but I'll see how this one goes first.

Cheers gang

Pete

Escrime-Maestro:
I have found examples of stop watch timers that start when a button is pressed but I want to start when a button is released and stop when the same button is then pressed (of course it will be a jump mat instead of the button).

How hard can it be to change a line of logic from ==LOW to ==HIGH or vice versa?

First you must be able to connect to the mat and determine how it acts, which I do not know.

But for example with a contact button, the Arduino is so fast it can read the metal contacts bouncing at sub-millisecond speed. Code that accounts for that is called debounce code. Result is that time is taken to determine the button is actually pushed, time that to human sense is instantly but still perhaps 1 or 2 100ths of a second in some cases.

You might do this easier with lights and light detectors. They don't bounce and are very simple to connect. I say detectors (plural) since the landing may not be close to the leap. Phototransistors are inexpensive, 10 or 20 or more for $1 if you shop. A strip of those and 1 light can replace the mat.

However you sense the leap, what you have left is the time. Arduino keeps track of time since startup. You can read milliseconds or microseconds passed using the millis() or micros() functions. If you subtract the end time from the start time using unsigned variables, you will always get the time between within limits. (With unsigned long that Arduino uses, the limit is almost 50 days.)

Then you have the details of LCD and other practicalities to sort out, this is a good early project.