Towards human-resolution haptics: A high bandwidth, high density, wearable tactile display
Data files
Oct 22, 2025 version files 629.67 MB
-
characterization.zip
629.61 MB
-
demo.zip
49.35 KB
-
README.md
7.50 KB
Abstract
Despite advances in digitizing vision and hearing, touch still lacks an equivalent digital interface matching the fidelity of human perception. This gap limits the quality of digital tactile information and the realism of virtual experiences. Here, we introduce a step towards human-resolution haptics: a class of wearable tactile displays designed to match the spatial and temporal acuity of the human fingertip. Our device, VoxeLite, is a 0.1 mm-thick, 0.19 g, skin-conformal array of individually addressable soft electroadhesive actuators (“nodes”). As users touch and move across surfaces, VoxeLite deliver high-resolution distributed forces via the nodes. Enabled by scalable microfabrication techniques, the display achieves actuator densities up to 110 nodes/cm², produces stimuli up to 800 Hz and remains transparent to real-world tactile input. We demonstrate its ability to render small-scale hapticons, virtual textures, and transmit physical surfaces, validated through human psychophysics and biomimetic sensing. These findings position VoxeLite as a platform for human-resolution haptics in immersive interfaces, robotics, and digital touch communication.
Dataset DOI: 10.5061/dryad.63xsj3vd9
Description of the data and file structure
All data files are in matlab (.mat) format.
File: characterization.zip
Description: This folder contains all the data used in characterizing different versions of VoxeLite. Each data set contains the recorded bulk finger velocity (obtained from a Laser Doppler Vibrometer) and the lateral force response (obtained from a force sensor) of VoxeLite.
File naming
Each file contains data for one version of VoxeLite. The parameters of VoxeLite that were changed are:
- concentration of carbon nanotube additives: indicated by "cLatex_x", where x is either "0.5", "1.0", "1.5", or "2.0". If no indication is made, "1.0" was used.
- 0.5 = 0.83 wt% CN
- 1.0 = 1.65 wt% CN
- 1.5 = 2.48 wt% CN
- 2.0 = 4.1 wt% CN
- shore hardness of the node: indicated by "20A", "40A", or "60A". If no indication is made, "40A" was used.
File: optimization
Description: This folder contain all data used in optimizing the electrical and mechanical properties of VoxeLite. Naming convention of files are:
"calibration_cLatex-concentration of carbon nanotubes-actuation frequency-shore hardness (40A if not indicated)-combined"
e.g. "calibration_cLatex-1.5-100Hz-20A-combined.mat": VoxeLite that has 2.48 wt% CN, actuated at 100 Hz, and has a shore hardness of 20A.
File content
Each file contains a struct that contains all the test data for a given version of VoxeLite, based on the file name. Each struct contains 8 variables:
- DAQ: data collected from the DAQ
- Time: timestamps for the data collected, in seconds
- Dev1_ai8: LDV data, in V
- Dev1_ai7: Lateral Force data, in V
- Fs: DAQ sampling rate for a given test run
- voltage: actuation voltage for a given test run, in V
- device: device number for a given test run. 3 different devices are tested for each version of VoxeLite.
- frequecy: actuation frequency for a given test run, in Hz
- velocityScale: LDV scale to convert from V to mm/s
File: spatiotemporal
Description: This folder contain all data used in characterisng the spatiotemporal response of VoxeLite. A single version of the device was used (1.65 wt% CN, 40A). The charactersation includes:
- A frequency sweep from 2 - 77 Hz, at 5 actuation voltages:
- files labeled "freq-cLatex-1.0-40A-actuation voltage.mat"
- A voltage sweep from 60 - 200V, at with actaution frequecies of 100 - 250 Hz:
- files labeled: "voltage-cLatex-1.0-40A-actuation frequency.mat"
File content
Each file contains a struct that contains all the test data for a given version of VoxeLite, based on the file name. Each struct contains 8 variables:
- DAQ: data collected from the DAQ
- Time: timestamps for the data collected, in seconds
- Dev1_ai8: LDV data, in V
- Dev1_ai7: Lateral Force data, in V
- Dev1_ai14: scaled input voltage, in V
- Fs: DAQ sampling rate for a given test run
- voltage: actuation voltage for a given test run, in V
- frequecy: actuation frequency for a given test run, in Hz
- velocityScale: LDV scale to convert from V to mm/s
File: transparency
Description: This folder contain all data used in characterisng the haptic transparency of the device when interacting with 8 different textures.
3 conditions were used:
- bare: "bare finger condition" where sensor was left bare
- device: VoxeLite was attached to the sesnor similarly to how it is attached to a real finger
- latex: a 0.5mm thick of latex is attached to the sensor
8 textures were used:
- Bedding 1: polyester bedding
- Bedding 2: cotton bedding
- Corduroy 9 wale
- Corduroy 14 wale
- leather green: full grain leather
- leather grey: faux leather
- towel 1: microfiber towel
- towel 2: terrycloth towel
File content
Each file contains 2 variables:
- SEP: mean pixel value data from 29 2x2 mm blocks selected from the recorded sensor video, across 900 frames
- str: name of file
File: demo.zip
Description: This folder contain all subect responses from the haptic demonstrations. Three demonstrations were performed:
- "direction": identifying hapticon (active state).Responses are located in files named "direction_Sx", where x is the subject number.
- "texture": identifying textures (active state). Responses are located in files named "textureTest_Sx", where x is the subject number
- "matching": matching real textures in bare finger, latex (plain_thick), or VoxeLite (6x6) condition. Responses are located in files named "matching_Sx_condition", where x is the subject number, and condition is one of the above mentioned conditions.
File content
Each file contains a struct that contains all the test data for a given subject. Each struct contains 3 variables:
- trialNum: test trial number
- for direction test (direction_Sx.m files)
- dirSent: direction number presented to subject
- ans: answer number answer provided by subject
- for texture test (textureTest_Sx.m files)
- textureSim: texture number presented to subject
- textureAns: texture number answer provided by subject
- for matching test (matching_Sx_condition.m files)
- order: texture number that was presented
- AnsName: answer provided by subject
Code/software
MatLab 2022b was used to visualize the experimental data. The file name of Matlab code includes the Figure number and a short description of it.
- "conductivityPlot.m": This Matlab script calculates and plots a comparison graph of VoxeLite with different conductivities. The script read data from "calibration_cLatex-x-100Hz-combined.m".
- "modulusPlot.m": This Matlab script calculates and plots a comparison graph of VoxeLite with different moduli. The script read data from "calibration_cLatex-1.5-100Hz-20A-combined.m", "calibration_cLatex-1.5-100Hz-combined.m", and "calibration_cLatex-1.5-100Hz-60A-combined.m".
- "frequencySweep.m": This Matlab script calculates and plots a comparison graph of VoxeLite actuated at different frequencies. The script read data from "freq-cLatex-1.0-40A-x.m"
- "voltageSweep.m": This Matlab script calculates and plots a comparison graph of VoxeLite actuated at different voltages. The script read data from "voltage-cLatex-1.0-40A-x"
- "gaborfiltering.m": This Matlab script calculates and plots the Spatial Event plots obtained with the sensor. The script read data from the "transparency" folder.
- "demos.m" This Matlab script calculates and plots the results from the haptic demonstration. The script read data from the "demo" folder.
Human subjects data
All study procedures were approved by the Northwestern University Institutional Review Board. Participants provided explicit informed consent for the public release of de-identified data. To ensure anonymity, all direct identifiers (e.g., names, contact information, and other personally identifying details) were removed from the dataset. Each participant was assigned a random numeric code unrelated to their identity, and no indirect identifiers that could reasonably be used to re-identify individuals were retained.
