jetson-customize-camera
Enable MIPI/GMSL camera sensors on a Jetson Thor or Orin custom carrier by rendering a kernel-DT overlay from the in-tree sensor DTSI.
Skill by Jetson Team
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/nvidia-jetson-customize-camera
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/jetson-customize-camera
What's inside
- Skill name
jetson-customize-camera- Description
- Enable MIPI/GMSL camera sensors on a Jetson Thor or Orin custom carrier by rendering a kernel-DT overlay from the in-tree sensor DTSI. Do NOT use for UPHY lane allocation or ODMDATA edits.
- License
- Apache-2.0
- Metadata
- author: Jetson Team · domain: meta · data-classification: public
- Instructions
- 180 lines in SKILL.md · view on GitHub
Files (11)
- BENCHMARK.md
- SKILL.md
- evals.json · evals/
- README.md · references/camera-overlay-templates/
- dphy-direct.dts.tmpl · references/camera-overlay-templates/
- gmsl-serdes.dts.tmpl · references/camera-overlay-templates/
- csi-dt-bindings.md · references/
- overlay-template.md · references/
- procedure.md · references/
- skill-card.md
- skill.oms.sig
SKILL.md (first lines)
# Customize camera (CSI / MIPI / GMSL sensor bring-up) ## Overview Tegra264 (Thor) and Tegra234 (Orin) expose a single `tegra-capture-vi` controller fronted by NVCSI and a fixed set of CSI ports. Camera bring-up is: 1. **Sensor selection** — picked from the set NVIDIA ships in-tree `.dtsi` references for on the active platform. 2. **Carrier + module support check** — verified against the Camera Development Guide, Adaptation Guide §Camera, carrier schematic, Module TRM, and carrier pinmap. 3. **Wiring** — derived from the in-tree `tegra<soc>-camera-<sensor>*.dtsi` when one exists (**the DTSI IS the wiring source of truth**); captured per-sensor from the user when the sensor is custom. 4. **Kernel-DT overlay** — cpp-expand the in-tree DTSI, extract its `fragment@N` body, append into the composite custom overlay `.dts` for the active target (per [`../../references/bsp-customization-kernel-dtb.md`](../../references/bsp-customization-kernel-dtb.md)), verify the composite with `fdtoverlay`. `/jetson-build-source` compiles the composite and owns the carrier conf's `OVERLAY_DTB_FILE+=` registration. **Agentic, not table-driven** — sensor list is built at runtime by globbing in-tree per-sensor dtbos. No `_THOR_CAMERAS` dict, no `questions.json`, no Python renderer in the question path. **No ODMDATA edit** — cameras don't consume UPHY lanes (CSI is a separate PHY pool). The skill emits only a kernel-DT overlay; the ODMDATA line in the carrier conf is untouched by this skill. The output is **one commit**: - Camera `fragment@N` block (plus `jetson-header-name` on the composite root if not already present) appended to the composite custom overlay `.dts` per [`../../references/bsp-customization-kernel-dtb.md`](../../references/bsp-customization-kernel-dtb.md) → committed to the `bsp_sources/` hardware repo. `/jetson-build-source` compiles the composite to `.dtbo` and owns its Makefile + flash-conf registration. ## When to invoke - The user says "enable camera", "configure CSI", "wire a Hawk / Owl / IMX sensor", "MIPI camera", "GMSL camera", or asks to bring up `tegra-capture-vi` / NVCSI on a custom carrier. - Flash boots but `v4l2-ctl --list-devices` shows no `tegra-capture-vi` channels, OR sensor enumeration on a fresh daughter-card needs to be confirmed. - A sensor was previously enabled and the user wants to add another (multi-sensor bring-up). **Prerequisites:** - Active profile with `reference_devkit:` + `custom_carrier:` blocks. - `<source.root_path>/Linux_for_Tegra/.git` exists (`/jetson-init-source`). - `/jetson-derive-carrier` has run — the carrier flash-conf fork is in the overlay tracker. - `<source.root_path>/bsp_sources/hardware/nvidia/<chip-dir>/nv-public/overlay/` exists and contains the in-tree per-sensor `.dtsi` files (sourced by `/jetson-init-source`'s Branch A archive extract). - `<source.root_path>/bsp_sources/kernel/kernel-noble/include/dt-bindings/` contains the macro headers cpp needs (`source_sync.sh` may need to run if Branch B was used — see Step 5a.i below). - Source-of-truth docs registered or supplied at prompt: Camera Development Guide (in `bsp_developer_guide` mirror or separate path), Adaptation Guide §Camera, carrier schematic, SoC TRM, Module Design Guide. - `dtc`, `cpp`, `fdtoverlay` on PATH. ## Procedure Detailed step-by-step procedure (Steps 1–7, with all tables, code blocks, and gates) lives in [`references/procedure.md`](references/procedure.md). Summary: 1. **Step 1** — Resolve active target + open source-of-truth docs. 2. **Step 2** — Enumerate supported sensors by globbing in-tree per-platform camera dtbos; classify as DPHY-direct / GMSL / custom. Never invent sensors. 3. **Step 3 / 3a** — Cross-check carrier + module support against DTSI, Camera Development Guide, Adaptation Guide §Camera, SoC TRM, Module Design Guide, schematic, and carrier pinmap. Render the wiring table FIRST, then issue the confirm-or-customize gate. 4. **Step 4** (custom path only) — Batched per-sensor wiring questions auto-filled from the carrier pinmap. 5. **Step 5** — Append exactly ONE `/* custom-bsp: camera:<sensor> */` fragment to the composite custom overlay `.dts` (see [`../../references/bsp-customization-kernel-dtb.md`](../../references/bsp-customization-kernel-dtb.md)). Clone path cpp-expands the in-tree DTSI; custom path splices Step-4 answers + mode tables in-place. Idempotently set `jetson-header-name` on the composite root. Verify with `dtc` + `fdtoverlay` (pre-compile single-fragment gate; post-compile deep-tree uniqueness gate). Commit via the workflow's commit-message preview gate. 6. **Step 6** — Verify ancillary CAM pin SFIOs (`cam_i2c_*`, `extperiph<m>_clk`, reset/PWDN/PWR_EN GPIOs) via `pin_verifier.py`; route mismatches to `/jetson-customize-pinmux`. 7. **Step 7** — Atomic-write run-state JSON sidecar at `<workspace>/target-platform/<profile-stem>.jetson-customize-camera.json` and emit the headline, then drive the downstream next-step chain via sequential `AskUserQuestion` prompts per `references/procedure.md` Step 7. **The chain is a documented workflow gate, not a clarifying question — auto-mode does NOT exempt it.** Never substitute a printed "Next step: …" line for the prompts. ## Gotchas - **Dual-fragment trap.** Contribute exactly ONE camera-tagged `fragment@N` to the composite. A second one carrying status overrides triggers dtc deep-merge → duplicate sibling subtrees (e.g. two `tca9546@70`) → runtime first-match drops the dtsi- supplied deep tree → camera silently doesn't enumerate. Gate on this skill's marker only (Step 5c). - **Composite root `compatible` is owned globally, not by this skill.** Don't widen from any in-tree per-sensor dtbo's `compatible` (devkit-SKU-gated). Fix the composite root if needed.
From NVIDIA/skills, Apache-2.0.
More from NVIDIA/skills
- 0.846score
nemo-fabric-integrate
NVIDIA Corporation and Affiliates
Use this skill when integrating NVIDIA NeMo Fabric into a consumer application, service, evaluation harness, or platform through the typed Python SDK —…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
jetson-video-pipeline
Vinit Bansal <vinitkumarb@nvidia.com>
Use when planning, executing, and independently validating Jetson Video Codec SDK or PyNvVideoCodec encode/decode, transcode, segmentation, container decode…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nvflare-convert-pytorch
NVIDIA FLARE Team <federatedlearning@nvidia.com>
Convert existing plain or manual PyTorch training code into an NVFLARE federated job using Client API model exchange, local validation, and job export; use…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nemo-relay-get-started
NVIDIA Corporation and Affiliates
Use this skill when first-time NeMo Relay users want help selecting and following an appropriate quick-start guide or verifying their first working integration.
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
jetson-video-recipe
Vinit Bansal <vinitkumarb@nvidia.com>
Use when turning a Jetson encoder use case into one surface-neutral recipe with native Video Codec SDK and PyNvVideoCodec projections.
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nvidia-broadcast
NVIDIA Broadcast Team <broadcast-skills-dev@nvidia.com>
Use when controlling NVIDIA Broadcast through MCP to apply effects, process local media, select devices, or change camera resolution, or when Broadcast is…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
jetson-video-setup
Vinit Bansal <vinitkumarb@nvidia.com>
Use when installing, repairing, reusing, inspecting, or verifying readiness of the native NVIDIA Video Codec SDK or PyNvVideoCodec on Jetson, including the…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nvflare-diagnose-job
NVIDIA FLARE Team <federatedlearning@nvidia.com>
Use when the user asks why a reported NVFLARE job failure signal occurred: the job failed, stalled, timed out, lost clients, ended with EXECUTION_EXCEPTION…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nvflare-convert-lightning
NVIDIA FLARE Team <federatedlearning@nvidia.com>
Convert existing PyTorch Lightning training code into an NVFLARE federated job using the Lightning Client API patch, local validation, and job export; use…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nemo-relay-install
NVIDIA Corporation and Affiliates
Use this skill when choosing or running NeMo Relay installation for an agent runtime, application language, framework integration, or plugin bundle, or…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
nvflare-fed-stats
NVIDIA FLARE Team <federatedlearning@nvidia.com>
Compute federated statistics over tabular data (count, sum, mean, stddev, var, histogram, quantile, noise-protected min/max) and image data (count…
SkillAFreshness: A★ 3.7KClaude Code +9 - 0.846score
jetson-video-capability
Vinit Bansal <vinitkumarb@nvidia.com>
Use when Jetson codec, profile, chroma, bit-depth, dimension, engine-count, or operational support must be reconciled from live APIs, authenticated NVIDIA…
SkillAFreshness: A★ 3.7KClaude Code +9
Signals
- Stars
- 3,718
- Forks
- 457
- Open issues
- 8
- Last commit (this folder)
- Jun 22, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/NVIDIA/skills
- Website
- docs.nvidia.com/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Jetson Team
- 0.742score
jetson-build-source
Jetson Team
Use when you need to rebuild the BSP overlay — DT, OOT modules, or kernel — from changes under bsp_sources/.
SkillCFreshness: C★ 3.7KClaude Code +9 - 0.739score
jetson-flash-image
Jetson Team
Use to flash a promoted BSP image to a Jetson DUT in RCM mode via flash.sh or l4t_initrd_flash.sh.
SkillCFreshness: C★ 3.7KClaude Code +9 - 0.739score
jetson-customize-clocks
Jetson Team
Use to lock/cap Jetson CPU/GPU/EMC clocks, toggle EMC/CPU DVFS, or change cpufreq governors by editing BPMP DTB and nvpower.sh pre-flash.
SkillCFreshness: C★ 3.7KClaude Code +9 - 0.739score
jetson-customize-pcie
Jetson Team
Per-controller PCIe enable / disable / lanes / link-speed for a Jetson Thor or Orin custom carrier via ODMDATA + kernel-DT overlay.
SkillCFreshness: C★ 3.7KClaude Code +9 - 0.739score
jetson-customize-pinmux
Jetson Team
Per-pin SFIO / direction / initial-state configurator for a Jetson Orin or Thor custom carrier from the pinmux XLSM.
SkillCFreshness: C★ 3.7KClaude Code +9 - 0.739score
jetson-customize-uphy
Jetson Team
Configure Jetson UPHY lane allocation (uphy0/uphy1-config) on Orin/Thor custom carriers.
SkillCFreshness: C★ 3.7KClaude Code +9
Cite this page
jetson-customize-camera skill. Agent Mart. https://agentmart.dev/skills/nvidia-jetson-customize-camera (last updated 2026-10-24)