My name is Marc Speth.  I live in Thayne, Wyoming, about 100 miles south of Yellowstone Park.

I first moved to this area after spending 11 years in the U.S. Air Force working in 'Ground Radio Maintenance.'  The last year and a half  of my service I was teaching Basic Electronics at Keesler Air Force Base, in Biloxi, Mississippi.  While I was stationed at Keesler Air Force Base I had a barracks roommate that had just bought a new Apple ][+ computer.  With his permission, while he was at work (we didn't work the same shift) I read the books that came with the computer and taught myself how to do programming in AppleSoft BASIC.  My first 'real' program would let you manipulate a Rubik's Cube on the screen and do repetitive moves very quickly.  I didn't know enough programming to get the program to solve the cube though.  I also learned to repair the 5" floppy disk drive after I plugged the cable in wrong one time and turned loose the 'magic smoke' that makes things like that work.

When I received my Honorable discharge from the Air Force I quickly found a job working on photocopiers in Jackson, Wyoming.  And, of course, I bought my own Apple ][e and set up a BBS (does that tell you how old I am?) that you dialed into using a telephone modem.  I ran that BBS for about 3 years, and it all ran on an Apple][e that had a 5 megabyte hard drive (which was considered a huge amount of storage for those days) plus it had six 400k floppy drives (yes, 400k ... because they could only write to one side of the disk).  It was during this time that I wrote my first version of 4x4 Magic Squares.  It only took the Apple][e six months to find all possible 7090 magic squares. (the Macintosh I'm currently using takes just over 45 seconds - !!!! - to find all 7090 Magic Squares)

After working on photocopiers for seven years the company I worked for changed hands and the changes that ensued made up my mind that I wanted to do something else for a living, so I went into business for myself.

Unfortunately, I don't make a very good businessman .... so the company shut down after three years.  But it was during that time that I was introduced to the Pinewood derby.

In 1988 one of the Jackson scoutmasters came to me with a set of blueprints for a digital timer system and asked me if I could build it for them.  I looked over the plans and told him "they're doing this the hard way."  So he asked if I could come up with a better system.  I won't go into all of the details, but, in short, I designed and built a better timer.

Some Info About Me

The first Pinewood timer I built in 1990 - I built the electronics, but my friend, Cliff, built the wood cabinet

That timer has been in service, only needing minor repairs now and then (touch up a solder joint, replace a pushbutton that went bad, etcetera), for 14 years.  

While I was building the timer I realized that we would either need  a computer program or herd-of-monkees-on-calculators to handle the math to calculate and sort the average times of the racers.

My very first Pinewood program was written on an Apple ][e computer and was hardwired for 32 racers and four lanes.  NOTHING ELSE.  And, that's how we ran the very first race in Jackson.  Of course, by the time we ran the second race I had added the ability to have a variable number of Racers, Heats, and Lanes.  All of this was done using the standard 'press a key to select a menu option' mode of programming.

When Apple dropped support for the Apple ][ computers I switched to the Commodore Amiga 500 computer and I built my first mouse-driven version of my Pinewood program.  I used that computer and program for about 2 years before Commodore closed it's doors.

This was about the time I started working as an Apple Macintosh service technician.  While working as a service tech I learned how to create programs for the Mac and about my third programming exercise was to write a Pinewood derby progrm for the Mac.  That was about 1995.

Since then, every year I have added more bells and whistles to the program until it stands as it is now.

But, it was about 6 years ago I started worrying 'what if that timer took a static ZAP or was hit by a power surge ... how would we repair it?  You can't even buy those parts any more.  So, I asked myself "if I had to create a new timer using today's parts ... how would I do it?"

I discovered the "Arduino" .... a single-board computer that has been the backbone of robotics experimenters for several years.

I have built and donated four Arduino based timers to Star Valley scout packs over the last 5 years.  And, FINALLY, this year I built a new timer, using my latest design, for the scouts in Jackson.

The earlier design used an Arduino Uno to drive a pair of LCD displays.

But I discovered that the LCD displays are hard to read under low-light conditions. (there was one race that I had to keep a flashlight handy to read the times)

So the latest version of my timer (the flavor I donated to the Jackson scouts in 2014) looks like this.

The 2013 version of my Pinewood timer

I have gone back to using LED displays simply becaus they are much easier to see in low-light conditions.  I also added red/green lights to indicate Ready/Not Ready.  There are corresponding lights on the starting gate to tell the Gatekeeper when he can turn the cars loose.

This one has two pushbuttons, where all the earlier versions only had one button.

The button on the right is the Reset button to reset the timer between races.  While the button on the left is what I call 'the keyboard disable button.'  This version of the timer has the ability to emulate a keyboard.  That is, you can connect a USB cable from the timer to your computer, and to the computer it looks as if you had a keyboard connected that has a super-fast super-accurate typist entering the times.  So this timer 'types' the times into the Pinewood Master program for you.

But the reason for the second (green) button is that before a race the boys are encouraged to give their car a test run down the track to make sure nothing is dragging against the track, or something similar. And of course, after the race is over many of the boys want to give their car 'one last run ... or two ... or three ..."  but you don't want all these extraneous times being sent to the computer .... so the green button puts the timer into a 'do not send the times' mode.  

This is also very helpful when a car jumps off its lane and either interferes with another car or jumps off the track and a rerun is called for.  By having the timer 'not send the times' on the second run you can see the first set of times on your computer screen while the times from the 'rerun' are being displayed on the timer.  That way you can decide which lane will 'officially' receive which time for that run.  We have adopted the policy that when a rerun is necessary the cars that made a successful run the first time, and then get another time on the second run, are 'officially' given the better of their two times.

Recently I discovered the Raspberry Pi single board computer.  So, I'm exploring what it  can do.  Who knows .... maybe I'll write a version of Pinewood Master for the Raspberry Pi !

Well, time for me to go get ready for my next Pinewood race.

So that's what I've been doing in Pinewood Derby for the last 25 years.