A PocketC LapTimer / Stopwatch
Translate pages to: French, German, Italian, Japanese, Korean, Chinese, Portuguese, or Spanish (via the Babelfish at AltaVista)

A PocketC LapTimer: A Pocket-C Based Laptimer (Stopwatch) for PalmOS machines and WinCE machines

Palm OS v 1.30 (June/1/2003)

Introduction

Laptimer that runs on Palm OS machines. It has been written with PocketC of (www.orbworks.com).
It is of very simple use. It features, big digits, screen triggering and remote control (with Infrared Beacon, Magnetic Switch or Manual Button triggering), Lap Time Log file downloadable to your PC. It works under all existing Palm Os, including the old Palm Pilot Pro machines. It has been tested on 4 stroke and on 2 stroke engine vehicles. It has been on purpose written with not up to date versions of PocketC, in order to allow this software to run also on ancient Palm Pilot machines.

Feature List

History

V1.30 Palm OS June/1/2003:
Unlimited Number of Split Times (Actually limited to 4.3 billions=2^32).

V1.20 Palm OS Oct/10/2002:
Unlimited Number of laps (Actually limited to 4.3 billions=2^32).
Infrared switch has been tested.

V1.10 Palm OS 12/19/2001:
The autotime off is no longer automatically set to 100 minutes.
A no back ground version has been added.
Magnetic switch has been tested.

V1.00 Palm OS, 12/4/2000 :
Initial Release.


Pre-release History:
My first version of this software was triggered by Sersend(a). That allowed to use a conventional Palm Pilot Serial Cable. Unfortunately I have found out that the EMI interference produced especially by two stroke engines were so strong to occasionally switch off the Palm Pilot. It has been therefore necessary to have the Palm Pilot to be waken up on the event of time triggering. That happens with the command wait()+Hookhard() and triggering with the Hotsync button.
Details:
I am useing the picture of a pocket bike as wallpaper for this software, because I have thought that a Pocket PC machine running on PocketC would have look good with a picture of a Pocket Bike.

Files

For Users: PoCLaTi13users.zip:
Download here PoCLaTi13users.zip

PoCLaTi13.prc___________PocketC Laptimer v.1.30 (.prc style)
PoCLaTi13noba.prc_______NO BACKGROUND PocketC Laptimer v.1.30 (.prc style)
PoCLaTi13noba.pdb_______PocketC Laptimer v.1.30 (.pdb style), basically it has no icon
PocketC.prc_____________PocketC palm OS runtime application v.3.7rt
PoCLaTi13Readme.txt_____This file
PoCrtReadme.txt_________Read me of PocketC Palm OS runtime v.3.7rt
PktCSysLib.lib__________Library PktCSysLib.lib
PktCSysLibReadme.html___Readme for Library PktCSysLib.lib
PktCSysLib.prc__________.prc file for Library PktCSysLib.lib


For Developers: PoCLaTi13developers.zip:
Download here PoCLaTi13developers.zip

PoCLaTi13.prc___________PocketC Laptimer v.1.30 (.prc style)
PoCLaTi13.pc____________Source for PocketC Laptimer v.1.30 (.prc style)
PoCLaTi13noba.prc_______NO BACKGROUND PocketC Laptimer v.1.30 (.prc style)
PoCLaTi13noba.pc________Source for NO BACKGROUND PocketC Laptimer v.1.30 (.prc style)
PoCLaTi13noba.pdb_______PocketC Laptimer v.1.30 (.pdb style), basically it has no icon
PocketC.prc_____________PocketC palm OS runtime application v.3.7rt
PoCLaTi13Readme.txt_____This file
PoCrtReadme.txt_________Read me of PocketC Palm OS runtime v.3.7rt
pocketbiks.bmp__________small icon for PoCLaTi13.pc compileing
pocketbikl.bmp__________large icon for PoCLaTi13.pc compileing
Palmconnector.txt_______Info on the Palm connector
PktCSysLib.lib__________Library PktCSysLib.lib
PktCSysLibReadme.html___Readme for Library PktCSysLib.lib
PktCSysLib.prc__________.prc file for Library PktCSysLib.lib

skinsanddigits.zip:
skinsanddigits.zip: contains the .bmp and .txt files to build digits and skins for PocketC Laptimer developing

File Installation

Using your favorite PalmPilot program, install :
(from PoCLaTi13users.zip)
PocketC.prc
PktCSysLib.prc
PoCLaTi13.prc
(optional PoClaTi13noba.pdb , if you prefere the non icon version)
(optional PoClaTi13noba.prc , if you prefere it without background)

Additionally, if you want modify this software you will need:
files from PoCLaTi13developers.zip
PocketC for palm OS full version

It is possible to download the full version of PocketC at: OrbWorks

Operation

For screen triggering:
start up either PoCLaTi13.prc or PoCLaTi13.pdb. Select the number of split times with the scroll up and down key. When done, touch the screen and begin chronographing by touching the screen or any key button when ever you want to measure a laptime. This data will be saved at the indicated memo file.

For Hotsync button triggering:
In the Prefs menu set the Hotsync Button to call PocketC. Connect to your Palm Pilot a button switch that connects to the Hotsync Pins of your Palm connector. Start up either PoCLaTi13.prc or PoCLaTi13.pdb. Select the number of split times with the scroll up and down key. When done, touch the screen and begin chronographing by touching the screen or any key button when ever you want to measure a laptime. This data will be saved at the indicated memo file.

For Hotsync Magnetic Switch triggering:
Attention! for this triggering the track need to be equipped with Alfano or Alfano compatible Magnetic Band. See http://www.alfano.be for reference. In the Prefs menu set the Hotsync Button to call PocketC. Connect to your Palm Pilot a Magnetic Reed switch that connects to the Hotsync Pins of your Palm connector. Set the magnetic reed switch as close as possible to the ground in your vehicle, and keep it away from magnetic shields. Start up either PoCLaTi13.prc or PoCLaTi13.pdb. Select the number of split times with the scroll up and down key. When done, touch the screen and begin chronographing. The Laptimer will automatically trigger whenever you cross the magnetic band. The data will be saved at the indicated memo file.. This data will be saved at the indicated memo file. This technique can be used only on tracks equipped with a magnetic band. The magnetic band technology for chronographing has been invented and commercialized by Alfano S.A (http://www.alfano.be).
I have available some cables ready with a magnetic Reed switch , or with a connector to plug into the Alfano magnetic sensor.
These cables are available from me:
see below.
You can buy the Alfano magnetic sensor at:
http://www.alfano.be


For Hotsync Infrared Beacon triggering (Beta version):
For Hotsync Infrared Beacon triggering (Beta version): Attention! for this triggering the track need to be equipped with Alfano or Alfano compatible IR-Beacon. My-Chron beacon is compatible with the Alfano one. See http://www.alfano.be for reference.
So far the IR triggering that I have works by connecting an Alfano IR receiver to the Palm Hotsync port.
In the Prefs menu set the Hotsync Button to call PocketC. Connect to your Palm Pilot the Alfano IR Receiver. To do this use a dedicated cable available below. Set the IR receiver according to Alfano instructions. Start up either PoCLaTi13.prc or PoCLaTi13.pdb. Select the number of split times with the scroll up and down key. When done, touch the screen and begin chronographing. The Laptimer will automatically trigger whenever you cross the IR Beacon Band. The Alfano IR receiver works with several IR beacons among them also the AIM MY-Chron beacon. Your track might already be equipped with such a beacon. The data will be saved at the indicated memo file. I have available some cables ready to connect the Alfano IR receiver to a Palm Pilot.
These cables are available from me:
see below.
You can buy the Alfano IR receiver at:
http://www.alfano.be


The following pictures will further explain how to operate this software:









System Hardware

The following two pictures are some examples of on vehicle use of the Palm computer for Lap Timing:




Cases:

During On Vehicle use, I have been putting my PDA machine into one of these boxes:





Buy them here


Hotsync Laptimer Cables & Switches:

Buy them from me. Built to order. 4 models available.
Just e-mail me and indicate the cable that you want and the Palm that you have. I will e-mail you back for charges , payment and delivery instructions.
If , for any reasons, you will be unhappy with your Hotsync Laptimer Cable, contact me again to arrange the return of the item. A restocking fee of 20% will be applied.

Cables can be build for these Palm models:
Palm 1000, 5000, Personal, Professional, III, IIIx, IIIe, IIIxe, VII, VIIx, m100 & m105, IIIc , V & Vx.
For all the other model, ask. Maybe it is feasible.


Cable with Manual Switch for Palm(Pro,III,V,m); $25 US Free Shipping Worldwide.
SOLD OUT!


Cable with TNC for Palm(Pro,III,V,m),
plugs into the Alfano magnetic sensor; $25 US Free Shipping Worldwide.
SOLD OUT!


Cable with Magnetic Switch for Palm(Pro,III,V,m),
$25 US Free Shipping Worldwide.
2 left for Palm m100/105.



Cable with TNC for Palm(Pro,III,V,m),
plugs into the Alfano Infrared Receiver. Beta Version; Build Your Own. Instructions Below!


Buy the Alfano Magnetic Sensor or Infrared Receiver here:


Palm Computers:

It is possible to buy cost effectively Palm Pilots or PocketPC machines and their Serial Cables at any Internet Auction. Here a link for some of them: Ebay.com , Yahoo Auctions US , Yahoo Auctions Japan

The Palm Connector:
The LapTimer can be triggered remotely thru the Hotsync button. The 2 hotsync pins of the Palm connector are not linked to the SD9 serial connector. Therefore it is necessary to modify an exixting Hotsync cable to enable it to trigger remotely the laptimer. It would also be possible to build on purpose a cable to link the Palm machine to a button. Unfortunately , Palm Inc., basically forbid the sale of the connector as an electronic component in order to maintain a large profit on the sales of the hotsync cables.
I am trying to find a source of the Palm Pilot connector in order to build a remote Hotsync button for the right price. So far what I have been doing has been modifying existing Palm Pilot serial cables. These three links can help for custom building of modifyed Hotsync cables:
Syncable Solutions (Palm Cables en Vrac)
Gethightech.com (Palm Spare parts)
Pacific Neo-Tek(They have the E-Z Syncable)
Robert's Gadgets Gizmos (A potential other source of Palm connectors)

It follows a description of the cradle pinout for help in case of custom modifying of the Palm Pilot Serial Cable.

Palm HotSync(tm) Cradle Pinout

Pinout (left to right, facing the front of the cradle) seems to be:

cradle  cable           Palm/PalmPilot
------  -----           -----
pin 1   DE9.6, DB25.6   Palm DTR (GPIO output) -> PC DSR
pin 2   N/C             +3.3V on PalmPilot and Palm III handheld
                        (current limited by 330 Ohm series resistor.)
                        not connected on PalmPilot cradle
        (+4.1V)         (or +4.07V measured on my Palm V cradle)
pin 3   DE9.3, DB25.2   Palm RxD <- PC TxD
pin 4   DE9.8, DB25.5   Palm RTS -> PC CTS
pin 5   DE9.2, DB25.3   Palm Txd -> PC RxD
pin 6   DE9.7, DB25.4   Palm CTS <- PC RTS
pin 7   N/C             GPIO input pin for detecting hotsync, contacts
                        with pin 2 when the hotsync button is pressed.
pin 8   N/C             GPIO (input only, not connected in cable)
        (+5.5V)         (or around +5.5 on Palm V cradle only)
pin 9   N/C             N/C  (spare?)
pin 10  DE9.5, DB25.7   Signal Ground

N/C     DE9.4, DB25.20  (PC DTR not connected to Palm)
N/C     DE9.1, DB25.8   (PC DCD unconnected to Palm)

(Cradle uses single sided gold PCB edge connector with 2mm contact spacing.)

Additional Info at 3Com/Palm's Hardware Development page.


Build Your Own IR Trigger Cable:
The best technique that I have found to trigger the Palm with an IR beacon is to piggy back on the Alfano IR receiver. Then I have build an interface cable that links the Palm to the Alfano IR receiver. You can build your own reading the instructions below.

(The following info is applicable to Palm III, IIIx, VII, Pro, M100, M105, etc...TBD)
(1K, 5K, Pers, Pro, III, IIIx, IIIe, IIIxe, VII & VIIx)
(Palm V, Vx, etc...TBD)(IIIc, ....

Infrared Switch Alfano:
An external 3V power supply is required  (connected between Pin 10 and Center wire of the Alfano IR receiver). 
This 3V source is required to keep the Alfano IR receiver awake.
Testing has been done with the Palm supplying 3V from pin 2 but
 that failed at EMI testing.
The Alfano IR Receiver is connected to the hotsync pin
thru a TNC male connector. 
A 4.7microF(TBD with a 2.2uF or 5uF) Polarized capacitor is 
connected between pin 7 and and the center wire of the Alfano
 IR receiver.
Without the capacitor the impulse coming out of the Alfano 
IR receiver would be too short to 
be noticed by the Palm.

A cable is built. This cable connects Palm Pin 10 to the ground of the 3V power supply.
The positive of the 3V goes to the center pin of the Alfano IR receiver.

The Outside of the alfano IR receiver goes to Pin 7.
 Between Center pin and outside pin of the Alfano IR receiver there is the 4.7 uF capacitor.
 The plus is to the center (male pin of the TNC).
 Pin 7 is connected the shield side of the TNC.

Between the TNC connector and the Capacitor
 there is a Switch to cut off the power supply to the IR receiver when the IR receiver is not used.
 This is due to the fact that it has been noticed
 that this connection to the palm drain to much current out of the 3V litium battery (CR2032)
 that there is inside the Alfano IR receiver. 
Switching off allows for decent lasting times. Otherwise that battery would last only 6 hours (one day).
In case of no switch the user has to keep in mind 
to disconect the IR receiver frequently.
The positive side of the polarized capacitor goes to the male of the TNC.
The Negative goes to the shield. 
The Alfano IR receiver is pulled out of sleep mode
 when its female TNC pin goes at 3V.
When crossing the IR beacon band the center pin of the TNC pulls up pin 7.
Identified good TNC connetor is:
Radioshak part no. = 278-133
Polarized 4.7 uF 25V Capacitor: Digikey P812-ND
Potting Box: TBD
Switch: TBD
Battery: CR2032 3V litium, same as inside the IR receiver.
Battery holder: Radio Shack, 270-430
Potting Material: Epoxy Resin dyed red or black (Polyester resin to be evaluated)
TNC goes into RG58 coax cable.
Palm Connector is open and modified to connect to pin 10 and 7 , normally pin 7 is disconnected.
The Infrared Beacons are the ones accepted by the Alfano sensor (AIM, Lapcom, ...)

A buddy did an an other version of this IR to Palm interface. This following picture explain how:

System Weights

Palm Pilot = 170 g (with batteries)
Palm III = 170 g (with batteries)
Palm Hotsysnc Cable = TBD
Sub D 9 connector and button = 40 g
Otter box 2000 series = TBD g

Limitations

When used on vehicles, powered by single cylinder 2 stroke engines, it has been noticed that the local EMI produced by these engines are capable of shutting off a Palm Pilot. Especially the early models (Palm Pilot Pro). This software doesn't need to operate with the Palm powered up. It simply will be turned on by the next time trggering operation, and it will be , randomly , shut off by the engine EMI. Testing on 4 stroke engines had no problems.
The time display doesn't flow with the time. It simply displays the last measured laptime and the current best laptime.

Known Bugs

Wake up from sleep mode will always measure 3 minutes.
One user run into a loading problem with the no icon version of the code. Basically it was not recognized by the Palm install software (v 4.0.1). He was installing to a Palm Pro (OS v 2.5.1).

Future Developments

I plan to build my own Infra Red receiver, currently it just uses the Alfano one.
I need to improve the "Laptime Logfile" format. Several people complained of the poor format. Kind of putting one time per row.
I plan to build a version of the code that allows the Palm to be operated without touching the screen. This is because there are several Palm Pilots still working but with a broken screen.
I might allow for multiple simultaneous chronographing.....
I plan ,in a far future , to do add some data acquisition features.
I might add the possibility to rotate 90 degrees the screen of the laptimer, for horizontal use.
Add colors to the display and exploit the latest TFT/LCD color capabilities.
I plan to build a Cell Phone version of this code. Cell Phones are taking over the PDAs.

Legal Stuff

For right now go see: GNU General Public License
*.

Special Thanks

Special thanks to Alien Bill PocketC Page, because of BMP2Hex (for Windows).
Special thanks to Jolly Roger ,screen capture software.
Special thanks to 1.Badischer Pocket Bike Club e.V. .I took a picture from their website.
Special thanks to Alfano S.A .I am using some of their hardware. I like magnetic triggering.

Contact Information

Please direct any bugs, suggestions, or feedback to gganio.geo@yahoo.com.


This site is a member of WebRing. To browse visit here.


Web site featured at: