Free course · by the SutraCore team

Free NVIDIA Jetson AI course: 30 days, 16 steps

Orin NX 16GBJetPack 6.2.1CUDA 12.6TensorRT 10.3Python 3.10PyTorch 2.8
Step 01 of 16Day 1 · Mon 26 OctWeek 1Phase A · notebooks

Set up the Jetson

Your Orin NX 16GB is already on JetPack 6.2.1, so there's nothing to flash. Today you tune it: maximum performance mode, swap, a lean desktop setup, and a monitor you can trust.

Runs on
Jetson terminal over SSH from your laptop
Notebooks
None yet
Creates
/swapfile, ~/sutraai/BUILDLOG.md
Time
1–2 hours

Where Where to implement

Jetson: jetson

  • Every command on this page runs in an SSH session on the Jetson
  • Keep a second SSH window open for jtop

Laptop

  • Only for ssh: LAN <jetson-ip>, or your Tailscale address when you're away from home

Do Do it

1Connect from your laptop

Laptop terminal
ssh <your-user>@<jetson-ip>            # at home (LAN)
ssh <your-user>@<tailscale-ip>            # from anywhere: the tailscale0 address shown in jtop, or `tailscale ip -4` on the Jetson

2Confirm the versions match this guide

Jetson terminal
cat /etc/nv_tegra_release                       # expect: R36 (release), REVISION: 4.7
apt show nvidia-jetpack 2>/dev/null | grep Version   # expect: 6.2.1…
nvcc --version 2>/dev/null | tail -n 1          # expect: release 12.6 (if not found, Step 02 adds it to PATH)
df -h /                                         # confirm 100 GB+ free on the NVMe
You seeDo this
R36.4.7 / JetPack 6.2.1 (your board)Keep it. Every step here is written for this version. Continue to sub-step 4.
A newer 6.2.x (after an upgrade)Fine. Use the same jp6/cu126 PyTorch index in Step 02.
R39.x (JetPack 7.2)Different CUDA (13.x) and Python (3.12): the PyTorch install in Step 02 changes. Avoid upgrading during Weeks 1–3.

3Only if you ever need to re-flash

Not needed today. For reference: use NVIDIA SDK Manager on an Ubuntu PC. Put the board in recovery mode (connect pins 9–10, FC REC to GND, on the button header, then power on). Pick Jetson Orin NX 16GB on the developer kit carrier with the Super configuration, storage NVMe, and fill in the OS pre-config (user, password, hostname).

4Update and install the AI libraries

Jetson terminal
sudo apt update && sudo apt upgrade -y          # stays within JetPack 6.2.x; no major upgrade
sudo apt install -y nvidia-jetpack              # CUDA, cuDNN, TensorRT, VPI (no-op if already installed)
sudo apt install -y git tmux htop xxd ffmpeg python3-venv python3-pip libopenblas-dev

5Switch from 15 W to MAXN SUPER

Your jtop title bar shows 15W. The Orin NX Super config offers 10 W, 15 W, 25 W, 40 W and MAXN SUPER. Train in MAXN SUPER; use 25 W or 40 W if the board gets too hot.

Jetson terminal
sudo nvpmodel -q --verbose      # lists the modes on your board
sudo nvpmodel -m 0              # MAXN SUPER on Orin NX modules (JetPack 6.2+ Super config)
sudo nvpmodel -q                # expect: NV Power Mode: MAXN_SUPER

Or open jtop, press 6 (CTRL), and change the NV Power mode there. Use sudo jetson_clocks only while benchmarking; it locks clocks at maximum and the board runs hotter.

6Optional: run headless

With 16 GB you can keep the desktop, but it still uses roughly 0.5–1 GB. Switch to text mode before the LLM steps (11–12) if memory gets tight.

Jetson terminal
sudo systemctl set-default multi-user.target     # undo with: sudo systemctl set-default graphical.target

716 GB swap on the NVMe

Swap is a safety net, not extra speed. It stops a job from crashing when memory briefly spikes, for example while building llama.cpp with an LLM loaded.

Jetson terminal
sudo swapoff -a
sudo rm -f /swapfile
sudo fallocate -l 16G /swapfile && sudo chmod 600 /swapfile
sudo mkswap /swapfile && sudo swapon /swapfile
grep -q '^/swapfile' /etc/fstab || echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo systemctl disable nvzramconfig 2>/dev/null || true    # use the NVMe swap instead of compressed RAM swap

8Update jtop and reboot

jtop 7.2.1 is already installed. Keep it current:

Jetson terminal
sudo pip3 install -U jetson-stats
sudo reboot

9Start your build log

Jetson terminal
mkdir -p ~/sutraai && cd ~/sutraai
cat >> BUILDLOG.md <<'EOF'
## Day 1 — Jetson setup
Board: Jetson Orin NX 16GB (Super) · JetPack 6.2.1 · L4T 36.4.7
CUDA 12.6.68 · cuDNN 9.3.0 · TensorRT 10.3.0.30 · Python 3.10.12
Power mode: MAXN_SUPER
Free RAM after boot (jtop):
Blocked:
Tomorrow: Step 02 — CUDA, Python, JupyterLab
EOF

Test Test it

Jetson terminal
sudo nvpmodel -q | head -n 2          # expect: MAXN_SUPER
free -h                               # expect: Mem about 15Gi total, Swap 15Gi or 16Gi
df -h / | tail -n 1                   # expect 100 GB+ available
jtop                                  # title bar should show MAXN SUPER instead of 15W; q to quit
Pass: jtop shows MAXN SUPER, all 8 CPU cores, the GPU, about 15 GB RAM with around 2 GB or less used at idle, 16 GB swap, and stable temperatures.

Done Done when

  • SSH works on the LAN (and over Tailscale, if you use it)
  • Versions confirmed: JetPack 6.2.1, L4T 36.4.7, CUDA 12.6
  • Power mode is MAXN SUPER (was 15 W)
  • 16 GB swap active after a reboot
  • jtop updated and showing GPU, RAM and temperature
  • BUILDLOG.md started with the board details

If it breaks

SymptomFix
Can't SSHLaptop and Jetson must be on the same network (or both on Tailscale). Confirm with sudo systemctl status ssh on the Jetson.
No MAXN SUPER in the mode listThe board was flashed without the Super config. Use the 25 W mode for now; re-flash with the Super config later, not during Weeks 1–3.
Throttling or very hot in MAXN SUPERCheck the fan; switch to 40 W or 25 W; keep the case open.
Swap gone after rebootThe /swapfile line is missing from /etc/fstab; rerun sub-step 7.
Board resets under loadUse the original power supply.

Learn more