diff --git a/python/example_robot_data/robots_loader.py b/python/example_robot_data/robots_loader.py
index a4d7b620..e759f239 100644
--- a/python/example_robot_data/robots_loader.py
+++ b/python/example_robot_data/robots_loader.py
@@ -387,6 +387,18 @@ class PandaLoader(RobotLoader):
urdf_subpath = "urdf"
+class AllegroRightHandLoader(RobotLoader):
+ path = "allegro_hand_description"
+ urdf_filename = "allegro_right_hand.urdf"
+ urdf_subpath = "urdf"
+
+
+class AllegroLeftHandLoader(RobotLoader):
+ path = "allegro_hand_description"
+ urdf_filename = "allegro_left_hand.urdf"
+ urdf_subpath = "urdf"
+
+
class UR3Loader(RobotLoader):
path = "ur_description"
urdf_filename = "ur3_robot.urdf"
@@ -489,6 +501,8 @@ class IrisLoader(RobotLoader):
"kinova": KinovaLoader,
"laikago": LaikagoLoader,
"panda": PandaLoader,
+ "allegro_right_hand": AllegroRightHandLoader,
+ "allegro_left_hand": AllegroLeftHandLoader,
"romeo": RomeoLoader,
"simple_humanoid": SimpleHumanoidLoader,
"simple_humanoid_classical": SimpleHumanoidClassicalLoader,
diff --git a/robots/allegro_hand_description/meshes/base_link.STL b/robots/allegro_hand_description/meshes/base_link.STL
new file mode 100644
index 00000000..5901473f
Binary files /dev/null and b/robots/allegro_hand_description/meshes/base_link.STL differ
diff --git a/robots/allegro_hand_description/meshes/base_link_left.STL b/robots/allegro_hand_description/meshes/base_link_left.STL
new file mode 100644
index 00000000..365d7e7f
Binary files /dev/null and b/robots/allegro_hand_description/meshes/base_link_left.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_0.0.STL b/robots/allegro_hand_description/meshes/link_0.0.STL
new file mode 100755
index 00000000..6db5cdb1
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_0.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_1.0.STL b/robots/allegro_hand_description/meshes/link_1.0.STL
new file mode 100644
index 00000000..84e43514
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_1.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_12.0_left.STL b/robots/allegro_hand_description/meshes/link_12.0_left.STL
new file mode 100644
index 00000000..aeaa37a1
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_12.0_left.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_12.0_right.STL b/robots/allegro_hand_description/meshes/link_12.0_right.STL
new file mode 100755
index 00000000..7eecece5
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_12.0_right.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_13.0.STL b/robots/allegro_hand_description/meshes/link_13.0.STL
new file mode 100644
index 00000000..3ca4ec36
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_13.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_14.0.STL b/robots/allegro_hand_description/meshes/link_14.0.STL
new file mode 100644
index 00000000..73d6f695
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_14.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_15.0.STL b/robots/allegro_hand_description/meshes/link_15.0.STL
new file mode 100644
index 00000000..e16bff45
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_15.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_15.0_tip.STL b/robots/allegro_hand_description/meshes/link_15.0_tip.STL
new file mode 100644
index 00000000..9b1d8119
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_15.0_tip.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_2.0.STL b/robots/allegro_hand_description/meshes/link_2.0.STL
new file mode 100644
index 00000000..20a911a4
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_2.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_3.0.STL b/robots/allegro_hand_description/meshes/link_3.0.STL
new file mode 100644
index 00000000..a1fffee0
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_3.0.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_3.0_tip.STL b/robots/allegro_hand_description/meshes/link_3.0_tip.STL
new file mode 100644
index 00000000..b7d9be8a
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_3.0_tip.STL differ
diff --git a/robots/allegro_hand_description/meshes/link_4.0.STL b/robots/allegro_hand_description/meshes/link_4.0.STL
new file mode 100644
index 00000000..ae75f704
Binary files /dev/null and b/robots/allegro_hand_description/meshes/link_4.0.STL differ
diff --git a/robots/allegro_hand_description/urdf/allegro_left_hand.urdf b/robots/allegro_hand_description/urdf/allegro_left_hand.urdf
new file mode 100644
index 00000000..ddcd1069
--- /dev/null
+++ b/robots/allegro_hand_description/urdf/allegro_left_hand.urdf
@@ -0,0 +1,509 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/robots/allegro_hand_description/urdf/allegro_right_hand.urdf b/robots/allegro_hand_description/urdf/allegro_right_hand.urdf
new file mode 100644
index 00000000..c5d068d7
--- /dev/null
+++ b/robots/allegro_hand_description/urdf/allegro_right_hand.urdf
@@ -0,0 +1,503 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/unittest/test_load.py b/unittest/test_load.py
index 7e1d4150..813ce080 100755
--- a/unittest/test_load.py
+++ b/unittest/test_load.py
@@ -86,6 +86,12 @@ def test_kinova(self):
def test_panda(self):
self.check("panda", 9, 9)
+ def test_allegro_right(self):
+ self.check("allegro_right_hand", 16, 16)
+
+ def test_allegro_left(self):
+ self.check("allegro_left_hand", 16, 16)
+
def test_romeo(self):
self.check("romeo", 62, 61)