Skip to content

Commit ff17425

Browse files
authored
Merge pull request #244 from tokk-nv/dev/setup_sdkm
Add alternative setup instruction for initial setup using SDK Manager
2 parents cf815fc + a7e4106 commit ff17425

28 files changed

+335
-7
lines changed

docs/css/extra.css

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,39 @@
118118
background-color: var(--md-accent-fg-color--light)!important;
119119
}
120120

121+
.md-button--darkblue {
122+
border-color: #01587d!important;
123+
background-color: #c1dfe6!important;
124+
border-width: 3px!important;
125+
line-height: 2!important;
126+
}
127+
128+
.md-button--darkpurple {
129+
border-color: #b544c4!important;
130+
background-color: #f3e9f2!important;
131+
border-width: 3px!important;
132+
line-height: 2!important;
133+
font-size: 1.2em!important;
134+
}
135+
136+
.md-button--darkpurple:focus,
137+
.md-button--darkpurple:hover {
138+
background-color: #ffcafa!important;
139+
}
140+
141+
.md-button--darkgreen {
142+
border-color: #0e7a71!important;
143+
background-color: #d2e9e5!important;
144+
border-width: 3px!important;
145+
line-height: 2!important;
146+
font-size: 1.2em!important;
147+
}
148+
149+
.md-button--darkgreen:focus,
150+
.md-button--darkgreen:hover {
151+
background-color: #82dbcc!important;
152+
}
153+
121154
.md-typeset .tabbed-set {
122155
border: 0.5px solid lightgray;
123156
}
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
429 KB
Loading

docs/images/jon_jumper.png

6.93 MB
Loading
909 Bytes
Loading
175 KB
Loading
Loading

docs/initial_setup_jon.md

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,33 @@ If you don't have them in your inventory, you want to arrange them and return to
3434
- :material-checkbox-blank-outline: DisplayPort to HDMI cable and HDMI capable monitor (or TV) and a USB keyboard
3535
- :material-checkbox-blank-outline: [USB to TTL Serial cable :octicons-link-external-16:](https://www.adafruit.com/product/954) (Advanced)
3636

37-
## Open the box
37+
!!! danger ""
38+
39+
## 🛸 Alternative method : SDK Manager
40+
41+
In case you have an x86 PC running Ubuntu 22.04 or 20.04, then you can flash your Jetson Orin Nano Developer Kit with the latest firmware and JetPack all at once using **NVIDIA SDK Manager**.
42+
43+
Also, if you wish to not use a microSD card but rather use a large NVMe SSD for the OS and data, then you need to use SDK Manager to flash the latest JetPack on the NVMe SSD.
44+
45+
```mermaid
46+
flowchart LR
47+
A(start) --> B{Want to ditch microSD<br>and only use NVMe SSD?}
48+
B --[YES] --> S[🛸 SDK Manager method]
49+
B --[No] --> C{Have x86 PC running<br> Ubuntu 22.04/20.04?}
50+
C --[YES] --> S
51+
C --[No] --> U[🚀 microSD-only method]
52+
53+
style S stroke-width:3px, fill:#f3e9f2,stroke:#b544c4
54+
style U stroke-width:3px, fill:#d2e9e5,stroke:#0e7a71
55+
```
56+
57+
Click the button below to jump to a page that explains the alternative setup method using SDK Manager if you want to set your Jetson Orin Nano Developer Kit with an NVMe SSD or just want to flash all at once with your Ubuntu PC.
58+
59+
[🛸 SDK Manager method](./initial_setup_jon_sdkm.md){ .md-button .md-button--darkpurple }
60+
61+
Otherwise, continue reading on this page for the microSD-only setup method.
62+
63+
<!-- ## Open the box
3864
3965
!!! info "What you find in the box"
4066
@@ -46,19 +72,19 @@ If you don't have them in your inventory, you want to arrange them and return to
4672
4773
It is designed to use a **microSD** card as the primary storage, thus the module (that has a big black heat sink with a fan) has a microSD card slot at the bottom side of the module.
4874
49-
### :material-checkbox-marked-outline: 19V DC power supply
75+
### :material-checkbox-marked-outline: 19V DC power supply -->
5076

51-
## Overall flow
77+
## Overall flow (microSD-only method)
5278

53-
!!! info "Jetson Orin Nano Initial Setup Flowchart"
79+
!!! info "Jetson Orin Nano Initial Setup Flowchart (microSD-only method)"
5480

5581
```mermaid
5682
flowchart
5783
A(start) --> B{1️⃣ Check if Jetson UEFI Firmware<br>is newer than version 36.0}
5884
B --[YES] --> O[6️⃣ Flash JetPack 6.x image on microSD card]
59-
B --[No] --> C[2️⃣ Flash JetPack 5.1.3 image on microSD card]
85+
B --[No] --> C[2️⃣ Boot with JetPack 5.1.3 microSD card<br>to schedule firmware update]
6086
C --> D[3️⃣ Reboot] --> E{{Firmware update during reboot}}
61-
E --> F[4️⃣ Run QSPI updater] --> G[5️⃣ Reboot] --> H{{Firmware update during reboot}}
87+
E --> F[4️⃣ Run QSPI updater] --> G[5️⃣ Reboot] --> H{{QSPI update during reboot}}
6288
H --> O
6389
O --> Q(7️⃣ Unlock super performance)
6490
Q --> P(8️⃣ Start developing on JetPack 6.x)

docs/initial_setup_jon_sdkm.md

Lines changed: 268 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,268 @@
1+
# 🛸 Initial Setup using SDK Manager
2+
3+
![](./images/m48-workstation-256px-blk.png){ width="256" align=right}
4+
5+
!!! note
6+
This guide is to supplement the official [**Jetson Orin Nano Developer Kit Getting Started Guide**](https://developer.nvidia.com/embedded/learn/get-started-jetson-orin-nano-devkit).
7+
8+
The NVIDIA® <span class="blobLightGreen4">Jetson Orin Nano™ Developer Kit</span> is a perfect kit to start your journey of local generative AI evaluation and development.
9+
10+
This guide explains the **alternative method** for setting up Jetson Orin Nano Developer Kit by flashing both the latest firmware (QSPI image) and the latest JetPack all at once, using a host x86 PC.
11+
12+
## Check your toolbox
13+
14+
The following item is needed or highly desired for flashing your Jetson Orin Nano Developer Kit using your host PC.
15+
16+
If you don't have them, check the [default microSD-only setup instruction](./initial_setup_jon.md) or you want to arrange them first then return to this guide once they are available.
17+
18+
!!! warning "What not come in the box - What you need/want to prepare"
19+
20+
### Host PC
21+
22+
- :material-checkbox-intermediate: x86 PC running **Ubuntu 22.04** or **Ubuntu 20.04**
23+
24+
> ![alt text](images/sdkm_host_os_compatibility_matrix.png)
25+
> Source: :octicons-link-external-16: [NVIDIA SDK Manager :material-chevron-double-right: Host Operating System Compatibility Matrix](https://developer.nvidia.com/sdk-manager#host_os_comp_matrix)
26+
27+
### Storage
28+
29+
Either of the following.
30+
31+
- :material-checkbox-blank-outline: microSD card (64GB or bigger)
32+
- :material-checkbox-blank-outline: NVMe SSD (Recommended for better performance)
33+
34+
<img src="images/microsd_64gb.png" style="max-width:120px;"> <img src="images/ssd_nvme_1tb.png" style="max-width:540px;">
35+
36+
### Flashing supply
37+
38+
- :material-checkbox-blank-outline: USB cable (USB-C plug for Jetson Orin Nano Developer Kit side, other end depends on your PC)
39+
- :material-checkbox-blank-outline: jumper pin (or metal paper clip)
40+
41+
### Mean to access terminal
42+
43+
You need either of the following set:
44+
45+
- :material-checkbox-blank-outline: DisplayPort cable, DisplayPort capable monitor and a USB keyboard
46+
- :material-checkbox-blank-outline: DisplayPort to HDMI cable and HDMI capable monitor (or TV) and a USB keyboard
47+
- :material-checkbox-blank-outline: [USB to TTL Serial cable :octicons-link-external-16:](https://www.adafruit.com/product/954) (Advanced)
48+
49+
!!! danger ""
50+
51+
## 🚀 Default method : microSD card only setup method
52+
53+
In case you **do NOT** have an x86 PC running Ubuntu 22.04 or 20.04, you can fall back to the default "microSD card only" setup method that does not require any host PC.
54+
55+
The decision process can look like this.
56+
57+
```mermaid
58+
flowchart LR
59+
A(start) --> B{Want to ditch microSD<br>and only use NVMe SSD?}
60+
B --[YES] --> S[🛸 SDK Manager method]
61+
B --[No] --> C{Have x86 PC running<br> Ubuntu 22.04/20.04?}
62+
C --[YES] --> S
63+
C --[No] --> U[🚀 microSD-only method]
64+
65+
style S stroke-width:3px, fill:#f3e9f2,stroke:#b544c4
66+
style U stroke-width:3px, fill:#d2e9e5,stroke:#0e7a71
67+
```
68+
69+
Click the button below to jump to the default setup page.
70+
71+
[🚀 microSD-only method](./initial_setup_jon.md){ .md-button .md-button--darkgreen }
72+
73+
Otherwise, continue reading on this page for the SDK Manager method.
74+
75+
76+
## Overall flow (SDK Manager method)
77+
78+
!!! info "Jetson Orin Nano Initial Setup Flowchart (microSD-only method)"
79+
80+
```mermaid
81+
flowchart
82+
A(start) --> B[0️⃣ Install SDK Manager]
83+
B --> C[1️⃣ Connect Target Hardware]
84+
C --> D[2️⃣ Select Software Components to Install]
85+
D --> E[3️⃣ Download on Host PC]
86+
E --> F[4️⃣ Flash]
87+
F --> G[5️⃣ Boot and initial setup]
88+
G --> P(👍 Start developing on JetPack 6.x)
89+
```
90+
91+
92+
## 0️⃣ Install SDK Manager
93+
94+
!!! info "Reference"
95+
96+
:octicons-link-external-16: [NVIDIA SDK Manager Documentation](https://docs.nvidia.com/sdk-manager/){:target="_blank"} : <br> :material-chevron-double-right: **Download and Install** :material-chevron-double-right: [Download and Run SDK Manager](https://docs.nvidia.com/sdk-manager/download-run-sdkm/index.html){:target="_blank"}
97+
98+
On your Ubuntu 22.04 / 20.04 PC, open a terminal and execute the following command.
99+
100+
Select the tab that matches your Ubuntu version.
101+
102+
=== ":simple-ubuntu: Ubuntu 22.04"
103+
104+
```bash
105+
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
106+
sudo dpkg -i cuda-keyring_1.1-1_all.deb
107+
sudo apt-get update
108+
sudo apt-get -y install sdkmanager
109+
```
110+
111+
=== ":simple-ubuntu: Ubuntu 20.04"
112+
113+
```bash
114+
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.1-1_all.deb
115+
sudo dpkg -i cuda-keyring_1.1-1_all.deb
116+
sudo apt-get update
117+
sudo apt-get -y install sdkmanager
118+
```
119+
120+
Then launch SDK Manager with the following command.
121+
122+
```bash
123+
sdkmanager
124+
```
125+
126+
??? note "First time using SDK Manager"
127+
128+
When using SDK Manager for the first time, log in with your NVIDIA Developer credentials.
129+
130+
Remember to tick the checkbox for "**Stay logged in**" and click "**LOGIN**" button.
131+
132+
![login](<images/Screenshot from 2025-01-06 21-47-12.png>){ width="480" }
133+
134+
A browser window opens. Input your email address that is registered as NVIDIA Developer.
135+
136+
![browser window](<images/Screenshot from 2025-01-06 21-47-49.png>){ width="480" }
137+
138+
Two factor authentication prompt may pop up.
139+
140+
![Security Challenge](<images/Screenshot from 2025-01-06 21-49-53.png>){ width="480" }
141+
142+
Once authenticated, the browser windows opens back the SDK Manager app window.
143+
144+
![browser window redirecting to sdk manager](<images/Screenshot from 2025-01-06 21-50-00.png>){ width="480" }
145+
146+
SDK Manager continues to log you in.
147+
148+
![SDK Manager logging you in...](<images/Screenshot from 2025-01-06 21-50-07.png>){ width="480" }
149+
150+
SDK Manager launched and the login completed.
151+
152+
![SDK Manager after logging in](<images/Screenshot from 2025-01-06 21-50-11.png>)
153+
154+
## 1️⃣ Connect the Target Hardware
155+
156+
Once SDK Manager is launched, connect your Jetson developer kit to your Ubuntu PC and power it on in Forced Recovery mode.
157+
158+
1. Connect your Jetson Orin Nano Developer Kit to your PC with a USB cable.<br>Note that the USB cable goes into the USB-C port of the carrier board of the developer kit.
159+
160+
2. While shorting `pin 9` and `pin 10` of `J14` header located below the Jetson module using a jumper pin, insert the DC power supply plug into the DC jack of the carrier board to power it on.
161+
162+
![alt text](images/jon_carrier_board_topview.png){ width="640" }
163+
164+
You can use a paper clip like a photo below as well.
165+
166+
![Jumpering pins](images/jon_jumper.png){ width="640" }
167+
168+
3. Select "**Jetson Orin Nano \[8GB developer kit version\]**" and hit "**OK**"
169+
170+
![alt text](<images/Screenshot from 2025-01-06 21-50-49.png>){ width="480" }
171+
172+
4. Uncheck "**Host Machine**" and it should now look like this
173+
174+
![alt text](<images/Screenshot from 2025-01-06 21-54-47.png>)
175+
176+
5. Click "**Continue**" button to proceed to the next step.
177+
178+
## 2️⃣ Select Software Components to Install]
179+
180+
1. Leave the only "**Jetson Linux**" component checked, and uncheck everything.
181+
182+
![alt text](<images/Screenshot from 2025-01-06 21-58-45.png>)
183+
184+
2. Remember to also check "**I accept the terms and conditions of the license agreements**".
185+
186+
3. Click "**Continue**" button to proceed to the next step.
187+
188+
4. It will prompt for the `sudo` command password.
189+
190+
![alt text](<images/Screenshot from 2025-01-06 21-58-52.png>){ width="480" }
191+
192+
## 3️⃣ Download on Host PC
193+
194+
1. It will start downloading the "BSP" package and "RootFS" package.
195+
196+
![alt text](<images/Screenshot from 2025-01-06 21-59-14.png>)
197+
198+
2. Once downloads are complete, it will untar the package and start generating the images to flash in the background.
199+
200+
![alt text](<images/Screenshot from 2025-01-06 22-03-29.png>)
201+
202+
3. Once images are ready, SDK it will open the prompt for flashing.
203+
204+
![alt text](<images/Screenshot from 2025-01-06 22-05-36.png>)
205+
206+
## 4️⃣ Flash
207+
208+
1. On the flashing prompt, select "**Runtime**" for "OEM Configuration".
209+
210+
![alt text](<images/sdkm_flash_runtime_sdcard.png>){ width="480" }
211+
212+
2. On the flashing prompt, select "**NVMe**" if you want to flash Jetson Linux (BSP) to NVMe SSD.
213+
214+
![alt text](<images/Screenshot from 2025-01-06 22-05-42.png>){ width="480" }
215+
216+
3. Click "Flash" and the prompt popup will change like this.
217+
218+
![alt text](<images/Screenshot from 2025-01-06 22-05-52.png>){ width="480" }
219+
220+
4. Flash progress.
221+
222+
=== "Details"
223+
224+
![alt text](<images/Screenshot from 2025-01-06 22-06-24.png>)
225+
226+
=== "Terminals"
227+
228+
![alt text](<images/Screenshot from 2025-01-06 22-06-29.png>)
229+
230+
5. Flash successfully completes.
231+
232+
=== "Details"
233+
234+
![alt text](<images/Screenshot from 2025-01-06 22-21-30.png>)
235+
236+
=== "Terminals"
237+
238+
![alt text](<images/Screenshot from 2025-01-06 22-21-36.png>)
239+
240+
## 5️⃣ Boot and Initial Setup
241+
242+
1. If still plugged, remove the jumper from header (that was used to put it in Forced Recovery mode)
243+
244+
2. Connect the DisplayPort cable or adapter and USB keyboard and mouse to Jetson Orin Nano Developer Kit, or hook up the USB to TTL Serial cable.
245+
246+
3. Unplug the power supply and put back in to power cycle.
247+
248+
4. Jetson should now boot into the Jetson Linux (BSP) of your selected JetPack version from the storage of your choice.
249+
250+
5. Complete the initial software setup (`oem-config`)
251+
252+
### Switch to MAXN mode
253+
254+
Note that the default power mode is **15W**. <br>
255+
To switch to the new power mode and unlock the increased performance, follow below steps:
256+
257+
1. Click on the current power mode (**15W**) by clicking the NVIDIA icon on the right side of the Ubuntu desktop’s top bar.
258+
2. Select **Power mode** from the menu.
259+
3. Choose **MAXN** to enable maximum performance.
260+
261+
![alt text](images/jons_power-mode-to-maxn.png)
262+
263+
🎊 **Congratulations!** <br>
264+
Your Jetson Orin Nano Developer Kit is set up with JetPack 6.x image and you are ready to develop on JetPack 6.x.
265+
266+
## Next step
267+
268+
Check [this page](./tips_ssd-docker.md) for "SSD" and/or "Docker" set up.

mkdocs.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,8 @@ nav:
135135
# - Tools:
136136
# - LangChain: tutorial_distillation.md
137137
- Jetson Orin Nano Guide:
138-
- 🚀 Initial Setup Guide: initial_setup_jon.md
138+
- 🚀 Initial Setup Guide - Jetson Orin Nano: initial_setup_jon.md
139+
- 🛸 Initial Setup (SDK Manager method): initial_setup_jon_sdkm.md
139140
- 🔖 SSD + Docker: tips_ssd-docker.md
140141
- 🔖 Memory optimization: tips_ram-optimization.md
141142
- Benchmarks: benchmarks.md

0 commit comments

Comments
 (0)