Context transfer · P300 on a screen and in VR

Does a P300 decoder calibrated on a screen still work in VR?

21 people used the same P300 interface on a PC screen and in a virtual-reality headset, calibrated on one display and tested on the other.

Measured on: Cattan PC/VR P300 dataset; LTRSVP · EEG Signals from an RSVP Task

Short answer

It scores above chance after the switch. Across 21 people, each calibrated on a PC screen and tested in a VR headset and also the other way round, a simple logistic regression averaged 66.0% balanced accuracy over the two directions (95% interval 61.6%–70.2%; chance 50%), with stimulus-onset timing corrected. The protocol did not also test each person on the display they were calibrated on, so the cost of the switch is unmeasured.

Mean-window logistic regression
66.0% (61.6%–70.2%)
Spatiotemporal shrinkage LDA
63.6% (59.6%–67.7%)
The level after a display change, 21 people. Each person was calibrated on one display and tested on the other, in both directions, averaged within the person. Balanced accuracy, onset-corrected timing. Dot: mean over people; line: participant-bootstrap 95% interval; dashed line: chance, 50%.
66.0%Balanced accuracy after the display change, 21 people

Above chance after the display change

Interval 61.6%–70.2%; AUROC 0.732.

Two fixed baselines

Calibrated on one display, tested on the other

Target against non-target epochs, 5 non-targets to every target, so accuracy would reward always answering “non-target”; balanced accuracy and AUROC do not. Primary timing.

Mean over 21 people of each person’s average of the two transfer directions, with participant-bootstrap 95% intervals.
BaselineBalanced accuracyAUROC
Mean-window logistic regression66.0%61.6%–70.2%66.0% balanced accuracy0.7320.671–0.785
Spatiotemporal shrinkage LDA63.6%59.6%–67.7%63.6% balanced accuracy0.7130.652–0.771

Prespecified sensitivity

With and without the onset correction

The headset and the screen report stimulus onset with different delays. The primary analysis shifts each epoch by the source-reported offset — 19 samples on the PC and 60 in VR, at 512 Hz. The sensitivity analysis leaves epochs at the recorded tag.

Balanced accuracy under each timing scheme, with participant-bootstrap 95% intervals.
BaselineOnset corrected (primary)At the recorded tag
Mean-window logistic regression66.0%61.6%–70.2%63.8%61.0%–66.5%
Spatiotemporal shrinkage LDA63.6%59.6%–67.7%57.2%55.1%–59.4%

Spatiotemporal shrinkage LDA depends on timing most: 63.6% with the correction, 57.2% without.

What the scores are computed on

Twenty-one people, one recording on each display

Every label comes from the source. One malformed row after the last epoch of one recording was discarded.

People

21

each recorded once on each display

Labelled events

30,240

1 target to 5 non-targets

Epochs kept, primary timing

30,101

139 rejected at 500 µV peak to peak

Another presentation change · image rate

Trained at 5 images a second, tested at 10: does a P300 decoder carry over?

In LTRSVP, a separate dataset scored with a different decoder, 9 people watched aerial images flash past at 5, 6 and 10 a second and looked for the ones with an airplane, recording twice at each rate. A fixed logistic regression is trained on one recording at one rate (run a) and tested on a different recording of the same person (run b), at the same rate or another; within a rate, run b followed run a after a long break. Both arms below are tested on the same 10-Hz images: 223 targets and 2,036 non-targets across the 9 people.

Trained at 5 Hz, run a → tested at 10 Hz, run b

60.8%
60.8% balanced accuracy

AUROC 0.673 (0.617–0.732)

95% interval 56.5%–65.8%

Trained at 10 Hz, run a → tested at 10 Hz, run b

63.0%
63.0% balanced accuracy

AUROC 0.695 (0.630–0.753)

95% interval 57.7%–68.0%
−2.2 ppTrained at 5 Hz minus trained at 10 Hz, same 10-Hz test images, 9 people

Slightly lower on average — and the interval crosses zero

Paired interval −6.8 to +2.8 pp: it crosses zero, so no change is established. 7 of 9 people had a lower point estimate and 2 a higher one. AUROC moved by −0.022 (interval −0.060 to +0.014), which also crosses zero.

Participant-mean balanced accuracy for each training rate (rows, run a) and test rate (columns, run b), 9 people, with participant-bootstrap 95% intervals. Chance is 50%.
Training recordingTested at 5 Hz338 targets / 3,069 non-targetsTested at 6 Hz296 targets / 2,664 non-targetsTested at 10 Hz223 targets / 2,036 non-targets
Trained at 5 Hz73.6%65.8%–80.8%70.7%64.5%–76.7%60.8%56.5%–65.8%
Trained at 6 Hz74.9%68.5%–80.9%71.4%64.3%–78.1%60.6%57.4%–64.3%
Trained at 10 Hz67.5%59.9%–75.2%69.8%61.9%–77.2%63.0%57.7%–68.0%

Every cell in a column is tested on the same images, whatever the training rate. On the diagonal the test recording is the same-rate run b, after a long break; off it, the rate also changes, and so does how far apart in the session the two recordings were. The nine cells reuse the same people and the same three training recordings of each.

Limits of the image-rate comparison

Rate and recording are confounded

Training at another rate also means training on another recording, with another number of images and another target balance. A difference here is not a causal effect of image rate.

Ascending presentation order

The original publication reports that the rates were presented from the lowest to the highest, in an order not randomised across participants. Within a rate, run b is the later recording, after a long break; how the two files of each rate map onto the ascending sequence is not documented on PhysioNet. So a cross-rate cell also differs in elapsed time, fatigue and practice.

9 people

The 8,626 test images and 81 person-by-cell evaluations all come from these 9 people, and the intervals are bootstrapped over people. 2 of the release's 11 people lack both recordings at one rate and were excluded from file metadata before scoring.

Overlapping responses, offline

At these rates one image’s baseline and response windows also contain its neighbours’ responses. All results are offline, from a fixed decoder.

LTRSVP · EEG Signals from an RSVP Task

Ana Matran (University of Essex) · EEG Signals from an RSVP Task 1.0.0, PhysioNet (2017), doi:10.13026/C2KX0P. Original publication: Ana Matran-Fernandez and Riccardo Poli, Towards the automated localisation of targets in rapid image-sifting by collaborative brain-computer interfaces, PLoS ONE 12(5): e0178498 (2017), doi:10.1371/journal.pone.0178498. PhysioNet platform: Pollard et al. (2026), doi:10.1038/s44360-026-00096-z.

The original publication states that the study was approved by the Ethics Committee of the University of Essex and that every participant gave written consent before the experiment. Only cohort aggregates appear here, not the ages, sexes or handedness the paper reports.

PhysioNet record ↗ · Original publication ↗ · Open Data Commons Attribution License 1.0

Data source: extension-update.json · schema bci-report-extension-update-v1.

Methods & limits

Limits of the display-transfer result

No same-display reference

Nobody was tested on the display they were calibrated on.

Within one person, on one day

Each person supplies both their calibration and their test data, on the same day.

Simple baselines only

Two simple CPU classifiers with no tuning; no foundation model or fine-tuned model was run.

Event-to-event jitter

The correction shifts epochs by the mean onset delay; jitter around that mean, which a headset can add, remains.

Cattan PC/VR P300 · a BCI experiment in virtual reality and on a personal computer

Grégoire Cattan, Anton Andreev, Pedro L. C. Rodrigues and Marco Congedo · Dataset of an EEG-based BCI experiment in Virtual Reality and on a Personal Computer, Zenodo, doi:10.5281/zenodo.2605205; documentation arXiv:1903.11297.

All participants gave written informed consent covering the experimental process, the data management procedures and the right to withdraw at any moment; the study was approved by the ethics committee of the University of Grenoble Alpes (CERNI). Only cohort aggregates appear here.

Zenodo record ↗ · Dataset documentation ↗ · CC-BY-4.0

Data source: reviewed aggregate JSON · schema bci-report-context-update-v1.

Cite this page

BCI Report (2026). Does a P300 decoder calibrated on a screen still work in VR? https://bci.report/topics/screen-to-vr/

Figures from releases extension-update-20261002 (2026-10-02), context-update-20260927 (2026-09-27). Cite the upstream datasets as well: their credits are on this page.

Every release is archived on Zenodo: doi:10.5281/zenodo.23123296. BibTeX for the site and its releases → · CITATION.cff ↗