← Back to 2Timer

2Timer Help

Practical guides for humans, with structure that is easy for AI systems to parse.

Setting Up Each System

Each timing system, registration platform, results destination, and scoreboard has its own settings in its connection: ONETIME, FinishLynx, the chip readers, Time Machine, Race Result, RunSignUp, RaceRoster, Local Files, S3 / R2 (with a Cloudflare R2 walkthrough), FTP, Total Active Sports, DisplayWorks, and Open Meet Display. For adding, starting, and pausing connections, see Systems and Connections.

ONETIME

ONETIME brings live chip reads from a ONETIME decoder over the internet. The form’s ONETIME Timing Source asks for:

  • Device name: the decoder’s name exactly as it is in ONETIME.
  • ONETIME API key: asked for here only when this device has no key saved. It is kept in Settings → Systems (the form’s own note says “Settings → Integrations”; it means Systems).
  • Chip assignment field: Tag (chip ID), or Tag code (legacy mapped tags).
  • First connection replay (minutes) and Replay overlap (seconds): how far back it fetches reads when it first connects or replays.

At the Basic level the form asks only for the device name and key.

ONETIME needs an internet connection. When it drops, the card says Reconnecting to timing… and reconnects by itself; Replay missed reads fetches the reads from while it was down.

ONETIME: reads from a race added later aren’t counted

Where reads go on the ONETIME form says: chip reads from this device count at each race’s finish line, and 2Timer tells the races apart by when each one started. A new ONETIME connection gets one rule per finish marker. With no finish yet, press Add start and finish markers.

A race added after ONETIME was set up gets its rule automatically, in every ONETIME connection whose rules you haven’t changed. Once you edit the rules by hand, races added later aren’t routed, so their reads don’t count: a notice on Edit Connection names each race no rule covers. Add a rule for it under Read Routing, with that race’s finish as the Marker.

FinishLynx

FinishLynx is a shared-folder connection that receives results and sends files. See FinishLynx for Track and Field for race-day use.

  • Shared Lynx Folder: the Shared folder FinishLynx uses, and the Meet subfolder inside it.
  • Watch for files: Track results (LIF) and Field results (LFF). Only the ticked kinds are imported.
  • Files to generate: Athletes (PPL), Teams (AFL), Schedule (SCH), and Entries (EVT).

PPL and EVT use each athlete’s bib as the Lynx ID; an athlete with no bib doesn’t stop the export. Results that don’t match an entry safely are held for review instead of guessed.

FlashTiming (FT-FAT) and Eagle Eye use this same connection under their own names. See FlashTiming, Eagle Eye, and Other Lynx Timing Systems.

Folder-based chip readers: IPICO, MyLaps, ChronoTrack, Generic RFID

These read the files your reader software saves in a folder. In the Timing Folder section:

  • Directory: the folder, chosen with your browser’s folder picker (allow access when asked).
  • Subdirectory: optional, a folder inside it.
  • File patterns: which files to read: *.txt for IPICO and Generic RFID, *.txt, *.csv for MyLaps and ChronoTrack to start with.

Then add Read Routing rules for the markers. Use Generic RFID only for a reader with no entry of its own, and check its reads with care.

ChronoTrack

ChronoTrack reads SimpleClient’s Auto Save files (CT01_13 rows) from a folder. Set the Timing date, because the files carry only the time of day, and route each Point Name, such as start and finish, to a marker. ChronoTrack’s socket streaming and ChronoTrack Live aren’t part of this connection.

Trident and Feibot

Trident reads Trident’s filtered log, and Feibot reads a Feibot Workbench CSV export, as each file grows. Instead of a folder, choose the file: Trident log file or Feibot CSV file. Reader IDs for Trident are reader and port, such as A:3.

Time Machine

Time Machine takes finish times from a Time Machine timer over a serial cable (the modular-to-DB9 cable and a USB-to-RS232 adapter), in desktop Chrome or Edge. It captures first, and you apply the times after review: the times arrive in order with no bib numbers, and Review finish order on Reads matches them to the chute’s bib order. See Markers and Reads. In a track meet, lap and finish records are matched to each heat’s lanes.

  1. Create the connection. The new form warns that this is a safe hardware test: nothing changes results until you review.
  2. Open it again with Edit. Under Time Machine Serial Connection, set Baud rate, Data bits, Parity, and Flow control to match the timer.
  3. Press Choose Serial Adapter and pick the USB adapter. It is off until the connection is saved.
  4. Start it with Start Time Machine. Capture Preview shows what arrived.

Time Machine is offered for every sport.

Race Result

Race Result pulls results from a RACE RESULT 14 server on your local network:

  • RR14 Server: Protocol, IP address or host, and Port.
  • Result Source: Local API path, Event identifier, Result source name, and Source format.
  • 2Timer Target: the 2Timer event the results go to.

Request Preview shows what the server returns.

RunSignUp

A RunSignUp connection keeps the meet’s athletes in step with your RunSignUp race. Sign in first in Settings → Systems (Sign in to RunSignUp). The form has:

  1. RunSignUp Account: whether you’re signed in, with Open Settings → Systems if not.
  2. Race: Load my RunSignUp races, then pick the RunSignUp race.
  3. Event Mapping: which RunSignUp event matches which race in the meet, and the Result set ID (for pushes) for sending results back.

It pulls when you press Pull now, unless you switch it to a Timed check. Sending results back to RunSignUp is the connection’s push direction (Push files), off to start. For a one-time import of a RunSignUp CSV file instead, see Importing Data.

RaceRoster

A RaceRoster connection pulls participants from a RaceRoster event. Save your RaceRoster API details in Settings → Systems first; until then RaceRoster shows Needs a sign-in. The form has RaceRoster Account, RaceRoster Event (Load my RaceRoster events), and Sub-event Mapping. It pulls when you press Pull now.

Local Files

Local Files writes results into a folder on this computer:

  • Output folder: the folder, chosen with your browser’s folder picker.
  • Meet folder (for the live results site) or Subfolder (for a single report).
  • File name: for a single report only.

A new Local Files connection publishes when results change, 10 seconds after the last change. To publish only when you press Send results now, set its Push mode to Manual on Edit Connection.

What to publish: Live Results Site or Single Report

Local Files, S3 / R2, and FTP each publish one of:

  • Live Results Site (to start with): a whole results website for the meet, kept up to date.
  • Single Report: one file, with Report to publish and Output Format.

Filters limit what goes out: Results to Send (All or Official) and Events to Send (All, Track, or Field).

S3 / R2

S3 / R2 publishes results to your own storage bucket, such as Cloudflare R2. Save the bucket in Settings → Systems → S3 / R2 first, then add S3 / R2 under Results on the meet’s Connections page.

  • In the meet’s form, Meet folder (live results site) or Bucket folder (single report), and File name.
  • In Settings → Systems, under Live Results, the optional Meet list folder is the folder all your organization’s meets are published under, such as live. Each meet then picks its own folder inside it, such as live/2026/county-championship, and the list of meets is kept in the top folder. Public address is where that folder is served to the public.

Send files is Direct from this device to start with: results and the storage secret go only between this device and your storage. Through 2Timer compatibility service is a fallback for storage that can’t allow direct browser access; that destination then needs 2Timer reachable, and its publishes wait and retry when it isn’t, without stopping timing or other destinations. 2Timer never switches a direct destination to the service by itself.

Set up a Cloudflare R2 bucket for live results

In Settings → Systems → S3 / R2, choose Cloudflare R2 and leave Send files on Direct from this device. The Cloudflare R2 setup walkthrough opens with these steps:

  1. In Cloudflare, open Storage & databases → R2, create a bucket, and keep its name.
  2. From R2, open Manage API tokens. Create a token with Object Read & Write, restricted to that bucket. Copy the Access Key ID and Secret Access Key; Cloudflare doesn’t show the secret again.
  3. Open the bucket’s Settings → CORS Policy, choose the JSON editor, paste the policy from Copy CORS policy, and save. Copy it from the 2Timer you’ll publish from, because it contains that address.
  4. For a first check, the bucket’s Public Development URL works, but it makes the bucket public and r2.dev is rate-limited and for development. For a meet, use Custom Domains → Add, with a domain in the same Cloudflare account.
  5. Back in 2Timer, enter the account ID, bucket name, Access Key ID, and Secret Access Key. Press Save, then Test the bucket (the walkthrough calls it Test connection).

Cloudflare R2: Test the bucket fails

Test the bucket writes a temporary file, reads it back, replaces it, and removes it, so a pass proves the bucket really works for publishing.

  • Just changed the CORS policy? Wait about 30 seconds and test again.
  • The bucket already served files through a custom domain? Purge that domain’s cache after changing CORS, so old responses get the new headers.
  • Check that the token is Object Read & Write on this bucket, and that the CORS policy is the one 2Timer shows.

FTP

FTP uploads results to your web server. Save the server in Settings → Systems → FTP first: Host, Port, Username, Password, and an optional Base remote path. Test the server checks it. Then add FTP under Results on the meet’s Connections page, with its Remote folder and File name.

FTP always goes through 2Timer’s service, so it needs internet, even for a server on your own network. 2Timer publishes over plain FTP only. FTP details saved with SFTP or FTPS by an earlier version show Needs plain FTP: press Remove saved details in the FTP row and save the server’s details again.

Total Active Sports

Total Active Sports sends road race results to your event on Total Active Sports. Save your key in Settings → Systems with Save key; until then it shows Needs a key. The form has:

  • Remote Event: Event ID mode, either Use existing TAS event ID (with the TAS event ID) or Create a new TAS event from this meet.
  • Publish Scope: Push the whole meet or Push only selected events.

Each push replaces the results on Total Active Sports. It sends when you press Push now.

DisplayWorks

DisplayWorks sends results to a DisplayWorks scoreboard or video board over your local network. 2Timer sends, and DisplayWorks receives. DisplayWorks boards show results only for now; start lists, team scores, and announcements will come when DisplayWorks can show them.

  • Receiver: the DisplayWorks IP address and Port, or a Receiver URL, and the Display target.
  • Board output: Name shown on board, Rows per page, When there are more rows than fit (Show only the top rows or Cycle through all rows), and Seconds per page.

What goes to a board, and when, is driven from the meet’s Scoreboard page. See Scoreboard.

Open Meet Display

Open Meet Display sends start lists, results, team scores, and announcements to any scoreboard, video board, or stream graphics program that accepts Open Meet Display, on this computer or your local network. Use it when the board’s maker says their program accepts Open Meet Display.

  • System: Open Meet Display or DisplayWorks. Changing it changes which screens the board gets, and nothing else you set.
  • Receiver: the Receiver IP address, Port (43339 to start), and Path (/omd to start) from the board program’s setup guide, and the Display target.
  • Screens to send: Start lists, Results, Team scores, and Announcements, all on to start. At least one stays on, and Clear board always works. Without Results the board can’t auto-follow.
  • Board output: as for DisplayWorks, except Name shown on board starts at First name + last name.

Take over publishing from the other device?

When you press Send results now for a live results site, and another device has already published newer results to the same folder or bucket, 2Timer asks Take over publishing from the other device? Choose Take over publishing to carry on from this device, or Cancel.

Automatic publishing never takes over on its own: it stops with “Publishing is paused until you take over.” Use this when you move a meet to another laptop mid-meet. Make sure the old device has stopped publishing first.

Results aren’t reaching the website, folder, or bucket

  1. Is the connection running, or is it Manual? A Manual destination sends only when you press Send results now (or Push now) in the card’s Actions.
  2. Is Push files on in Edit Connection?
  3. Does the card show an error? Follow its “Try this:” advice. For S3 / R2 run Test the bucket, and for FTP Test the server, in Settings → Systems.
  4. Is Results to Send set to Official? Then only official results go out.
  5. Does the card say publishing is paused until you take over? See Take over publishing from the other device?

FinishLynx isn’t getting the start lists, or results aren’t coming back

  • Check the Shared folder and Meet subfolder are the folder FinishLynx uses.
  • Check Files to generate and Watch for files.
  • Check that event numbers match between 2Timer and Lynx.
  • Look for held results: the card says “N import results need review”.

RunSignUp won’t load races or sync

  • Check that you’re signed in: Settings → Systems → RunSignUp → Test sign-in.
  • Check the Race chosen on the connection, and its Event Mapping.
  • RunSignUp needs internet.

Metadata

  • Last Updated: 2026-10-15
  • Document Version: 1.1
  • Status: Active