Yet another Arduino based track timer...

DIY timing systems
User avatar
gpraceman
Site Admin
Site Admin
Posts: 4926
Joined: Fri Jun 20, 2003 12:46 am
Location: Highlands Ranch, CO
Contact:

Re: Yet another Arduino based track timer...

Post by gpraceman »

Indy wrote:- New: Option added where timer can be reset by closing start gate
If in the middle of timing, does the timer send the results for any cars that had finished?
Indy wrote:- Fix: Timer now goes into finish state if powered-up with the start gate open
Can you elaborate?

What happens if there is a power fluctuation right in the middle of timing a heat? That can act as very fast power down and then back up. Seems unlikely, but myself and some others have actually experienced this problem.
Randy Lisano
Romans 5:8

Awana Grand Prix and Pinewood Derby racing - Where a child, an adult and a small block of wood combine for a lot of fun and memories.
Indy
Pine Head
Pine Head
Posts: 56
Joined: Sun Apr 24, 2011 7:27 am
Location: Twin Cities, MN

Re: Yet another Arduino based track timer...

Post by Indy »

Good questions.

The timer has 3 distinct states:

READY - the start gate is closed and the timer has been initialized for a new race
RACING - the start gate has opened
FINISHED - all unmasked lanes have had a car cross the finish or the race was forced to end, time/place data is displayed and sent to the attached PC

Transitions from one state to the next is one way: READY -> RACING -> FINISHED -> READY...
gpraceman wrote:
Indy wrote:- New: Option added where timer can be reset by closing start gate
If in the middle of timing, does the timer send the results for any cars that had finished?
No, the results are only sent once the race is completed. The (optional) 'reset timer by closing the start gate' feature only works from the FINISHED state. If the results are being manually recorded (with no attached PC) care needs to be taken that the person operating the start gate doesn't shut the gate too soon. The feature is disabled by default.

gpraceman wrote:
Indy wrote:- Fix: Timer now goes into finish state if powered-up with the start gate open
Can you elaborate?
Previously if you turned on the timer with the gate open it would drop into the RACING state. You would need to force end the "race" or manually wave your hand over the detectors to move the timer into the FINISHED state. Now on power up if the timer sees the start gate open it will drop through to the FINISHED state.
gpraceman wrote:What happens if there is a power fluctuation right in the middle of timing a heat? That can act as very fast power down and then back up. Seems unlikely, but myself and some others have actually experienced this problem.
If it fluctuates enough to turn-off (or reboot) the Arduino the timer will be forced to reset and that heat will be lost.
User avatar
gpraceman
Site Admin
Site Admin
Posts: 4926
Joined: Fri Jun 20, 2003 12:46 am
Location: Highlands Ranch, CO
Contact:

Re: Yet another Arduino based track timer...

Post by gpraceman »

Indy wrote:No, the results are only sent once the race is completed.
You might want to consider going to the finished state and sending the results upon a gate reset when in the racing state. That can be quite convenient when you have a car not finishing and are using the computer to read results. Otherwise, you have to go to the computer to force the end the race. Many people like running their computer hands-free and control things at the start gate.
Indy wrote:If it fluctuates enough to turn-off (or reboot) the Arduino the timer will be forced to reset and that heat will be lost.
Does the timer send any data during a power up, like a copyright statement? There are a couple of timers that GPRM supports that do that. If GPRM sees that copyright statement when it was expecting results, it throws a warning message to the user. I can add that feature to custom timers as well. I've been working more and more for GPRM to intelligently process results and provide warnings to the user for any unusual condition. Otherwise, people think the software is screwing up. ;)
Randy Lisano
Romans 5:8

Awana Grand Prix and Pinewood Derby racing - Where a child, an adult and a small block of wood combine for a lot of fun and memories.
Indy
Pine Head
Pine Head
Posts: 56
Joined: Sun Apr 24, 2011 7:27 am
Location: Twin Cities, MN

Re: Yet another Arduino based track timer...

Post by Indy »

gpraceman wrote:You might want to consider going to the finished state and sending the results upon a gate reset when in the racing state. That can be quite convenient when you have a car not finishing and are using the computer to read results. Otherwise, you have to go to the computer to force the end the race. Many people like running their computer hands-free and control things at the start gate.
I'll have to ponder this one - let me get back to you.
gpraceman wrote:Does the timer send any data during a power up, like a copyright statement? There are a couple of timers that GPRM supports that do that. If GPRM sees that copyright statement when it was expecting results, it throws a warning message to the user. I can add that feature to custom timers as well. I've been working more and more for GPRM to intelligently process results and provide warnings to the user for any unusual condition. Otherwise, people think the software is screwing up. ;)
It currently just sends a single 'P' to indicate the timer has powered up. Is GPRM specifically looking for the word 'copyright'?

Thanks,
User avatar
gpraceman
Site Admin
Site Admin
Posts: 4926
Joined: Fri Jun 20, 2003 12:46 am
Location: Highlands Ranch, CO
Contact:

Re: Yet another Arduino based track timer...

Post by gpraceman »

Indy wrote:
gpraceman wrote:Does the timer send any data during a power up, like a copyright statement? There are a couple of timers that GPRM supports that do that. If GPRM sees that copyright statement when it was expecting results, it throws a warning message to the user. I can add that feature to custom timers as well. I've been working more and more for GPRM to intelligently process results and provide warnings to the user for any unusual condition. Otherwise, people think the software is screwing up. ;)
It currently just sends a single 'P' to indicate the timer has powered up. Is GPRM specifically looking for the word 'copyright'?
For those particular timers, yes it does. That can easily be added to the custom timer interface as well.

Anyways, I think it is a good idea for any timer to send a copyright statement and firmware version number during power up.
Randy Lisano
Romans 5:8

Awana Grand Prix and Pinewood Derby racing - Where a child, an adult and a small block of wood combine for a lot of fun and memories.
Indy
Pine Head
Pine Head
Posts: 56
Joined: Sun Apr 24, 2011 7:27 am
Location: Twin Cities, MN

Re: Yet another Arduino based track timer...

Post by Indy »

Wireless PDT

I'm testing with Xbee modules to see if the timer can have a wireless connection to the PC and not be tethered by a USB cable (with a 5m maximum length).

So far, so good. Setup is almost non-existent (using the Series 1 Xbees), wiring on the timer side is minimal using an adapter board and everything worked on the first attempt.

I need to do some more testing (including range) but assuming no problems pop up I'll add a short write up to the website in the next few days.
User avatar
gpraceman
Site Admin
Site Admin
Posts: 4926
Joined: Fri Jun 20, 2003 12:46 am
Location: Highlands Ranch, CO
Contact:

Re: Yet another Arduino based track timer...

Post by gpraceman »

I tried a wireless Bluetooth setup awhile back. Unfortunately, there were periodic drops in the communication, so it is not something that I moved forward with. During a heat, you don't want to lose your data and have to do a rerun.

Maybe the Xbee's will be more dependable. However, there should be a way to prompt the timer to resend the heat results, if there was a problem getting them the first time around.
Randy Lisano
Romans 5:8

Awana Grand Prix and Pinewood Derby racing - Where a child, an adult and a small block of wood combine for a lot of fun and memories.
Indy
Pine Head
Pine Head
Posts: 56
Joined: Sun Apr 24, 2011 7:27 am
Location: Twin Cities, MN

Re: Yet another Arduino based track timer...

Post by Indy »

gpraceman wrote:Maybe the Xbee's will be more dependable. However, there should be a way to prompt the timer to resend the heat results, if there was a problem getting them the first time around.
Definitely. I've already added an option to resend the data. I see the "Retrieve Data" message in GPRM's serial timer configuration - is that something the software sends on it own or is their method for the user to initiate it?

Thanks for the feedback.
User avatar
gpraceman
Site Admin
Site Admin
Posts: 4926
Joined: Fri Jun 20, 2003 12:46 am
Location: Highlands Ranch, CO
Contact:

Re: Yet another Arduino based track timer...

Post by gpraceman »

Indy wrote:Definitely. I've already added an option to resend the data. I see the "Retrieve Data" message in GPRM's serial timer configuration - is that something the software sends on it own or is their method for the user to initiate it?
That is actually for timers that must be prompted before every heat before they will send the times. I could always change that for the custom timers, since I doubt there are any that work that way. This was modeled after two of the supported timers that need that prompting.

Having a way to retrieve the last heat's worth of data is something that would need to be added to GPRM in some way, since GPRM would have already stopped listening for results when communications were lost.
Randy Lisano
Romans 5:8

Awana Grand Prix and Pinewood Derby racing - Where a child, an adult and a small block of wood combine for a lot of fun and memories.
ksungela
Apprentice
Apprentice
Posts: 1
Joined: Thu Feb 13, 2014 7:40 am
Location: Rivervale, NJ

Re: Yet another Arduino based track timer...

Post by ksungela »

Indy,
Is your setup with the Arduino able to count down a Christmas tree then trigger the gate solenoid? I"m using GPRM 13.
Thanks,
Ken
Indy
Pine Head
Pine Head
Posts: 56
Joined: Sun Apr 24, 2011 7:27 am
Location: Twin Cities, MN

Re: Yet another Arduino based track timer...

Post by Indy »

ksungela wrote:Is your setup with the Arduino able to count down a Christmas tree then trigger the gate solenoid? I"m using GPRM 13.
Hi Ken - I thought I had replied to this shortly after it was posted but when I came by tonight I noticed I hadn't. Really sorry for the delay.

This may be too late to help you but in case it helps anyone else. The 'initiate start gate solenoid' and 'detect start gate open and start race' events are independent within the PDT code. What this means is a Christmas tree circuit (CTC) could easily be put in between the PDT and the start gate solenoid. The CTC would use the 'initiate start gate solenoid' signal from the PDT to initiate the count down (drive the lights) and once completed it would than send a signal on to the start gate solenoid. The start gate (and switch) would open and the PDT would detect the start of the race.

The Arduino (Uno in particular) used for the PDT does not have enough outputs to control the Christmas tree lights directly.

Hope that helps,
David
notmeiquit
Apprentice
Apprentice
Posts: 6
Joined: Wed Sep 17, 2014 9:12 am
Location: Burlington, nc

Re: Yet another Arduino based track timer...

Post by notmeiquit »

Hi all,

I'm building this project and the only thing I can not figure out is how to connect the Arduino to the pc. What output from the Arduino connects to the Serial port on the pc for data collection? any help would greatly be appreciated.

Thanks,
Sean
User avatar
gpraceman
Site Admin
Site Admin
Posts: 4926
Joined: Fri Jun 20, 2003 12:46 am
Location: Highlands Ranch, CO
Contact:

Re: Yet another Arduino based track timer...

Post by gpraceman »

Once the USB drivers are installed, that should create a COM port that you can use for PC communication.
Randy Lisano
Romans 5:8

Awana Grand Prix and Pinewood Derby racing - Where a child, an adult and a small block of wood combine for a lot of fun and memories.
notmeiquit
Apprentice
Apprentice
Posts: 6
Joined: Wed Sep 17, 2014 9:12 am
Location: Burlington, nc

Re: Yet another Arduino based track timer...

Post by notmeiquit »

gpraceman wrote:Once the USB drivers are installed, that should create a COM port that you can use for PC communication.
gpraceman Ok good deal. My main question is how the Arduino sends the information to the computer. What output connects to the computer?

Thanks
User avatar
Vitamin K
Pine Head Legend
Pine Head Legend
Posts: 1243
Joined: Sat Apr 20, 2013 7:26 pm
Location: Spotsylvania, VA

Re: Yet another Arduino based track timer...

Post by Vitamin K »

notmeiquit wrote:
gpraceman wrote:Once the USB drivers are installed, that should create a COM port that you can use for PC communication.
gpraceman Ok good deal. My main question is how the Arduino sends the information to the computer. What output connects to the computer?

Thanks
The Arduino connects to the computer via the USB port.
Post Reply