Dexterity is a capstone project developed by ECE students at the University of Virginia (Class of 2025). The project consists of a robotic hand that can be controlled using a haptic feedback glove, providing a natural and intuitive way to control robotic movements while receiving tactile feedback. Three members of our team traveled to the Bay Area in December 2024 to showcase the project at the Humanoids Summit in the Hugging Face booth (pictured above).
An summary of the project can be found in these Figma slides.
The videos below showcase how the system's responsiveness and precision enable it to consistently catch balls.
full.finger.and.thumb.movement.mp4
3.ball.catch.1.mov
HapticGlove/
- Firmware for the V2 control gloveRoboticArm/
- Firmware for the dexhandPrototypeGlove/
- Firmware for the prototype control gloveESPNOW/
- ESP-NOW wireless communication implementationstest/
- Various test implementations and debugging tools
cad/
- CAD files for 3D printingarm base/
- CAD files for the arm base and wire organizationglove v2.4/
- CAD files for the latest interation of the V2 gloveold/
- CAD files for the previous iterations of the V2 glove
pcb/
Forearm/
- PCB design files for the forearmHand/
- PCB design files for the handLibrary/
- KiCad library filesgerber/
- Gerber files for manufacturing
requirements/
- Project requirements and specifications from our capstone classreports/
- Project reports and presentations from our capstone class
images/
- Photos of the project and componentsvideos/
- Demo videos and presentationsdiagrams/
- System diagrams and illustrations
- Based on the open-source Dexhand project
- Forearm shell and arm base were FDM printed using PETG filament
- Everything else was resin printed using ABS-like resin, which provided smoother finishes and more accurate fits due to the higher resolution of SLA printing
- 16 degrees of freedom (DOF) across five fingers
- 3 DOF per finger (flexion of PIP, flexion of MCP, abduction/adduction)
- 4 DOF for thumb (extra degree for rotation)
- Controlled by EMAX ES3352 digital servos
- 2 DOF in the wrist (pitch and yaw)
- Controlled by Feetech SCS2332 serial servos
- These provide increased range of motion and torque in addition to having overcurrent protection
- Controlled by ESP32-S3 DevKitC-1 microcontroller
- Housed on a Proto-PCB
- ESP-NOW protocol for low-latency communication
- Force-sensitive resistors on each fingertip
- 5kg maximum pressure sensing
- These are wired up to a voltage divider circuit that connects to ADC channels on the ESP32
- System is powered by a 6V 10A power supply
- Directly supplies power to servos
- 3.3V regulation for control electronics
- Wired through an amp meter for monitoring current draw
- Original repository can be found here: Prototype Finger Tracker
- Hall effect sensor-based finger tracking
- Each joint that was tracked had a rotating magnet and a hall effect sensor
- 3 DOF per finger (flexion of PIP, flexion of MCP, abduction/adduction)
- 4 DOF for thumb (extra degree for rotation)
- Multiplexed sensor reading
- Controlled by a Xiao ESP32-C3 microcontroller
- ESP-NOW protocol for low-latency communication
- Provided very accurate and responsive finger tracking
- Same hall effect sensor-based finger tracking as the prototype glove
- 16 sensors total
- Electrical complexity of the system introduced a lot of noise into the system, making the finger tracking less accurate than the prototype glove
- Dual PCB design
- Hand PCB for sensors and haptics
- Forearm PCB for processing and power
- Connected with two ribbon cables
- Dual IMU system for wrist orientation
- One IMU on hand PCB
- One IMU on forearm PCB
- Quaternion-based orientation calculation
- Haptic feedback system
- Linear Resonant Actuators on each fingertip
- I2C multiplexer for managing multiple LRA drivers
- Variable intensity based on pressure sensing
- 3D printed design
- Finger buckets housed LRA drivers and clamped onto fingers using rubber bands
- Modular finger assemblies allowed easy swapping of parts during development
- 2 straps per PCB housing attached the device to your hand
- Controlled by ESP32-S3 DevKitC-1 microcontroller
- Housed on the Forearm PCB
- ESP-NOW protocol for low-latency communication
- Control panel with LED indicators and mode switches
- Capable of running on battery power due to the onboard 3.3V regulator
- Good luck with building everything :)
- Clone the repository
- Install PlatformIO extension for VSCode
- Open the desired project folder
- Build and upload to your device
- Max Titov
- Alex Schaefer
- Jackson Lamb
- Jacob Hall
- Bhargav Moosani
- Original Dexhand Repository - Our robotic hand design is based on The Robot Studio's Dexhand project, licensed under CC BY-NC-SA 4.0.
- Dexhand Website - Trent Shumay from IoT Design Shop built two Dexhands and put together a website that compiled info about the project into a single page.
- Prototype Finger Tracker - My first glove that tracked 16 DOF of the fingers. This glove was used in a lot of the demonstrations of the teleop due to its better finger tracking capabilities.
- Nepyope's Youtube - The video of the first 16 DOF glove using hall effect sensors that inspired this whole project.
- Nepyope's Project Homunculus - The repository for the glove that inspired this project.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.