nm000104 NEMAR-native dataset

emg2qwerty: A Large Dataset with Baselines for Touch Typing using Surface Electromyography

emg2qwerty is the largest public surface electromyography (sEMG) dataset to date, comprising 1,135 sessions from 108 participants performing touch typing on a QWERTY keyboard. The dataset captures wrist-based sEMG signals (32 channels, 2000 Hz sampling rate) synchronized with keystroke ground truth, totaling 346.4 hours of data and 5.26 million keystrokes. Designed to enable keyboard-free text input through decoding of typing intent from neuromuscular activity, the dataset supports research in sequence-to-sequence learning, cross-user generalization, domain adaptation, and neuromotor interfaces for AR/VR and accessibility applications.

AI-generated description, may include mistakes
Issues GitHub

Download this dataset

Archive (>100 GB) removed to save space; use the per-file direct download (#752).. Use one of the streaming methods below — all resumable. Full download guide →

  1. NEMAR CLI recommended

    Pulls the pinned version + annexed data and resumes cleanly. Install nemar-cli →

    nemar dataset download nm000104
  2. DataLad

    Clone the dataset repo and fetch file content on demand. Docs →

    datalad clone https://github.com/nemarDatasets/nm000104 nm000104
    cd nm000104 && datalad get .
  3. git-annex

    Plain git + git-annex against the dataset repo. Docs →

    git clone https://github.com/nemarDatasets/nm000104 nm000104
    cd nm000104 && git annex get .
  4. Direct files (wget / curl / rclone)

    Every file with a stable, range-resumable URL from the manifest. Needs curl, jq, wget (or rclone/aria2c). Docs →

    curl -s https://data.nemar.org/nm000104/v2.0.0/manifest.json | jq -r '.[].bytes_url' > urls.txt
    wget -xc -i urls.txt

Compute on this dataset

Two routes today, with a third (in-browser one-click submission) landing soon.

  1. NeuroScience Gateway (NSG) portal.

    NSG runs EEGLAB / Brainstorm / MNE pipelines on supercomputing time donated by SDSC. Create an account, point a job at this dataset's S3 prefix (s3://nemar/nm000104), and submit.
    nsgportal.org →

  2. Local processing with nemar-cli.

    Pull the dataset to your machine and run any toolbox locally. Honors the published version pinning.

    npm install -g nemar-cli
    nemar dataset clone nm000104
    cd nm000104 && nemar dataset get
  3. Just the files.

    rclone, aria2c, or any HTTPS client works against data.nemar.org/nm000104/ — the manifest carries presigned S3 URLs.

Direct compute access is coming soon. One-click NSG submission from this page is scoped for a follow-up phase. Tracked on nemarOrg/website#6.

Citations

    Loading demographics…

    Files

    Loading file index…

    Signal viewer

    How to use the data (for agentic research) license, citation, download commands

    What it is

    Modalities
    EMG
    Participants
    108
    Size
    223 GB
    Tasks
    typing

    License and terms

    License
    CC-BY-NC-SA-4.0
    Note
    Non-commercial use only (CC-BY-NC-SA-4.0).
    Recommended citation
    Sivakumar, V., Seely, J., Du, A., Bittner, S. R., Berenzweig, A., Bolarinwa, A., Gramfort, A., & Mandel, M. I. (2026). emg2qwerty: A Large Dataset with Baselines for Touch Typing using Surface Electromyography (Version v2.0.0) [Data set]. NEMAR. https://doi.org/10.82901/nemar.nm000104

    Where the bytes are

    Latest version (always current)
    https://data.nemar.org/nm000104/latest/

    How to download

    The dataset
    nemar dataset download nm000104 Clones and fetches in one step. Content under stimuli/ and derivatives/ is skipped by default because those trees can be large; add --stimuli --derivatives for the whole thing.
    A subset, one step
    nemar dataset download nm000104 --subjects sub-01,02 Also filters by --sessions, --tasks, --runs, --datatypes, --include and --exclude.
    A subset, step 1
    nemar dataset clone nm000104 Clones git-annex pointers only; fetches no file content. Creates ./nm000104.
    A subset, step 2
    cd nm000104 The get command below reads the clone's annex, so it only works from inside the clone.
    A subset, step 3
    nemar dataset get <files> Pulls the files you actually need. Skips stimuli/ and derivatives/ unless the path you ask for is under one of them.
    One small file
    https://data.nemar.org/nm000104/v2.0.0/participants.tsv A direct HTTPS fetch works for any single file.