Potsticker Guru Header Image

James C. Liu's Weblog

All | scifi | setenv | techbiz
[Illustrated Hand Made Potsticker Recipe]
20090416 Thursday April 16, 2009

Cub Scouts - Pinewood Derby with Solaris - It's Possible

I've been meaning to blog about using Solaris for Scouting since February, when I became the primary organizer for group's Pinewood Derby. For folks not familiar with this tradition, it's been going on for years. Basically, it's a contest between various Cub Scouts (Grades 1 - 5) who are supposed to carve a small car out of a block of pine wood, then attach wheels, and then race them on a gravity driven track to see who's got the fastest car.

I'm the Pack Committee Chair for my son's Pack 499 of the Cub Scouts, Polaris District, Santa Clara County Council of the Boy Scouts of America. That's sort of like saying, I'm supposed to be the lead paper-pusher for our band of kids, but being a new pack in our district and trying to reach critical mass means each one of our Parent "Akela" Volunteers needs to take some leadership role. Never having been a boy scout myself during my youth, I had a lot of learn to earn my "Trained" badge which I wear proudly on the left sleeve of my Class A uniform.

Getting back to the Pinewood Derby (PWD for short), I found out that each Pack in a District runs their own derby. Some have their own track, some borrow a track from another pack. The top 3 finishers in each category make it to District races. A small pack might have just one category that is based on fastest finish time. The others might have "Best Looking" or "Best Paint/Finish" and other sub categories and each of these can be submitted to the District. The top finishers at District go on to compete at Council and State levels. Being our first year as a chartered Pack, we were very fortunate to receive a used, 3-lane track with electronic timer from a neighbouring group, the Pack 457. I still owe them a formal plaque and thank you for the gracious ceremony at their February Pack meeting when their Cub Master handed over the timer from their old track to me, as acting Chair and representative of our P499. Because of P457's hard work raising money during the year, they bought a new aluminum track which they debuted this year when they hosted the District races. I only hope in the next few years we can grow to that level of involvement with parents and kids.

pinewood derby

While the PWD is a great event and I applaud all the work everyone puts in to helping their boys carve, sand, finish and tune their cars, the majority of the experience that most of the track hosts have shared amongst themselves, has been with Windows systems hooked up to the timer. That had me a little worried when I took possession of the generously donated track, since I don't personally have a spare Windows machine setting around and I wasn't sure where to source a cheap license. But what a serendipity to find out that the timing mechanism was a stock RS-232 unit that could use a simple tip(1) line configured to 9600,8,n,1 to the /dev/ttya port. Then the times for each lane would simply appear in order after each run.

For our first race, I brought my WiFi capable Shuttle K45 xpc running Opensolaris 2008-11. I have a cheap Atheros 52xx PCI board in the slot which is supported, and I used the local school WiFi which, as PTA webmaster, I have access to. This let me record the data for each race, then cut/paste to OpenOffice, and also sync up remotely to my home server about a 1/2 mile away so I had backup if something broke. I manually set up the heats, ran the races, and applied the standard rules determine the fastest average time to determine the winners. But I think all the kids were winners, and OpenSolaris was a champ.

Connecting and configuring solaris was trivial. I simply connected the RS-232 cable to the timer, edited the /etc/remote file to configure the "hardwire" entry to point to 'ttya' and then ran the "tip hardwire" command. At home, I had no glitches, but at the race, I couldn't see the output from some test races. After thinking for a moment, one of the parents asked me if I needed to "reboot" the computer, after all, that what they do in Windows. Then another parent, suggested we reboot the Timer. And that was the trick. At home, I had tried run the tip command first, then powered up the Timer, and output automatically appeared in the console. But I had reversed that procedure during track setup. A few seconds later, we were up and racing.

It was so painless to run the race, and with just a handful of scouts participating in our new pack, it took only 15 minutes to finish all the heats. But I hope we grow and to scale up the track to handle more kids, I plan to try to write some of my own Java software to help automate the race next year. I want to have the software automatically schedule the races to efficiently get all cars on all tracks run, to automatically grab the scores off the serial port, and to keep running side tabs of the fastest average cars posted. Having a nice GUI might help too. But this would allow the software to be portable on all platforms, even if I'm biased in favour of Solaris.

April 16, 2009 12:30 PM PDT Permalink