Skip to content

fix: Jetson Orin install — pin numpy<2 first, drop [monolithic], gate lerobot behind Python 3.12+#138

Merged
rylinjames merged 2 commits into
FastCrest:mainfrom
DsThakurRawat:fix/jetson-orin-install
May 17, 2026
Merged

fix: Jetson Orin install — pin numpy<2 first, drop [monolithic], gate lerobot behind Python 3.12+#138
rylinjames merged 2 commits into
FastCrest:mainfrom
DsThakurRawat:fix/jetson-orin-install

Conversation

@DsThakurRawat
Copy link
Copy Markdown
Collaborator

Description

Fixes three bugs that cause pip install to fail on Jetson Orin Nano (JetPack 6 / L4T R36.x / Python 3.10):

  1. NumPy ABI crash — Jetson AI Lab torch and onnxruntime-gpu wheels are compiled against NumPy 1.x. install.sh pinned numpy<2 after the main pip install which already pulled numpy 2.x → both libraries crash on import.
  2. lerobot ResolutionImpossible[monolithic] extra pins lerobot==0.5.1 which requires Python ≥3.12. JetPack 6 ships Python 3.10 → pip hard-fails.
  3. torch from wrong indexinstall.sh pulled torch from standard PyPI (x86_64-only) instead of the Jetson AI Lab index.

Changes:

  • pyproject.toml: Added python_version >= '3.12' markers to all 3 lerobot==0.5.1 pins ([native], [monolithic], [rtc]). Pip now skips lerobot on Python 3.10/3.11 instead of crashing.
  • install.sh: Changed Jetson extras from [serve,monolithic][serve]. Moved GPU dep install (numpy<2, torch, ort) before pip install reflex-vla. Added torch install from Jetson AI Lab index.
  • examples/02-deploy-smolvla-jetson.md: Rewrote install section with correct order and two-step deploy workflow (export on desktop, serve on Jetson).
  • docs/troubleshooting.md: Added two new entries under "Jetson-specific issues" for the NumPy ABI crash and lerobot resolution failure.

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • Documentation update

How Has This Been Tested?

  • pytest tests/ passes locally (59 passed)
  • bash -n install.sh syntax check passes
  • reflex doctor sanity check
  • Other (please specify): Traced against exact error logs from NVIDIA researcher testing on Orin Nano (JetPack 6 / R36.4.7 / Python 3.10.12)

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • I have kept the PR scoped to a single concern (one concern per PR)

… lerobot behind Python 3.12+

Three bugs caused Jetson Orin Nano (JetPack 6 / Python 3.10) installs to fail:

1. numpy ABI crash: Jetson AI Lab torch and onnxruntime-gpu wheels are
   compiled against NumPy 1.x, but pip pulled numpy 2.x (no constraint).
   Fix: pin numpy<2 BEFORE installing torch/ort.

2. lerobot ResolutionImpossible: [monolithic] depends on lerobot==0.5.1
   which requires Python >=3.12, but JetPack 6 ships Python 3.10.
   Fix: add python_version >= '3.12' marker to all lerobot pins;
   change Jetson extras from [serve,monolithic] to [serve] only.

3. torch from wrong index: install.sh pulled torch from standard PyPI
   (x86_64-only). Fix: pre-install torch from Jetson AI Lab index
   before pip install reflex-vla.

Tested: bash -n install.sh, pytest tests/ (59 passed).
@DsThakurRawat DsThakurRawat requested a review from rylinjames as a code owner May 17, 2026 13:08
@DsThakurRawat
Copy link
Copy Markdown
Collaborator Author

LOOKS GOOD TO ME

@DsThakurRawat
Copy link
Copy Markdown
Collaborator Author

@gemini-code-assist review

@rylinjames rylinjames merged commit f9811d2 into FastCrest:main May 17, 2026
6 checks passed
rylinjames added a commit to DsThakurRawat/reflex-vla that referenced this pull request May 19, 2026
The existing 10 m/s ceiling capped end-effector velocity, which made
sense for arms but blocked legitimate aerial flight speeds. Quadcopter
and delivery drones routinely operate at 15-50 m/s (54-180 km/h).

Raises max from 10.0 -> 50.0 and polishes the description to make the
dual-use semantics explicit. None of the four shipped presets are
affected (franka 1.0, ur5 1.0, so100 0.5, quadcopter 5.0 — all well
under both ceilings).

Originally proposed by @DsThakurRawat in FastCrest#119; this commit applies just
the actual schema delta on top of current main, since the PR branch
predated FastCrest#132 (quadcopter preset) and FastCrest#134-FastCrest#138 — naively merging would
have reverted that work.

Co-Authored-By: DsThakurRawat <divyanshrawatofficial@gmail.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
rylinjames added a commit that referenced this pull request May 19, 2026
…nts (#119)

The existing 10 m/s ceiling capped end-effector velocity, which made
sense for arms but blocked legitimate aerial flight speeds. Quadcopter
and delivery drones routinely operate at 15-50 m/s (54-180 km/h).

Raises max from 10.0 -> 50.0 and polishes the description to make the
dual-use semantics explicit. None of the four shipped presets are
affected (franka 1.0, ur5 1.0, so100 0.5, quadcopter 5.0 — all well
under both ceilings).

Originally proposed by @DsThakurRawat in #119; this commit applies just
the actual schema delta on top of current main, since the PR branch
predated #132 (quadcopter preset) and #134-#138 — naively merging would
have reverted that work.

Co-authored-by: RomirJ <playindus@gmail.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants