Skip to content

Commit 026aeb5

Browse files
Merge pull request #161 from robot-descriptions/add/bambot
Add BamBot URDF description
2 parents cf59bf0 + ebde63d commit 026aeb5

File tree

7 files changed

+59
-18
lines changed

7 files changed

+59
-18
lines changed

CHANGELOG.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,15 @@ All notable changes to this project will be documented in this file.
66

77
### Added
88

9-
- Description: SO ARM 101 (URDF/MJCF) (thanks to @haixuantao)
10-
- Add `pull` in the CLI to pull `robot_description` and cache it. (thanks to @haixuantao)
9+
- CLI: Add `pull` command to `robot_description` and cache it (thanks to @haixuantao)
10+
- Description: BamBot (URDF)
11+
- Description: SO ARM 101 (MJCF) (thanks to @haixuantao)
12+
- Description: SO ARM 101 (URDF) (thanks to @haixuantao)
13+
14+
### Changed
15+
16+
- Rename `leap_hand_v1` to `leap_hand_v1_description`
17+
- Rename `so_arm100` to `so_arm100_description`
1118

1219
## [1.18.0] - 2025-06-19
1320

README.md

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ The DOF column denotes the number of actuated degrees of freedom.
149149
| `piper_mj_description` | PiPER | AgileX | MJCF | MIT |
150150
| `poppy_ergo_jr_description` | Poppy Ergo Jr | Poppy Project | URDF | GPL-3.0 |
151151
| `sawyer_mj_description` | Sawyer | Rethink Robotics | MJCF | Apache-2.0 |
152-
| `so_arm100` | SO-ARM100 | The Robot Studio | URDF | Apache-2.0 |
152+
| `so_arm100_description` | SO-ARM100 | The Robot Studio | URDF | Apache-2.0 |
153153
| `so_arm100_mj_description` | SO-ARM100 | The Robot Studio | MJCF | Apache-2.0 |
154154
| `so_arm101_description` | SO-ARM101 | The Robot Studio | URDF | Apache-2.0 |
155155
| `so_arm101_mj_description` | SO-ARM101 | The Robot Studio | MJCF | Apache-2.0 |
@@ -214,7 +214,7 @@ The DOF column denotes the number of actuated degrees of freedom.
214214
| `allegro_hand_description` | Allegro Hand | Wonik Robotics | URDF | [BSD](https://github.com/RobotLocomotion/models/blob/5c027ea961473cb558da30e1a749272a8a9fa3eb/allegro_hand_description/LICENSE.TXT) |
215215
| `allegro_hand_mj_description` | Allegro Hand | Wonik Robotics | MJCF | [BSD-2-Clause](https://github.com/google-deepmind/mujoco_menagerie/blob/main/wonik_allegro/LICENSE) |
216216
| `barrett_hand_description` | BarrettHand | Barrett Technology | URDF | [BSD](https://github.com/jhu-lcsr-attic/bhand_model/blob/937f4186d6458bd682a7dae825fb6f4efe56ec69/manifest.xml) |
217-
| `leap_hand_v1` | LEAP Hand v1 | Carnegie Mellon University | URDF | MIT |
217+
| `leap_hand_v1_description` | LEAP Hand v1 | Carnegie Mellon University | URDF | MIT |
218218
| `leap_hand_mj_description` | LEAP Hand | Carnegie Mellon University | MJCF | MIT |
219219
| `robotiq_2f85_description` | Robotiq 2F-85 | Robotiq | URDF | BSD-2-Clause |
220220
| `robotiq_2f85_mj_description` | Robotiq 2F-85 | Robotiq | MJCF | BSD-2-Clause |
@@ -255,18 +255,19 @@ The DOF column denotes the number of actuated degrees of freedom.
255255

256256
### Mobile manipulators
257257

258-
| Name | Robot | Maker | DOF | Format |
259-
|-------------------------------|-----------------------|--------------------------|-----|------------|
260-
| `eve_r3_description` | Eve R3 | Halodi | 23 | URDF |
261-
| `fetch_description` | Fetch | Fetch Robotics | 14 | URDF |
262-
| `ginger_description` | Ginger | Paaila Technology | 49 | URDF |
263-
| `pepper_description` | Pepper | SoftBank Robotics | 17 | URDF |
264-
| `pr2_description` | PR2 | Willow Garage | 32 | URDF |
265-
| `reachy_description` | Reachy | Pollen Robotics | 21 | URDF |
266-
| `stretch_description` | Stretch RE1 | Hello Robot | 14 | URDF |
267-
| `sretch_mj_description` | Stretch 2 | Hello Robot | 14 | MJCF |
268-
| `sretch_3_mj_description` | Stretch 3 | Hello Robot | 14 | MJCF |
269-
| `tiago_description` | TIAGo | PAL Robotics | 48 | URDF |
258+
| Name | Robot | Maker | Format | License |
259+
|-------------------------------|-----------------------|--------------------------|------------|---------|
260+
| `bambot_description` | BamBot | Tim Qian | URDF | [Apache-2.0](https://github.com/timqian/bambot/blob/04d902653794f9f72eeabb09ec90a9af8e397c5b/LICENSE) |
261+
| `eve_r3_description` | Eve R3 | Halodi | URDF | Apache-2.0 |
262+
| `fetch_description` | Fetch | Fetch Robotics | URDF | MIT |
263+
| `ginger_description` | Ginger | Paaila Technology | URDF | BSD |
264+
| `pepper_description` | Pepper | SoftBank Robotics | URDF | BSD-2-Clause |
265+
| `pr2_description` | PR2 | Willow Garage | URDF | BSD |
266+
| `reachy_description` | Reachy | Pollen Robotics | URDF | Apache-2.0 |
267+
| `stretch_description` | Stretch RE1 | Hello Robot | URDF | CC-BY-SA-4.0 ✖️ |
268+
| `sretch_mj_description` | Stretch 2 | Hello Robot | MJCF | Clear BSD |
269+
| `sretch_3_mj_description` | Stretch 3 | Hello Robot | MJCF | Apache-2.0 |
270+
| `tiago_description` | TIAGo | PAL Robotics | URDF | Apache-2.0 |
270271

271272
### Quadrupeds
272273

robot_descriptions/_descriptions.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,9 @@ def has_urdf(self) -> bool:
8080
"atlas_v4_description": Description(Format.URDF, tags={"humanoid"}),
8181
"b1_description": Description(Format.URDF, tags={"quadruped"}),
8282
"b2_description": Description(Format.URDF, tags={"quadruped"}),
83+
"bambot_description": Description(
84+
Format.URDF, tags={"mobile_manipulator"}
85+
),
8386
"barrett_hand_description": Description(
8487
Format.URDF, tags={"end_effector"}
8588
),
@@ -134,7 +137,9 @@ def has_urdf(self) -> bool:
134137
"jvrc_description": Description(Format.URDF, tags={"humanoid"}),
135138
"jvrc_mj_description": Description(Format.MJCF, tags={"humanoid"}),
136139
"laikago_description": Description(Format.URDF, tags={"quadruped"}),
137-
"leap_hand_v1": Description(Format.URDF, tags={"end_effector"}),
140+
"leap_hand_v1_description": Description(
141+
Format.URDF, tags={"end_effector"}
142+
),
138143
"leap_hand_mj_description": Description(
139144
Format.MJCF, tags={"end_effector"}
140145
),
@@ -189,8 +194,10 @@ def has_urdf(self) -> bool:
189194
),
190195
"skydio_x2_description": Description(Format.URDF, tags={"drone"}),
191196
"skydio_x2_mj_description": Description(Format.MJCF, tags={"drone"}),
192-
"so_arm100": Description(Format.URDF, tags={"arm"}),
197+
"so_arm100_description": Description(Format.URDF, tags={"arm"}),
193198
"so_arm100_mj_description": Description(Format.MJCF, tags={"arm"}),
199+
"so_arm101_description": Description(Format.URDF, tags={"arm"}),
200+
"so_arm101_mj_description": Description(Format.MJCF, tags={"arm"}),
194201
"solo_description": Description(Format.URDF, tags={"quadruped"}),
195202
"spot_mj_description": Description(Format.MJCF, tags={"quadruped"}),
196203
"spryped_description": Description(Format.URDF, tags={"biped"}),

robot_descriptions/_repositories.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,11 @@ class Repository:
4646
commit="6adc14720aab583613975e5a9d6d4fa3cfcdd081",
4747
cache_path="anymal_d_simple_description",
4848
),
49+
"bambot": Repository(
50+
url="https://github.com/timqian/bambot.git",
51+
commit="04d902653794f9f72eeabb09ec90a9af8e397c5b",
52+
cache_path="bambot",
53+
),
4954
"baxter_common": Repository(
5055
url="https://github.com/RethinkRobotics/baxter_common.git",
5156
commit="6c4b0f375fe4e356a3b12df26ef7c0d5e58df86e", # v1.2.0
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: utf-8 -*-
3+
#
4+
# SPDX-License-Identifier: Apache-2.0
5+
# Copyright 2025 Inria
6+
7+
"""BamBot description."""
8+
9+
from os import getenv as _getenv
10+
from os import path as _path
11+
12+
from ._cache import clone_to_cache as _clone_to_cache
13+
14+
REPOSITORY_PATH: str = _clone_to_cache(
15+
"bambot",
16+
commit=_getenv("ROBOT_DESCRIPTION_COMMIT", None),
17+
)
18+
19+
PACKAGE_PATH: str = _path.join(REPOSITORY_PATH, "website", "public", "URDF")
20+
21+
URDF_PATH: str = _path.join(PACKAGE_PATH, "bambot_v0.urdf")
File renamed without changes.

0 commit comments

Comments
 (0)