Classes, Courses & Maps
Platform: 🖥️📱 Desktop and mobile
See also: Code lists, Import and export, Relay legs, Checkpoints
Defining classes
Classes control how participants are grouped in start lists, results, and the registration form.
Adding and editing classes
Click Add class to create a new class. Fields:
- Class name — Name shown on the registration form and in results (e.g. H21, D16)
- Class default start time — Default start time for participants in this class
- Class type — Choose:
- Not specified — Standard class
- Rogaining — Score orienteering with a time limit
- For children — Participants are not ranked, listed in alphabetical order. The mobile app shows an animal character at the finish.
- Scoring (Rogaining) — How points are calculated per control:
- First digit of control code (e.g. "31" = 3 points)
- Last digit of control code (e.g. "31" = 1 point)
- Control code (e.g. "31" = 31 points)
- One point per control
- No scoring
- Maximum time (min) — Time limit (Rogaining)
- Penalty min / missing control — Penalty for a missing control
- Course — Assign a course to the class. When multiple courses are assigned, participants in the class can run different course variations (forking).
- Checkpoint — Assign checkpoints for split times. See Checkpoints.
Classes can be reordered by drag and drop — the order number updates automatically. The order determines the display in start lists, results, and the registration form.
Tip: Define classes before opening registration. The registration form's class list matches this definition and order exactly.
Relay-specific settings
In relay events, classes have additional settings:
- Number of legs — Number of relay legs
- Changeover closing time — See Relay legs
- Per-leg course assignment — A different course for each leg
Simplified event mode
When Simplified event mode is enabled, classes and courses are managed as a single unit — each class automatically has a course with the same name. See Creating and editing events.
Tip: Use simplified mode when each class has its own course. Switch to full mode when you need multiple classes on the same course or forking.
Designing courses and controls
Adding courses
Click Add course. Fields:
- Course name — E.g. "Long", "Short", or "H21-1" (forking variant)
- Course length (m) — Total distance in meters
- Climb (m) — Total climb in meters
Defining controls
Each course has a control list. Control fields:
- Control code — Code shown to participants (e.g. "31", "32")
- Device codes — The control's internal device codes. These must match the codes programmed into the timing devices.
- Leg length — Distance between controls
- Free order — Consecutive free-order controls form a group where controls can be visited in any order. A non-free control breaks the group. Example: controls 1 (not free), 2 (free), 3 (free), 4 (not free), 5 (free), 6 (free), 7 (free) → controls 2–3 are one group, controls 5–7 another.
- Skip leg — The leg time is removed from the total time (neutralization sections).
- Penalty — Control-specific penalty (min) for a missing punch. Overrides the class default penalty.
- Inactive — All participants automatically receive a punch for this control (e.g. due to a device malfunction).
Tip: If a control station malfunctions during the competition, mark the control as "Inactive" — the system automatically credits a punch for everyone.
Importing classes from an XML file
Import reads IOF XML 3.0 files from course planning software (OCAD, Purple Pen, Condes).
Two methods:
- Drag and drop — Drag the XML file directly onto the classes/courses view
- Import button — Click Import classes from XML file and select the file
Import shows a preview of the data to be imported. You can select items to import or import and remove classes/courses not in the file.
Choosing the finish device code
After import, a dialog opens for the finish device code. Three options:
- Enter code — Type the finish device code. The save icon lets you set it as your organization's default.
- Use organization default — A previously saved default finish device code.
- Use system finish code — Built-in "Finish" code for timing systems with a separate finish unit (e.g. SportIdent, Huichang, Learnjoy).
Tip: If your organization always uses the same finish device, set the default once — it will be filled in automatically for all future events.
More information: Import and export.
Importing and exporting classes as CSV
For non-orienteering sports (running, skiing, triathlon), classes can be imported and exported as CSV files. The CSV contains columns for class name, number of legs, and default start time. Click Import classes from CSV file or drag a .csv file onto the class view.
More information: Import and export.
Uploading and georeferencing a map
Uploading a map image
Click Add map image (.jpg or .png) to upload a map.
Georeferencing with a coordinate file
If the map image is not positioned correctly on the background map, add a coordinate file (.pgw or .jgw) by dragging it onto the map area or clicking the help text link. Select the coordinate system (EPSG code) and click Perform map transformation.
Placing controls on the map
When a map is uploaded:
- Click Add control to create a new control
- Click Place on map to position it
- Use Show / hide control codes to toggle code visibility
Using code lists
A code list maps participant-facing control codes to the timing device's internal device codes. Select a code list from the Select code list dropdown in the controls section.
During XML import, the code list is used automatically to map control codes to device codes.
More information: Code lists.
Defining checkpoints
Checkpoint configuration is covered on its own page: Checkpoints. The controls you define on courses serve as a reference when configuring checkpoints — each checkpoint refers to one or more control codes.
Putting it together: Setting up a forest orienteering event
Example: a local competition with four classes (H21, D16, H16, Open) and two courses (Long, Short).
Create classes — Add classes, set start times (H21/H16: 10:00, D16: 10:30, Open: no fixed time). Drag to desired order.
Import courses — Export IOF XML 3.0 from course planning software and drag the file onto the view.
Assign courses to classes — H21 and D16 → Long, H16 and Open → Short.
Add a checkpoint — At the spectator control (control 18). Go to Checkpoints.
Upload map — Add the map image and optional coordinate file.
Open registration — The form shows classes in the order you defined. The system knows each participant's course based on their class selection.
On competition day, punches are checked against the control order, split times appear at checkpoints, and results are grouped by class.