Connectors
Purpose
Set up inbound timing hardware and outbound publishing integrations for a meet using the connectors system.
Prerequisites
- Meet created with events and markers configured.
- Timing hardware drivers or network paths accessible from this machine.
- For RunSignUp, FTP, or S3 outbound: global integration credentials set in Settings → Integrations.
What Is a Connector?
A connector is a meet-level integration that defines how data flows between 2Timer and an external system. Each connector can be:
- Inbound only — reads and results flow into 2Timer (e.g., timing hardware).
- Outbound only — results flow out to a publishing target (e.g., FTP or local folder).
- Bidirectional — both directions (e.g., FinishLynx reads come in and PPL/SCH files go out).
Connectors are activated and deactivated with an on/off toggle. Configuration is preserved when a connector is deactivated.
Adding a Connector
- Go to Connectors in the meet navigation.
- Click New Connector.
- Choose from the available presets or start from a blank type.
- Follow the prompt to grant folder access (for file-based connectors) or enter connection details.
- Assign marker IDs to each timing location.
- Toggle the connector Active.
Connector Types
FinishLynx
Use for: Lynx shared-folder workflows where FinishLynx handles track timing and FieldLynx shares field-event files in the same exchange folder.
How it works:
- Inbound: 2Timer watches the Lynx exchange folder and polls for new
.liftrack-result files and.lfffield-result files every 5 seconds. - Outbound: 2Timer writes
lynx.ppl,lynx.sch,fldlynx.sch,lynx.evt, andlynx.aflto the same folder so FinishLynx gets track data and FieldLynx gets field schedule rows and tagged field-event blocks.
Setup:
- Choose the FinishLynx (import + export) preset.
- Grant folder access to the FinishLynx exchange directory (usually
C:\Lynx\or similar). - Assign the Finish marker ID to the FinishLynx timing location.
- Activate the connector.
LIFandLFFfiles appearing in the folder will be processed automatically.
Tips:
- Make sure FinishLynx and FieldLynx are configured with the same event numbers as 2Timer.
- Export the Lynx files before loading operators on race day so the shared folder already contains the latest
PPL/SCH/EVTfiles. lynx.schis track-only.fldlynx.schcarries field schedule rows.- Field events remain in
lynx.evt, tagged with field designators such asLJ1,HJ1,PV1,SP1, and similar codes so FieldLynx can distinguish them. LIFfiles from FinishLynx include bib numbers and names directly; chip mapping is not required for FinishLynx results.
IPICO
Use for: IPICO passive RFID timing systems.
How it works:
- Inbound: 2Timer watches one or more folders (per timing location) for IPICO tag data files.
- Each timing location maps to a marker (start, split, finish).
Setup:
- Choose the IPICO 3-location course preset (or start blank for different configurations).
- Grant folder access to the IPICO output directory.
- Assign each location (Start, Split, Finish) to the correct marker ID.
- Set file patterns (default
*.txtfor IPICO tag data). - Activate the connector.
Tips:
- IPICO outputs one file per reader. Make sure each reader’s output folder is a subdirectory or matches the configured file pattern.
- If you only have a start + finish (no split), delete the split location from the connector config.
- In preview tables, the final two IPICO hex characters are shown as
trailing_hex. 2Timer preserves them for inspection, but does not currently claim a confirmed semantic meaning for that field.
Trident
Use for: Trident TimeMachine filtered log files from DF, UHF, or Hybrid setups.
How it works:
- Inbound: 2Timer watches a single Trident filtered log file and imports new tag records as they are appended.
- Trident records expose a
reader_idandreceiver_id; 2Timer combines them into a timing-point key likeA:3. - Status JSON lines in the same file are ignored for timing reads.
Setup:
- Choose the Trident preset.
- Grant access to the Trident filtered log file.
- Add one or more timing locations and assign each to a marker.
- In Reader IDs, use combined keys like
A:3when possible. - Activate the connector.
Read types:
FS= First SeenBS= Best SeenLS= Last SeenRR= Raw Record
These usually describe different phases of the same tag pass through the read field, not separate crossings.
Tips:
- Use
A:3style keys for the most precise routing. - Leave
Reader IDsblank on a timing location if that location should act as a catch-all. BSis often the best finish candidate, while some start-line setups may preferLS.
MyLaps
Use for: MyLaps Timingsense, BibTag, ChipTag, and ReadLite systems.
How it works:
- Inbound: 2Timer polls a folder for MyLaps timing output files (
.txtor.csvdepending on decoder model). - Supports the current ReadLite/Timingsense CSV format, older legacy fixed-width format, tab-separated, and MyLaps CSV with full headers.
Setup:
- Choose the MyLaps preset.
- Grant folder access to the folder where your MyLaps decoder writes result files.
- Assign the Finish (and Start, if applicable) marker IDs.
- Activate the connector.
Tips:
- Check whether your decoder model outputs CSV or
.txtand configure the file pattern accordingly. - BibTag setups typically output a single file with all reads. ChipTag setups may use one file per mat.
RunSignUp
Use for: Pulling live participant data from RunSignUp-registered races.
Prerequisites: You must first connect your RunSignUp account in Settings → Integrations → RunSignUp.
How it works:
- Registration data (athletes, entries) is pulled from RunSignUp’s API and synced into the meet.
- This is a one-way pull: 2Timer does not write data back to RunSignUp.
Setup:
- In Settings → Integrations, connect RunSignUp via OAuth.
- In the meet, go to Connectors → New Connector and choose RunSignUp.
- Select the race and event to sync.
- Use the Sync button to pull participants on demand, or set an interval for automatic sync.
Tips:
- Sync before race day to pre-load athletes and entries, then sync again on race morning to catch late registrations.
- Athletes pulled from RunSignUp are matched by bib number. Duplicate bibs will raise a warning.
- Custom questions (T-shirt size, emergency contact) are not imported — only timing-relevant fields.
Local Filesystem (Export to Folder)
Use for: Publishing results to a folder on your machine (for display boards, website upload, or other tools).
How it works:
- Outbound: 2Timer writes result files in your chosen format to the specified folder whenever triggered.
- Trigger modes: Manual (click to publish) or Event (auto-publish when results change).
Setup:
- Choose the Export to folder preset.
- Grant folder access to your target publish directory.
- Choose format: CSV, JSON, HTML, XML, or TXT.
- Set trigger mode (manual or event-based with debounce).
- Activate the connector.
FTP / SFTP
Use for: Publishing results to a remote web server or scoring display system via FTP.
Prerequisites: FTP credentials and path configured in Settings → Integrations → FTP.
Setup:
- In Settings → Integrations, add your FTP host, username, password, and base path.
- In the meet, create an outbound connector pointing to the FTP integration.
- Set format and publish trigger.
- Activate and test with a manual publish.
S3 / R2
Use for: Publishing results to an AWS S3 bucket or Cloudflare R2 object store.
Prerequisites: Bucket access keys and bucket name configured in Settings → Integrations → S3.
Setup follows the same pattern as FTP: configure the integration in Settings, then create a meet-level connector pointing to it.
Connector Status Indicators
| Status | Meaning |
|---|---|
| Idle | Connector is active but waiting (normal between polls). |
| Watching | Folder watcher is running, ready to detect new files. |
| Syncing | Currently processing incoming data. |
| Publishing | Writing outbound files or making API calls. |
| Error | Check connector details for the failure message. |
Troubleshooting
| Problem | Check |
|---|---|
| Reads not appearing | Is the connector active? Is the folder path correct? Are file patterns matching the decoder output? |
| Wrong marker assigned | Go to connector locations, reassign marker IDs. |
| Folder access denied | Revoke and re-grant folder permission in the connector settings. |
| PPL not loading in FinishLynx | Confirm the file was exported (use the manual export button or reactivate the connector to trigger a write). |
| RunSignUp sync fails | Check that the integration OAuth token is still valid in Settings. |
| Duplicate reads | Expected behavior — 2Timer deduplicates by hash. Duplicates in the Reads page indicate the same raw line was processed twice; this should not affect results. |
Related Pages
- Offline Access and PWA
- Getting Started
- Markers and Reads
- AI Assistant
- Timing Workflow
- Results and Reports
- Concepts and Workflow Reference
Metadata
- Last Updated: 2026-03-29
- Version: 0.2
- Status: Active
