SART2
Sustained Attention to Response Task with feedback. Digits 1-9 appear one at a time at random sizes; the participant presses the space bar (or taps) for every digit except 3. Each digit is followed by a circle-with-cross mask that turns green after a correct press, and errors trigger a 3 s 'MISTAKE' message. An 18-trial training block precedes the 72-trial test block.
- Duration: ~150 s
- Source: Stoet, 2010 · Robertson et al., 1997 — re-implementation of the PsyToolkit SART2
- Launch URL: https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/
Example URL commands
# Plain launch (debug mode: results shown on-screen)
https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/
# Suppress the completion screen
https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/?show_end_screen=false
# With camera recording
https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/?webcam=1
# With eye tracking
https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/?webgazer=1
# Customized assessment parameters (values shown are the defaults)
https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/?training_trials=18&test_trials=72&no_go_digit=3
# Production: submit results to your server
https://andreifoldes.github.io/m2c2-assessments/assessments/sart2/?token=<TOKEN>&callback_url=<CALLBACK_URL>
Session parameters
Handled by the launch wrapper (results submission and optional sensors), not by the assessment itself.
| Parameter | Type | Default | Description |
|---|---|---|---|
callback_url | string | — | URL to POST results to when the assessment ends. |
embed | string | — | Set to 1 for embedded mode (e.g. an ESMira PWA iframe): on completion, results are posted to the parent window via postMessage instead of an HTTP callback. |
light | string | — | Set to 1 or true to enable ambient light sensing (where the browser supports the AmbientLightSensor API). Participants see a consent prompt; lux readings are recorded during the task and exported at session end. |
pid | string | — | Optional participant identifier. Echoed verbatim into the results: top-level pid next to token in the callback POST, inside data, and in the embed-mode postMessage. Useful when the callback endpoint does not mint per-participant tokens, or to link multi-session designs (e.g. FNAME-Pairs learning vs. delayed) from the URL alone. |
show_end_screen | string | true | Set to false or 0 to suppress the green "Assessment Complete" screen after results are submitted. A Telegram WebView closes immediately instead of showing the confirmation. |
token | string | — | Authentication token for results submission. When absent (along with callback_url), the assessment runs in debug mode and displays results on-screen instead of submitting them. |
tutorial | string | true | Set to false or 0 to skip the tutorial screens (alias for the show_tutorial assessment parameter). |
webcam | string | — | Set to 1 or true to enable optional camera recording. Participants see a consent prompt; if they accept, the front camera records and the video is saved locally to their device at session end. |
webgazer | string | — | Set to 1 or true to enable browser-based eye tracking via WebGazer.js. Participants see a consent prompt, then a 5-point gaze calibration. Gaze coordinates are recorded throughout the task and exported as a CSV file at session end. Can be combined with webcam=1. |
Assessment parameters
Parameters marked URL can be set as URL query parameters; the rest are fixed deployment defaults.
| Parameter | Type | Default | URL | Description |
|---|---|---|---|---|
training_trials | integer | 18 | ✅ | Number of trials in the training block |
test_trials | integer | 72 | ✅ | Number of trials in the real test block |
no_go_digit | integer | 3 | ✅ | The digit (1-9) the participant must withhold a response to |
digit_duration_ms | number | 250 | ✅ | How long the digit is shown before the mask appears in ms |
error_feedback_ms | number | 3000 | ✅ | How long the 'MISTAKE' message is shown after an error in ms |
post_error_blank_ms | number | 500 | ✅ | Blank screen after the error message in ms |
show_tutorial | boolean | false | ✅ | Whether to show a training block (with its summary) before the real test; off by default |
show_instructions | boolean | true | — | Whether to show the title and instruction pages (false goes straight to the countdown) |
skippable_instructions | boolean | false | — | Whether to show a 'Skip instructions' button on the instruction pages; tapping it skips the training block and starts the real test block |
numeric_feedback | boolean | true | — | Whether the training summary shows the Go/No-Go counts and percentages |
device | string | auto | ✅ | Wording of the instructions: 'mobile' (tap), 'desktop' (space bar) or 'auto' (touch screen or phone-sized viewport) Allowed values: "auto", "mobile", "desktop". |
show_quit_button | boolean | false | — | Whether to show a quit button |
Generated from assessments/sart2/sart2.js and assessments/sart2/index.js. Do not edit by hand.