jetson-print-device-info
Use when you need to print Jetson device info (module model, L4T version, kernel, OS version, current power mode) from a running Jetson target. This is an example skill.
Skill body
jetson-print-device-info
Prints a concise summary of the Jetson device this skill runs on.
This skill is intended as a reference example for the jetson-device-skills repo and the NVIDIA-wide skills CI. It runs on the Jetson target (not the host PC) and performs read-only inspection — useful as a baseline capture before running performance tests.
Purpose
Capture a baseline snapshot of a Jetson target’s software stack and power mode before running performance, regression, or compatibility tests.
When to use
- Starting a performance run and you want a captured baseline of the device’s software stack and power mode.
- Verifying that a freshly flashed Jetson matches an expected L4T / JetPack version.
Prerequisites
- Running on a Jetson target (not the host PC).
- Standard CLIs available:
tr,cat,uname,uptime,lsb_release(or/etc/os-release). nvpmodelavailable for power mode (optional — skill falls back gracefully).
Inputs
None. The skill reads only from the local Jetson filesystem and standard CLIs.
Instructions
Run each step in order and print the captured values into the report shown under Output format.
- Capture the module model and validate it is a Jetson target — exit early otherwise:
# Device-tree strings are null-terminated, so strip NULs before printing. model=$(tr -d '\0' < /proc/device-tree/model 2>/dev/null) case "$model" in *Jetson*) ;; *) echo "Not running on a Jetson target (model: '${model:-unknown}')"; exit 1 ;; esac echo "$model" - Extract the L4T release header line — skip the rest of the file (long list of library SHAs):
head -1 /etc/nv_tegra_release 2>/dev/null || echo "L4T release info not found" # Equivalent: grep -m1 '^# R' /etc/nv_tegra_release - Run
nvpmodel -qand join its two output lines (NV Power Mode: <name>and the mode number) onto one line.paste -sdonly uses the first char of its delimiter, so useawkto insert the literal ` / ` separator:nvpmodel -q 2>/dev/null | awk 'NR==1{a=$0; next} {print a" / "$0}' \ || echo "nvpmodel not available" - Print the kernel version and uptime:
uname -r uptime -p - Print the OS version (prefer
lsb_release, fall back to/etc/os-release):lsb_release -ds 2>/dev/null || (. /etc/os-release && echo "$PRETTY_NAME") || echo "OS version not found"
Output format
Print a short report with these sections, one line each where possible:
Model: <device-tree model string>
L4T release: <release header line>
Power mode: <nvpmodel name> / <mode number>
Kernel: <uname -r>
Uptime: <uptime -p>
OS version: <lsb_release / /etc/os-release output>
Examples
Example output on an Orin AGX dev kit (L4T R36 / Ubuntu 22.04):
Model: NVIDIA Jetson AGX Orin Developer Kit
L4T release: # R36 (release), REVISION: 3.0
Power mode: NV Power Mode: MAXN / 0
Kernel: 5.15.136-tegra
Uptime: up 2 hours, 14 minutes
OS version: Ubuntu 22.04.4 LTS
Example output on an AGX Thor (L4T R39 / Ubuntu 24.04):
Model: NVIDIA Jetson AGX Thor Developer Kit
L4T release: # R39 (release), REVISION: 0.0
Power mode: NV Power Mode: 120W / 1
Kernel: 6.8.0-tegra
Uptime: up 12 minutes
OS version: Ubuntu 24.04 LTS
Error handling
Each command falls back to a clearly labeled "... not found" / "... not available" string if the underlying file or binary is missing — the skill never errors out mid-report. If /proc/device-tree/model is missing or does not contain a Jetson string, exit early with a clear “not running on a Jetson target” message.
Limitations
- Read-only inspection only — does not detect GPU/CPU clocks, thermal state, or per-rail power.
nvpmodeloutput format varies between L4T versions; the skill prints it verbatim rather than parsing.
Troubleshooting
-
Error:
/proc/device-tree/model: No such file or directoryCause: Running on a host PC, not a Jetson target. Solution: Run the skill on the Jetson device directly (e.g. via SSH). -
Error:
nvpmodel: command not foundCause: L4T BSP not installed, or running in a minimal container withoutnvpmodel. Solution: Expected on non-Jetson or stripped environments — the skill prints"nvpmodel not available"and continues.
Notes
- Read-only. Do not change power mode, install packages, or modify any files.
- If the skill is invoked on a host PC by mistake,
/proc/device-tree/modelwill not contain a Jetson model string — detect that and exit with a clear message rather than printing misleading info.