Skip to content

anaya33/Sollertia

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sollertia Logo

Measuring Fine Motor Control in XR

Unity Rust Arduino License: GPL v3

Overview | Metrics | System | Sensing | Installation | History | Team


Table of Contents


Overview

Sollertia is a system for measuring fine motor control in XR using task-based interaction and wearable force input.

It replicates the same button-based task in a physical setup and in XR, and compares performance across both environments.

Users respond to light-up targets by pressing them as quickly and accurately as possible. We log behavioral and force data to capture how people move, react, and apply pressure during interaction.


Metrics

Behavioral (XR + Physical)

Metric Description
Reaction Time Time from target onset to response
Completion Time Total time to complete press
Spatial Error Distance from target center
Variability Consistency across trials
Movement Trajectory Path of hand/finger during reach

Wearable (FSR on Index Finger)

Metric Description
Force Magnitude Peak pressure during press
Force Over Time Temporal force profile
Pressure Variability Stability of force application

System

Component Description
Physical Board LED targets with matched layout
XR Version Meta Quest 3 with hand tracking, matched timing
FSR Sensor Finger-mounted force sensing
Logging Pipeline Synchronized timing and force data

Architecture

                    +------------------+
                    |   Meta Quest 3   |
                    |   XR Application |
                    +--------+---------+
                             |
                             | WebSocket
                             |
+------------------+         |         +------------------+
|    Wearable      +---------+---------+    Dashboard     |
|    Hardware      |   USB Serial      |    (Rust)        |
|    (FSR)         |                   |                  |
+------------------+                   +------------------+

Sensing

Current

  • FSR sensor on index finger to measure press force and pressure over time

In Progress

  • EMG integration using OpenBCI and BrainFlow to capture muscle activation during interaction

Current Study

We compare performance between a physical task and its XR equivalent to evaluate whether XR interaction can capture meaningful fine motor behavior.

Direction: This project focuses on measuring motor behavior in controlled tasks.


Data Output

Each trial logs:

Field Description
target_id Which target was pressed
stimulus_time When target lit up
press_time When press was registered
reaction_time Time to respond
accuracy Spatial error from center
trajectory Movement path (XR only)
force_signal FSR readings over time

Installation

Prerequisites

  • Unity 6 (6000.3.7f1 or later)
  • Rust toolchain (1.70+)
  • Arduino IDE (2.0+)
  • Meta Quest 3 with developer mode enabled

XR Application

  1. Clone the repository:

    git clone https://github.com/anaya33/Sollertia.git
    cd Sollertia
  2. Open game/ in Unity Hub

  3. Install required packages:

    • XR Interaction Toolkit
    • OpenXR Plugin
    • XR Hands
  4. Open Assets/SollertiaDemo.unity and press Play

For Quest 3 deployment, see QUEST_DEPLOYMENT.md.

Hardware

FSR (Index) → A0

Upload hardware/hardware.ino via Arduino IDE.

Dashboard

cd dashboard
cargo build --release
cargo run --release

Repository Structure

Sollertia/
|
|-- game/                    # Unity XR application
|   |-- Assets/
|   |   |-- Scripts/Sollertia/
|   |   |-- SollertiaDemo.unity
|
|-- dashboard/               # Rust dashboard
|   |-- Cargo.toml
|   |-- crates/
|
|-- hardware/                # Arduino firmware
|   |-- hardware.ino
|
|-- paper/                   # Research whitepaper (LaTeX)
|
|-- docs/                    # GitHub Pages site
|
|-- README.md
|-- LICENSE

History

Origin: UGAHacks XI

Sollertia began as a hackathon project at UGAHacks XI The original vision was a mixed-reality rehabilitation tool for stroke recovery, combining XR interaction with wearable pressure sensing.

Original Hackathon Team:

  • Anaya Yorke
  • David Salas C.
  • Garret Stand
  • Mathias Sosa

Evolution to Research

After the hackathon, the project evolved from a rehabilitation-focused prototype into a research system for studying fine motor control. The scope shifted from clinical rehabilitation to fundamental research on comparing motor behavior across physical and XR environments.


References

  1. Schoen et al., 2025. From Pegs to Pixels: A Comparative Analysis of the Nine Hole Peg Test and a Digital Copy Drawing Test for Fine Motor Control Assessment. PDF

  2. Lu et al., 2019. Modeling Endpoint Distribution of Pointing Selection Tasks in Virtual Reality Environments. PDF

  3. Chen et al., 2024. Metrics of Motor Learning for Analyzing Movement Mapping in Virtual Reality. PDF

  4. Wei et al., 2019. Accurate and Low-Latency Sensing of Touch Contact on Any Surface with Finger-Worn IMU Sensor. PDF

  5. Schneider et al., 2021. Accuracy Evaluation of Touch Tasks in Commodity Virtual and Augmented Reality Head-Mounted Displays. PDF


Team

Current Research Team

Name Role GitHub
Anaya Yorke Researcher @anaya33
Garret Stand Researcher @gstand

Original Hackathon Team (UGAHacks XI)

  • Anaya Yorke
  • David Salas C.
  • Garret Stand
  • Mathias Sosa

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.


Sollertia - Latin for "skill with hand"

View Whitepaper | Report Issues

About

a system for measuring fine motor control and sensorimotor behavior in XR using wearable sensing

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C# 56.7%
  • ShaderLab 27.5%
  • Rust 5.8%
  • HLSL 5.7%
  • TeX 4.0%
  • C++ 0.3%