Repository navigation
Enable G1 and GR1T2 tasks with kitless XR - #8789
hougantc-nvda wants to merge 11 commits into
Conversation
4e29130 to
153bbb1
Compare
1048f45 to
fdb2682
Compare
512c5f4 to
4d9027a
Compare
|
@greptile Please review the latest changes in this PR. |
[High impact] The PR reaches registered tasks, shared rendering, simulation setup, and live and replay teleoperation. Update the failed-seal test renderer before merging; both cases now stop before reaching their checks. Findings
SummaryEnables G1 and GR1T2 tasks with kitless physics while retaining Kit defaults.
The supplied previous threads are unnumbered. The scene-check, live-reset and standalone-startup fixes are present. Diagram%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Resolved task configuration] --> B[HumanoidTeleopEnv]
B --> C{Selected physics}
C -->|Kit| F[Base environment construction]
C -->|OvPhysX or Newton| D[Prepare task backend]
D --> E[Check prior preparation and bind spawn callback]
E --> F
F --> G[Create scene and action managers]
Reviews (4) · Last reviewed commit: "Prepare registered humanoid tasks before..." · Reviewed by Greptile |
4d9027a to
b1de1f7
Compare
a0c2c77 to
694150b
Compare
694150b to
d337b9b
Compare
|
@greptile please review this PR again at the latest head ( |
There was a problem hiding this comment.
Isaac Lab Review Bot
All reviewed code categories look good.
- PR description: The title and body understate the renderer, replay, SO101, launcher, and visualizer changes; summarize those areas and report validation performed on the final head.
- Design and architecture: Architecture looks good.
- Scope and over-engineering: No over-engineering issues.
- API: API changes look good.
- Compatibility and deprecation: No breaking changes identified.
- Implementation: Implementation looks good.
- Style consistency: Style consistency looks good.
- Test quality: Test quality looks good.
No blocking issues. No inline findings.
The full PR diff was reviewed; some supplemental surrounding file context was omitted.
Automated review; human maintainers own approval decisions.
|
@isaaclab-review-bot review |
Description
Review stack · 3/5: #8787 → #8788 → #8789 → #8790 → #8791
Review only this PR’s changes. The PRs target
main; the comparison isolates this layer from its predecessors.Enable the registered GR1T2, G1 locomanipulation and fixed-base G1 tasks to run with kitless Newton or CPU OvPhysX. Explicit physics selectors choose matching task presets and USD variants; omitting the selector preserves Kit defaults.
isaaclab_tasks. Teleop consumes those configurations through the existing adapter.The existing G1 head camera remains available at this PR boundary; wrist cameras and presentation changes belong to #8790.
Registered humanoid tasks prepare their selected backend before scene construction through both
gym.make()andinstantiate(cfg). Repeated preparation preserves caller overrides and copied settings. Declared spawn settings and module-level callbacks preserve prepared-config serialization/restoration. GR1T2 uses normal independent configuration copies. Its enabled action reads conditioned hand limits and mimic metadata from the actual asset-owned spawn result, so restoring a copied configuration does not mutate its source. Changing backends after preparation requires a fresh configuration. Task construction tests remain independent of optional teleop imports; the XR integration harness stays inisaaclab_teleop.See registered tasks and physics selectors.
Dependencies: public
isaaccapture==1.7.93a1from NVIDIA’s Python index, using the optional XR selection documented in #8788. The stack includes upstream's merged provider upgrade #8858; the installation recipe reuses its OVRTX, OVStage, OvPhysX and schema declarations. Project-wide Kit/provider defaults are unchanged.Backend preparation preserves required physics/action setup when optional teleoperation configuration is absent. Input bounds are named with their units and purpose; their values and physics tuning are unchanged.
Type of change
GR1T2 presets use the supported
joint_effort_limitfield with the task-specific tuned values.Testing
At this PR boundary (
f610df778807): 231 passed, 2 skipped, 10 deselected, 36 warnings in the selected renderer, adapter, live/replay and task-owner suites applicable to this layer. These boundary runs overlap; their counts are not additive. Repository formatting/lint and the Python 3.12 changelog check pass. The reused public-package environment passesuv pip checkfor all 268 installed packages.The task regressions exercise real registered constructors, public config serialization/restoration, and the actual Asset copy/spawn boundary. The GR1T2 action consumes the spawned asset’s conditioned hand metadata without custom copy semantics. G1 bounds/validation tests cover multiple environments and non-identity joint ordering.
Cumulative runtime integration at
4e608f200e21: public Capture 1.7.93a1 and the published CLI passed IWER scene/control checks for GR1T2 CPU OvPhysX, GR1T2 split-GPU Newton, fixed-base G1 split-GPU Newton, G1 locomanipulation CPU OvPhysX with--headless, and SO101 CPU OvPhysX. Both reconstructed eyes, meaningful motion and Reset were inspected. Requested PiP feeds and the default Vulkan mirror worked; closing the mirror shut down each non-headless instance normally. Headless G1 created no mirror even with the explicit mirror flag, retained PiP/streaming and exited normally after a deliberate owner interrupt. GR1T2 Newton and headless G1 also passed disconnect/reconnect and resumed motion. SO101 passed clutch/gripper checks; cube retention is not qualified.With the same packages, hardware, input, seed and warm caches, GR1T2 CPU delivered 49.2 median decoded video frames/sec versus baseline runs of 49.0 and 50.4; fixed-base G1 Newton delivered 32.8 versus 33.0. Each median uses three 10-second steady windows. These bounded comparisons showed no material streaming slowdown; they do not measure headset FPS or establish a full physics-performance guarantee.
Fresh physical-headset, full native Kit/Isaac Sim, and native MCAP-file replay qualification were not performed in this follow-up. The historical cold-attach and intermittent GR1T2 first-Play reports remain open; successful warm runs do not establish a fix. Existing native USD/asset and split-GPU camera-device warnings remain visible.
Checklist
source/<pkg>/changelog.d/for every touched package (do not editCHANGELOG.rstor bump package versions — CI handles that)CONTRIBUTORS.mdor my name already exists thereThe warnings checkbox remains open: native-runtime warnings and the separate Kit dependency selection are not fully qualified by this run.