Dexsensorless is an open-source framework that estimates contact forces from joint torques using robotic dynamics, enabling sensorless force estimation in dexterous manipulation tasks.
Note: This paper is currently under review. Additional code and resources will be released upon acceptance.
- Identify base inertia parameters for the robot hand
- Implement momentum-based collision detection
- Expand PyQt UI for easier finger/link selection
- Validate real-world force estimation via collision experiments
- Training code for imitation learning
First, install the SymPyBotics
git clone https://github.com/cdsousa/SymPyBotics.git
cd sympybotics
python setup.py installThen, clone the repository and navigate into the directory:
git clone https://github.com/Prevalenter/DynaForce.git- Python 3.8 is required.
- If you want to try the interactive simulation demo, make sure to install PyQt5.
- All package versions are listed in
utils/python_version.txt.
If you have any questions, please submit an issue.
The repository is organized to support both simulation and real-world experiments for dynamic identification and force estimation.
data/: Contains robot models (.pkl), sample motion data, and identification results.ident/: Core scripts for identification and estimation.ident/real/: Scripts for experiments with the real robot, including multi-algorithm identification (ident_multi_algo.py) and momentum-based force prediction (fore_calibrate/pred_momentum.py).ident/sim/: Scripts for simulation, including an interactive demo with a GUI (sim_interaction_qt.py).
utils/: Utility functions, including robot model generation and data processing.
The typical workflow involves:
- Running an identification script from
ident/real/to compute the robot's dynamic parameters from collected data. - Using these parameters in either the simulation (
ident/sim/) or real-world force estimation scripts.
cd ident/real/
python ident_single.pyWe deployed our algorithm in the simulation, allowing the selection of force-applied members through an interactive UI, and printed the detection results.
cd ident/sim/
python sim_interaction_qt.pycd ident/real/fore_calibrate/
python pred_nacfo.py --K 2.5This project builds upon the work of several amazing open-source libraries, including:
- GX11: For dexterous hand hardware.
- SymPyBotics: For robot dynamic identification.
- LeRobot: For state-of-the-art imitation learning.
We are grateful to the developers and communities behind these projects.

