Preprocessing. Every character epoch was bandpass filtered with a zero-phase, order 120 FIR filter in the range 1 – 30 Hz, and further undersampled from 240 Hz to 120 Hz. Temporal windows from 50 to 750 ms were extracted and divided intoo row- and column-wise stimuli. Feature Extraction. Spatial PCA was carried out to virtualize the set of electrodes, using covariance matrix estimates derived from the P300 – related epochs within the training set. Original data was projected over ten virtual electrodes (components three to twelve of the SPCA transform, in descending order of their corresponding eigenvalue). Virtualized signals were scaled into absolute unit range and concatenated into a single feature vector. Classifier Design. (a) Model. Non-linear (rbf) SVMs were trained per trial and repetition, to differentiate patterns with and without P300 events. Sub-sampling of the non-P300 class in the training set was performed to equalize prior probabilities. Outputs of the SVMs were transformed into estimates of posterior probability through logistic regression. Independent SVMs were designed for row- or column-wise stimuli. (b) Decision. Cumulative values of the row and column posterior probabilities along the trials were used for decision-making, selecting as correct the character with the largest value of cumulative posterior. (c) Validation. Classifier validation was carried out with six-fold cross validation over the training set, and performance variance was computed for each subject and SVM model used. Over the training set, the classification rate obtained was 0.143 +/- 0.110 for subject A and 0.233 +/- 0.109 for subject B, considering 15 trials and 0.488 +/- 0.152 for subject A and 0.567 +/- 0.181 for subject B taking only 5 trials into account.