{"dataset":{"id":"51","dataset_id":"nm000106","name":"FRL Handwriting: Handwriting Decoding from Surface Electromyography","description":"NEMAR Dataset nm000106: handwriting - Handwriting movement detection from EMG","owner_user_id":2,"status":"active","github_repo":"nemarDatasets/nm000106","concept_doi":"10.82901/nemar.nm000106","latest_version_doi":"10.82901/nemar.nm000106.v2.0.0","created_at":"2026-01-19 03:25:23","updated_at":"2026-07-10 21:43:00","zenodo_concept_id":null,"is_sandbox":0,"visibility":"public","ezid_status":"public","enrichment_json":"{\n  \"version\": \"2.0\",\n  \"pipeline_stage\": \"enriched\",\n  \"title\": \"FRL Handwriting: Handwriting Decoding from Surface Electromyography\",\n  \"description\": \"This dataset comprises wrist-based surface electromyography (sEMG) recordings from 100 participants performing imagined handwriting tasks. Participants wrote prompted text in air without a physical writing surface, using a 16-channel sEMG wristband sampled at 2000 Hz. The dataset includes approximately 700 sessions (~7 per participant) and serves as a benchmark for developing non-invasive neuromotor interfaces for text entry in augmented/virtual reality and mobile computing applications.\",\n  \"methods_description\": \"Participants wore a 16-channel sEMG wristband (sEMG-RD) on the dominant wrist, sampled at 2000 Hz with bipolar differential referencing. During each ~11-minute session, participants performed air-writing of 96 prompted phrases while holding their fingers together as if holding an invisible pen. Recordings were conducted with participants in both sitting and standing postures.\",\n  \"license\": \"CC-BY-NC 4.0\",\n  \"authors\": {\n    \"Patrick Kaifosh\": {},\n    \"Thomas R. Reardon\": {},\n    \"CTRL-labs at Reality Labs\": {}\n  },\n  \"keywords\": [\n    {\n      \"term\": \"Electromyography\",\n      \"subject_scheme\": \"MeSH\",\n      \"value_uri\": \"http://id.nlm.nih.gov/mesh/D004576\"\n    },\n    {\n      \"term\": \"sEMG\"\n    },\n    {\n      \"term\": \"motor imagery\"\n    },\n    {\n      \"term\": \"handwriting decoding\"\n    },\n    {\n      \"term\": \"brain-computer interfaces\"\n    },\n    {\n      \"term\": \"text entry\"\n    },\n    {\n      \"term\": \"neural decoding\"\n    },\n    {\n      \"term\": \"wearable sensors\"\n    },\n    {\n      \"term\": \"augmented reality\"\n    },\n    {\n      \"term\": \"virtual reality\"\n    }\n  ],\n  \"related_identifiers\": [\n    {\n      \"identifier\": \"10.1038/s41586-025-09255-w\",\n      \"identifier_type\": \"DOI\",\n      \"relation_type\": \"References\"\n    },\n    {\n      \"identifier\": \"https://github.com/nemarDatasets/nm000106\",\n      \"identifier_type\": \"URL\",\n      \"relation_type\": \"IsDescribedBy\"\n    },\n    {\n      \"identifier\": \"https://nemar.org/dataexplorer/detail?dataset_id=nm000106\",\n      \"identifier_type\": \"URL\",\n      \"relation_type\": \"IsDescribedBy\"\n    },\n    {\n      \"identifier\": \"10.5281/zenodo.17613961\",\n      \"identifier_type\": \"DOI\",\n      \"relation_type\": \"IsIdenticalTo\"\n    },\n    {\n      \"identifier\": \"10.82901/nemar.nm000106\",\n      \"identifier_type\": \"DOI\",\n      \"relation_type\": \"IsIdenticalTo\"\n    }\n  ],\n  \"funding_references\": [\n    {\n      \"funder_name\": \"Meta Reality Labs\"\n    }\n  ],\n  \"resource_type_specific\": \"EMG Dataset\",\n  \"modalities\": [\n    \"emg\"\n  ],\n  \"source_hash\": \"e440a58f1540aa300797d4ea83259b8e138e3a3f1fc7941d4f5920a77d6fc601\"\n}","last_activity_at":"2026-02-12 09:49:28","source":null,"source_id":null,"subject_count":100,"modalities":"emg","age_min":null,"age_max":null,"file_size":48676600731,"total_files":4047,"tasks":"handwriting","metadata_columns_error":null,"staleness_warn_stage":null,"staleness_admin_notified_at":null,"authors":"Patrick Kaifosh, Thomas R. Reardon, CTRL-labs at Reality Labs","license":"CC-BY-NC 4.0","readme":"# handwriting: Handwriting Recognition from EMG\n\n## Overview\n\n**Dataset**: handwriting - Imagined handwriting from wrist-based surface electromyography\n**Task**: Air-writing (imagined handwriting without pen)\n**Participants**: 100 subjects\n**Sessions**: ~700 total (~7 per subject)\n**Publication**: Kaifosh et al., 2025 - \"A generic non-invasive neuromotor interface for human-computer interaction\" (Nature)\n\n### Purpose\n\nThis dataset captures wrist-based sEMG signals during imagined handwriting motions for text entry. Participants \"write\" prompted text with fingers together (as if holding an invisible pen) without any physical writing surface. Applications include AR/VR text input, mobile computing, and hands-free communication.\n\n## Dataset Details\n\n### Participants\n- **Sample size**: 100 participants\n- **Demographics**: Not available (marked as n/a)\n- **Recording side**: Dominant wrist\n- **Sessions**: Average 7 per participant\n\n### Hardware\n- **Device**: sEMG-RD (single wristband)\n- **Channels**: 16 (EMG0-EMG15)\n- **Sampling rate**: 2000 Hz\n- **Reference**: Bipolar differential\n\n### Recording Protocol\n1. Participant holds fingers together (as if holding pen)\n2. Prompted text appears on screen\n3. Participant \"writes\" the text in air\n4. Session duration: ~11 minutes\n5. Prompts per session: 96 phrases\n\n## Data Contents\n\n### Files per Session\n```\nsub-XXX/ses-XXX/emg/\n├── sub-XXX_ses-XXX_task-handwriting_emg.edf\n├── sub-XXX_ses-XXX_task-handwriting_emg.json\n├── sub-XXX_ses-XXX_task-handwriting_channels.tsv\n├── sub-XXX_ses-XXX_task-handwriting_events.tsv\n└── sub-XXX_ses-XXX_electrodes.tsv\n```\n\n### Events\n- **Handwriting prompts**: Text to be written\n  - `prompt_text`: Displayed phrase\n- **Stage boundaries**: Posture changes (sitting/standing), session phases\n\n### Coordinate System\nSingle coordinate system at root (dominant wrist, percent units, no decimals)\n\n## Baseline Performance\n\n### Published Results (Kaifosh et al., 2025)\n\n**Generic Model** (6,527 training participants):\n- Offline CER: >90% classification accuracy on held-out participants\n- Online performance: 20.9 words per minute (WPM)\n- Online CER: Median improvement from ~35% (practice) to ~25% (evaluation)\n\n**Personalized Model** (20 min fine-tuning):\n- 16% improvement over generic model\n- Better performance for users with higher generic CER\n- Diminishing returns with more pretraining data\n\n**Comparison**:\n- Open-loop handwriting (no pen): 25.1 WPM\n- sEMG handwriting: 20.9 WPM (83% of baseline)\n- Mobile phone keyboard: 36 WPM\n\n**Model architecture**: MPF features + Conformer (attention mechanism)\n\n## Use Cases\n- **Keyboard-free text entry**: AR/VR, mobile devices\n- **Silent communication**: Private text input in public spaces\n- **Personalization research**: Few-shot learning, transfer learning\n- **Sequence modeling**: Character-level prediction with attention\n\n## Known Limitations\n- Single wrist (dominant hand only)\n- Handedness not recorded\n- Learning curve: Users improve with practice/coaching\n- Lower WPM than physical writing or typing\n\n## Citation\n```\nKaifosh, P., Reardon, T.R., & CTRL-labs at Reality Labs. (2025).\nA generic non-invasive neuromotor interface for human-computer interaction.\nNature, 645(8081), 702-711. https://doi.org/10.1038/s41586-025-09255-w\n```\n\n## Data Curator\n**Yahya Shirazi**\nSCCN (Swartz Center for Computational Neuroscience)\nINC (Institute for Neural Computation)\nUniversity of California San Diego\n\n## Version History\n**v1.0** (2025-10-01): Initial BIDS conversion\n\n---\n**BIDS Version**: 1.11 | **EMG-BIDS**: BEP-042 | **Updated**: Oct 1, 2025","bids_version":"1.11.0","sessions_count":26,"publish_date":"2026-01-19 03:25:23","embedding_dirty":0,"license_tier":"noncommercial","zarr_status":"ready","zarr_converted_at":"2026-09-05 03:34:12","zarr_store_count":807,"zarr_index_etag":"875fb2fa075c8caad14f77f79840b20f","zarr_source_commit":"cbe32800adde081aad1b69889e43688c4eabaa8a","archive_status":"ready","archive_size":26947034715,"archive_retry_count":0,"records_status":null,"archive_skip_reason":null,"zarr_errors":0,"zarr_failure_count":0,"zarr_deterministic":0,"zarr_failed_at":null,"num_dataset_citations":0,"num_datapaper_citations":0,"n_channels":null,"electrode_system":null,"has_hed":0,"hed_version":null,"is_exemplar":0,"bytes_present":81114512164,"data_complete":1,"withdrawn_at":null,"withdrawn_reason":null,"archive_complete":null,"archive_absent_files":null,"archive_declared_files":null,"zarr_pool_breaks":0,"total_recording_duration":506927,"recording_duration_min":93,"recording_duration_max":2161,"recording_count":807,"recordings_unavailable":0,"recordings_measured":807,"channel_count_min":16,"channel_count_max":16,"sampling_frequency":null,"power_line_frequency":null,"eeg_reference":null,"placement_scheme":null,"sweep_stamps":"{\"enrichment_updated_at\":\"2026-02-23 07:49:12\",\"metadata_updated_at\":\"2026-05-16 07:29:43\",\"archive_checked_at\":\"2026-06-05 01:32:45\",\"zarr_checked_at\":\"2026-06-07 17:57:59\",\"records_checked_at\":null,\"citations_updated_at\":null,\"channel_montage_checked_at\":null,\"hed_checked_at\":\"2026-06-30 03:44:57\",\"data_checked_at\":\"2026-07-22 04:44:27\",\"availability_report_at\":\"2026-07-23 01:04:14\",\"signal_defaults_at\":\"2026-09-02 11:34:48\",\"zarr_verify_attempted_at\":\"2026-09-04 03:01:36\",\"zarr_verified_at\":\"2026-09-04 03:01:36\",\"zarr_verified_commit\":\"cbe32800adde081aad1b69889e43688c4eabaa8a\",\"zarr_verify_status\":\"verified\",\"zarr_verify_examples\":[],\"zarr_verify_sampled\":40.0,\"zarr_verify_checked\":40.0,\"zarr_verify_checked_channels\":40.0,\"zarr_verify_checked_duration\":40.0,\"zarr_verify_checked_rate\":40.0,\"zarr_verify_unchecked\":0.0,\"zarr_verify_mismatch_count\":0.0,\"zarr_verify_examples_truncated\":0.0,\"recording_stats_at\":\"2026-09-06 03:00:31\"}","participants":100,"num_citations":0,"latest_version":"v2.0.0","zarr_verify_status":"verified","zarr_verified_at":"2026-09-04 03:01:36","owner_username":"yahya","owner_github":"neuromechanist","file_size_formatted":"45.33 GB","zarr_data_failures":null,"zarr_index_url":"https://zarr.nemar.org/nm000106/zarr/index.json","attestation_deposit_type":null,"attestation_key_status":null,"attestation_deidentified":null,"attestation_no_duplicate":null,"attestation_upstream_source":null,"attestation_accepted_at":null}}