SidewaysDataSidewaysData

Overview Internal Link

Professional live timing that works anywhere, even without internet.

The SidewaysData desktop app handles everything from recording times to publishing results, whether you're at a well-connected venue or in the middle of nowhere.

The system has a GUI to be user-friendly, but can be almost completely controlled via keyboard shortcuts for power users that get familiar with the system. This way we get the best of both worlds - easy for new people to sit down and do timing - but also quick for people that know what they're doing.

Why Use SidewaysData Timing?

  • When you collect registration fees through SidewaysData, live timing is included at no extra cost.
  • No internet in the timing tent? No problem. Record times locally and sync when you reconnect. Your event never stops because of connectivity issues.
  • Spectators follow along on their phones. Competitors check their standings between runs. Results update automatically as times come in.
  • Connect FarmTek, MicroGate, Race America, JA Circuits timers, or use the mobile app—times flow directly into your results.

What's Included

  • Full-featured timing for Windows, Mac, and Linux
  • Data saved locally and in the cloud simultaneously. Every timing and registration change is audited on logs on the machine and on the server.
  • Professional timing systems connect via serial port / USB
  • Host live results on your local network
  • Edit competitors, add walk-ups, manage classes
  • Automatic standings with PAX/index support
  • Scan drivers into the queue instantly using the QR code system
  • Download entries, times, and results as CSV

How It Works

  1. Download the app from sidewaysdata.com/download
  2. Log in with your SidewaysData account
  3. Select your event to download entries
  4. Record times manually or with connected hardware
  5. Results sync automatically when online

Your data is always saved in three places: locally on your timing computer, on our servers, and accessible to spectators in real-time.

Downloading the App Internal Link

Visit sidewaysdata.com/download to get the latest version for your operating system.

Windows

  1. Download the Windows installer (.exe)
  2. Run the installer and follow the prompts
  3. Launch SidewaysData from the Start menu or desktop shortcut

Mac

  1. Download the Mac application (.dmg)
  2. Open the disk image
  3. Drag SidewaysData to your Applications folder
  4. Launch from Applications or Spotlight

Linux

  1. Download the Linux package (.AppImage or .deb)
  2. For AppImage: Make executable and run directly
  3. For .deb: Install with your package manager
  4. Launch from your application menu

Administrator Permissions

If you plan to connect timing hardware via serial port, you may need administrator permissions:

Windows: Right-click the app and select "Run as administrator" the first time you connect hardware.

Mac: Grant permission when prompted by the system security dialog.

Linux: Add your user to the dialout group for serial port access:

sudo usermod -a -G dialout $USER

Then log out and back in for the change to take effect.

Updates

The app checks for updates automatically. When a new version is available, you'll see a notification with the option to download and install.


Logging In Internal Link

The app uses device code authentication, similar to how streaming services authenticate.

When you start the application you'll be prompted for a device code and give a link to create one. Simply visit the link on a computer that you're logged into your Sideways account on, create a device, and paste the code back into the app.

This method keeps your password secure and works even if the timing computer has limited internet access.

Selecting Your Event

After logging in, you'll see a list of events you organize:

  1. Click on the event you want to time
  2. The app downloads the latest entries and any existing times
  3. You're ready to start timing

The event selector shows upcoming events first, with recent past events below.

Multiple Events

Need to time multiple events simultaneously? Open additional windows:

  1. Go to File > New Window (or use the keyboard shortcut)
  2. Select a different event in the new window
  3. Each window operates independently

This is useful for multi-day venues or concurrent events at different locations.

Switching Events

To switch to a different event:

  1. Click the event name in the header
  2. Select a new event from the list
  3. The app loads the new event's data

Any unsaved changes sync before switching, and your work on the previous event is preserved.

Offline Mode

If you lose internet connection after logging in, the app continues working normally. Your login session remains valid, and you can keep timing. Changes sync automatically when connectivity returns.

Entries Tab Internal Link

The Entries tab shows everyone registered for your event. Review competitor information, make corrections, add walk-up entries, and see at a glance who's ready to run.

Managing Entries

The Entries table displays all registered competitors with key information:

  • Number - Vehicle/competition number
  • Name - Competitor name
  • Class - Competition class assignment
  • Vehicle - Car make, model, year
  • Custom attributes - Any additional fields you've configured

Click column headers to sort by that field. Click again to reverse the sort order.

Editing Entries

Click EDIT on the right of a row to edit an entry. You can change numbers, classes, vehicles, and so on.

Changes save immediately and sync to the cloud when you're online.

Custom Attribute Columns

If your event uses custom registration fields (like region, sponsor, or skill level), these appear as additional columns.

Filtering and Searching

Use the search box to quickly find specific entries by name, number, or vehicle. The filter updates as you type.

Adding Entries Internal Link

Add competitors directly in the timing app for walk-up registrations, last-minute entries, or anyone who didn't register online.

Quick Entry Selection & Auto Complete

If a competitor has registered for one of your events before, you have access to them in autocomplete. When they walk up and they tell you start entering their name, it'll suggest past competitors. You can simply select a competitor, and it'll autofill out their last class and registration number.

Creating New Vehicles

If the competitor has used SidewaysData before, you can link to their existing vehicle record. Otherwise, the entry creates a new vehicle in the system that they can reuse at future events.

Handling Missing Classes

If a competitor needs a class that doesn't exist you can create custom classes via the Tools menu.

Duplicate Numbers

The app prevents duplicate vehicle numbers within an event for the same class. If you try to assign a number that's already taken you'll get a warning, but it won't prevent you from using the number twice if you really want. The results will still work fine.

Syncing Walk-Up Entries

Entries added in the app sync to the cloud automatically. They'll appear:

  • In the online registration list
  • In spectator results views
  • In any other timing app instances for your event

Payment Tracking

Walk-up entries added in the app don't go through online payment. Track cash payments using your preferred method—the entry is fully functional for timing regardless of payment status.

Times Tab Internal Link

The Times view is your primary workspace during live timing. From here you can record runs, track who's on course, and see times as they happen.

Times Table

Each row represents a single run attempt. Columns include:

  • Run # - Sequential run number for the day
  • Number - Vehicle/competition number
  • Name - Competitor's name
  • Class - Competition class
  • Start - Start trigger time
  • Finish - Finish trigger time
  • Time - Calculated run time
  • Penalty - Any penalties assigned (cones, DNF, etc.)

Recording Times

Times can enter the system several ways:

  • Automatic - From connected timing hardware
  • Manual entry - Type times directly
  • QR scan - Competitor scans their code to queue up

Auto-Scroll

During live timing, enable auto-scroll to keep the most recent runs visible. The table automatically scrolls as new times come in, so you always see the latest action.

Toggle auto-scroll on or off depending on whether you need to review history or watch live.

Day & Segment Filtering

For multi-day events, filter the Times view by day or segment:

  • All Days - See every run recorded
  • Day 1, Day 2, etc. - Focus on a specific day's times

This keeps the view manageable and helps when reviewing or correcting times from a particular session.

Penalty Assignment

Most penalties are cones. Each row has a Cone + or - button to do this. The system can be configured to prompt for gate for each cone, if desired. You can also hit Edit in the penalties column

Editing Times

Made a mistake? Click on any time value to edit it. Changes save immediately and results recalculate automatically. All changes can be audited and the history can be viewed for any run or entry.

Manual Timing Internal Link

No timing hardware? No problem. Enter times manually using your keyboard for full functionality without any special equipment.

Note that SidewaysData also sells wireless, wired, pneumatic, and infrared timing hardware.

Entering Times

To record a run manually:

  1. Enter the vehicle number
  2. Type the run time (e.g., 45.123)
  3. Press Enter to record

The time appears in the table and results update immediately.

Time Format

Enter times in seconds with decimal places:

  • 45.123 - 45 seconds, 123 milliseconds
  • 65.5 - 65.5 seconds (1:05.500)
  • 123.456 - 123.456 seconds (2:03.456)

The app accepts various formats and normalizes them automatically.

Manual Start/Finish Triggers

For events where you need to track start and finish separately:

  • Start Button - Records when a competitor begins their run
  • Finish Button - Records when they cross the finish line

The app calculates the run time automatically from start to finish.

Undo Buttons

Made a mistake? Use the undo controls:

  • Undo Last Start - Removes the most recent start trigger
  • Undo Last Finish - Removes the most recent finish trigger
  • Undo Last Time - Removes the most recent complete run

This is faster than finding and deleting entries manually.

Editing Existing Times

Click any time in the table to edit it:

  1. Click the time cell
  2. Enter the corrected value
  3. Press Enter or click away to save

Results recalculate automatically with the corrected time.

When to Use Manual Timing

Manual entry works great for:

  • Small events without timing hardware
  • Backup when hardware fails
  • Test sessions and practice runs
  • Events with unofficial timing

Combining with Hardware

You can mix manual and automatic timing. If hardware misses a run or gives a bad read, enter the time manually. The system doesn't care how times arrive, they all work the same.

Automatic Timing Internal Link

Connect professional timing hardware for automated time capture. The app supports popular systems from FarmTek, MicroGate, Race America, and more.

Connecting Your Device

  1. Connect your timing hardware via serial port (USB adapter if needed)
  2. Open Settings > Timing Hardware
  3. Select your device type from the dropdown
  4. Choose the correct serial port
  5. Click Connect

How It Works

When connected, your timing hardware sends events to the app. Some timers support separate start and finish events, in which case in the Times view you'll see when a car is STARTED or has a time. If it's a timer like JACircuits that just sends the list of times, you'll just see the time pop in and no separate START indication.

Queue and Auto-Populate

Set up the queue to automatically assign times to the correct competitors:

  1. Enter vehicle numbers in the queue (or scan QR codes)
  2. When a start trigger fires, the next queued number starts their run
  3. When a finish trigger fires, the run completes with the calculated time

This keeps timing flowing smoothly without manual number entry for each run. You can queue up as many cars as you want if you know the grid order and then just let things run.

Cars on Course

The app tracks how many competitors are currently on course between start and finish. This helps with multiple cars running simultaneously or checking for timing equipment issues.

Handling Accidental Triggers

You can set the system to ignore accidental starts/stops when someone walks across the timing line by setting up Debounce and Min time configuration. This is done from the timing hardware configuration view.

Troubleshooting

No connection: Check that the correct serial port is selected and the device is powered on. Missing times: Verify the debounce settings aren't too high, and check for loose connections. Duplicate times: Increase debounce settings to filter out ghost triggers.

Results View Internal Link

The Results tab shows live standings calculated from recorded times. See who's winning each class, track placements, and monitor how the competition unfolds.

The Results view displays calculated standings with these columns depending on how you configure the view:

  • Position - Current placement within class
  • Number - Vehicle/competition number
  • Name - Competitor's name
  • Class - Competition class
  • Best Time - Fastest clean run (with any index applied)
  • Raw Time - Fastest clean run without index
  • Difference - Gap to class leader
  • Run Times - Individual run times (optional columns)

Standings Calculation

Results update automatically as times come in:

  • Only clean runs count toward placement
  • DNF runs are excluded from best time
  • Penalty times are added to the raw time
  • Index/PAX modifiers apply if configured

Class Grouping

Results are grouped by class. Each class shows its own leaderboard with separate positions and differences.

Expand or collapse class sections to focus on specific battles or see the overall picture.

Fastest Time Highlighting

The fastest time in each class is highlighted, making it easy to spot the current leader and their benchmark time.

Score by Day

For multi-day events, choose how standings are calculated:

  • All Days Combined - Best time across all days determines placement
  • Daily Standings - Each day scored separately
  • Best of Days - Use each competitor's best single day

Configure this based on your event's scoring rules.

PAX/Index Results

If your event uses PAX, index, or other modifiers:

  • Indexed times calculate automatically
  • Results can show both raw and indexed standings
  • PAX values update automatically when we receive new modifiers

DNF Handling

Competitors with all DNF runs appear at the bottom of their class with no time. Use Finalizing Results to add DNFs for no-shows before publishing final standings.

Finalizing Results Internal Link

For RallyCross events you need to Finalize the event to add in missing DNFs so the competitors who didn't complete all their runs can be properly scored. With RallyCross you can do 5/6 runs for example and still podium. This is done via Options -> Finalize. The system will also try to detect the end of the day after times stop coming in and ask you if you want to finalize.

Syncing Data Internal Link

Your timing data syncs automatically between the desktop app, cloud servers, and spectator devices. Even in remote locations with spotty connectivity, your work is always saved.

Unsaved changes are queued for later and will be uploaded once the connection is restored. This is automatic. In the bottom right of the timing app you can see a count of pending items to sync.

Download Latest Entries

Competitors registering online during your event? The system will show them in the Entries tab automatically.

Offline Mode Indicator

The app shows your connection status in the bottom right.

In offline mode, everything works normally. Times are recorded, results are calculated, and entries can be added. When connectivity returns, everything syncs automatically.

Times are Saved in Multiple Places

Every time and entry is stored in a few locations:

  1. As a snapshot on the timing computer.
  2. As a log on the timing computer (every change is audited in the log).
  3. As a snapshot on the server.
  4. As a log on the SidewaysData servers.
  5. Then that server is periodically backed up to a second hosting provider on a different continent.

Conflict Handling

SidewaysData resolves conflicts using a last-write-wins policy. If two machines edit the same entry at the same time, the last write is the one that takes effect. Usually having one machine handle registration and another handle timing prevents such conflicts. This would only happen if you had two machines doing timing at the same time for some reason, and they both edited a time (penalty updates are usually atomic and wouldn't cause conflicts).

Exporting Data Internal Link

Download your event data as CSV files for backup, analysis, or use in other systems.

Export Options

The app can export three types of data: Entries, Times, and Results.

Export Entries

Download a complete list of all competitors:

  • Names and contact information
  • Vehicle numbers and classes
  • Car details (make, model, year)
  • Custom registration fields

Use for check-in lists, name tags, or importing to other tools.

Export Times

Download all recorded run times:

  • Run numbers and timestamps
  • Vehicle numbers and names
  • Start times, finish times, calculated times
  • Penalties assigned to each run

Use for detailed analysis, backup, or integrating with scoring software.

Export Results

Download calculated standings:

  • Final positions by class
  • Best times (raw and indexed)
  • Differences from class leaders
  • Complete run breakdowns

Use for awards, series points, or posting results elsewhere.

How to Export

  1. Under Export select the data type (Entries, Times, or Results)
  2. Choose a save location
  3. Click Export

The file saves as CSV, which opens in Excel, Google Sheets, or any spreadsheet application.

Filtering Exports

Some exports support filtering:

  • By day - Export only a specific day's times
  • By class - Export results for selected classes
  • By status - Include or exclude DNFs

Configure filters before exporting to get exactly the data you need.

On-Site Server Internal Link

Host live results on your local network so spectators can follow along on their phones—even without internet access at your venue.

What Is the On-Site Server?

The on-site server runs directly on your timing computer. It creates a local web server that devices on the same network can access to view results.

Perfect for:

  • Remote venues without internet
  • Areas with poor cell coverage
  • Fast updates without cloud latency
  • Reliable access regardless of connectivity

The server does not have any special hardware requirements. For example, a 4th generation i3 processor could run an event fine with hundreds of participants.

Starting the Server

  1. Open Tools > On-Site Server
  2. Click Start Server
  3. Note the URL displayed (like http://192.168.1.100:8080)

The server starts immediately and begins serving your current event's results.

Sharing the URL

Get spectators connected:

  • Announce the URL over PA or with signage
  • Create a QR code pointing to the server URL
  • Connect to venue WiFi - All devices must be on the same network

Spectators navigate to the URL in any web browser to see live standings.

Network Requirements

For the on-site server to work:

  • Timing computer and spectator devices on the same local network
  • WiFi access point or wired network at the venue
  • No internet connection required—this is purely local

If your venue has internet, spectators can use either the local server or the regular SidewaysData website.

What Spectators See

The on-site results page shows:

  • Current standings by class
  • Latest times as they're recorded
  • Automatic refresh to show updates
  • Mobile-optimized layout

The experience mirrors the online results but served locally for speed and reliability.

Server Status and Logs

Monitor the server from the On-Site Server window:

  • Status - Running or stopped
  • Connected clients - How many devices are viewing
  • Request log - Activity for troubleshooting

Stopping the Server

When you're done:

  1. Open Tools > On-Site Server
  2. Click Stop Server

The server shuts down and frees up the network port. Spectators will see a connection error until the regular internet-based results are available.

Troubleshooting

Spectators can't connect: Verify they're on the same WiFi network. Check that no firewall is blocking the port. Slow updates: The server delivers data as fast as your timing computer generates it. Ensure the computer isn't overloaded. URL changes: If your computer's IP changes, the URL changes too. Use a static IP if possible, or re-announce the new URL.

Run Group Creator Internal Link

Divide your entries into run groups for efficient course rotation. The Run Group Creator helps balance groups by class size.

Why Use Run Groups?

Run groups help with:

  • Course efficiency - Rotate groups for course walking and working
  • Class balance - Keep competitors with similar cars together
  • Timing logistics - Manageable chunks of entries per session

Run Group Creator

Open Tools > Run Group Creator to automatically divide entries.

Settings

  • Number of groups - How many run groups to create (typically 2-4)
  • Max entries per group - Maximum competitors in any single group
  • Balance by class - Keep class members together when possible

How It Works

The creator examines your entry list and:

  1. Groups competitors by class
  2. Distributes classes across run groups
  3. Balances total entries per group
  4. Respects your maximum group size

The goal is groups of similar size with minimal class splitting.

Viewing Assignments

After generation, you can see:

  • Which group each competitor is assigned to
  • Group totals and class breakdowns
  • Any classes split across groups

Manual Adjustments

Not happy with an assignment? Manually move entries:

  1. Select the competitor
  2. Change their group assignment
  3. Totals update automatically

Use this for special cases like instructor placements or driver preferences.

Exporting Run Groups

Print or share group assignments:

  • Export to CSV for spreadsheet formatting
  • Print directly for course signage
  • Post to your event page for competitors to check

Run Group Tips

  • Odd-size classes: May need to split across groups
  • Dual drivers: Consider keeping them in the same group
  • Work assignments: Factor in who's working which sessions
  • Flexibility: Groups are suggestions—adjust as needed on event day

Next Steps

Learn about Penalties for tracking cones, DNFs, and other infractions.

Fun Stats Internal Link

Celebrate your event with Fun Stats—analytics and highlights that showcase winners, records, and memorable moments.

Fun Stats Window

Open Tools > Fun Stats to see event analytics.

Winners and Standouts

Highlight top performers:

  • Class winners - First place in each class
  • Overall fastest - Best raw time of the day
  • Biggest improvement - Most time dropped between runs
  • Most consistent - Smallest variance between runs

Great for awards ceremonies and social media.

Event Statistics

See aggregate numbers:

  • Total runs - How many times crossed the finish line
  • Total entries - Competitors who ran
  • Average time - Mean run time across all attempts
  • DNF rate - Percentage of runs not finished
  • Cone count - Total cones hit across all runs

These help you understand event performance and compare to previous years.

Records

Track achievements across your event series:

  • New records set - Times that beat previous bests
  • Close battles - Classes decided by tiny margins
  • Notable performances - Standout runs worth mentioning

Engagement Features

Use stats to engage your community:

  • Share graphics on social media
  • Announce highlights over PA
  • Recognize achievements at awards
  • Build excitement for next events

Comparing Events

If you run multiple events in a series, compare:

  • Participation trends
  • Average competitiveness
  • Course difficulty (via average times)
  • Growth over time

Exporting Stats

Download stats for use elsewhere:

  • CSV for spreadsheets
  • Copy text for quick sharing
  • Screenshot for graphics

Fun Stats Ideas

Make the most of your data:

  • "Fastest lap of the day" graphics
  • Year-over-year improvement tracking
  • "Cone king" awards (most cones hit)
  • Closest class battles
  • First-timer recognition

Next Steps

Set up extra displays with Display Windows for spectators and announcers.

Display Windows Internal Link

Create dedicated display windows for spectators, announcers, and multi-monitor setups. Show times and results exactly where they're needed.

Display Window Types

Last Time Window

Shows the most recent run time prominently:

  • Large, readable time display
  • Vehicle number and name
  • Penalty indicators
  • Full-screen capable

Perfect for a monitor facing spectators at the finish line.

Separate Times Window

A dedicated view of the Times table:

  • Live auto-scrolling times
  • All run details visible
  • Independent from main app window

Use for announcers who need time details while you work in entries or results.

Separate Results Window

A dedicated view of the Results table:

  • Current standings by class
  • Updates as times come in
  • Independent scrolling and filtering

Great for a display showing standings to waiting competitors.

Opening Display Windows

Open additional windows from the View menu:

  • View > Last Time Window
  • View > Times Window
  • View > Results Window

Each opens as an independent window you can position and resize.

Multi-Monitor Setups

Take advantage of multiple displays:

  • Monitor 1 - Main app for timing operations
  • Monitor 2 - Last Time Window for spectators
  • Monitor 3 - Results Window for waiting area

Each window operates independently, showing its dedicated content.

Full-Screen Mode

Make any display window full-screen:

  • Click the full-screen button, or
  • Use the keyboard shortcut (F11 on Windows/Linux, Ctrl+Cmd+F on Mac)

Full-screen mode hides window chrome for clean display presentations.

Display Tips

  • Font size - Display windows use large fonts by default for visibility
  • Dark mode - Available for outdoor visibility in bright conditions
  • Auto-scroll - Results and times windows follow new entries automatically
  • Refresh rate - Displays update in real-time with no manual refresh

Hardware Considerations

For public-facing displays:

  • Large monitors or TVs work well
  • Consider viewing distance when choosing size
  • Outdoor displays may need brightness adjustments
  • Protect equipment from weather at outdoor events

Remote Displays

For displays far from the timing computer:

  • Use the On-Site Server on a device near the display
  • Connect via HDMI extenders for longer runs
  • Consider wireless display adapters

Next Steps

You've covered the essentials. Return to the Timing Overview or explore the Hardware Guide for device setup details.