> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.stereolabs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.stereolabs.com/_mcp/server.

# Power Modes

The NVIDIA® Jetson™ Orin™ NX module of the **ZED Box 2** supports several **power modes**. Each power mode caps the number of online CPU cores, the number of active GPU TPCs, and the maximum frequencies of the CPU, GPU, DLA, and memory (EMC) to keep the module within a given power budget.

The ZED Box 2 supports NVIDIA® **Super Mode**, which adds the **40W** and **MAXN SUPER** power modes and raises the maximum GPU and DLA frequencies, for up to **117 TOPS** on the Orin NX 8GB and **157 TOPS** on the Orin NX 16GB.

Choosing the right power mode lets you trade performance against power consumption and heat. This is important on the ZED Box 2, which uses a **passively cooled enclosure**, with an [optional fan](/docs/products/embedded/zed-box-series/zed-box-2/installation#install-the-optional-fan).

## Power supply of the ZED Box 2

The ZED Box 2 is powered through its DC terminal block input:

| Power source             | Power input                             |
| ------------------------ | --------------------------------------- |
| **DC IN** terminal block | 10V to 32V, up to **80W** (55W typical) |

All the [supported power modes](#supported-power-modes) are available with any input voltage in this range.

> **Note**
>
> The power budget of a power mode applies to the Jetson module only. Size your power source for the whole system: the Jetson module, up to 8 GMSL2 cameras, the USB devices, and the optional fan.

## Supported power modes

The tables below list the power modes supported by the ZED Box 2 for each Jetson module, with their `nvpmodel` ID and main clock limits.

#### Orin NX 8GB

| Mode       | ID | Online CPU cores | CPU max (MHz) | GPU max (MHz) | Memory max (MHz) |
| ---------- | -- | ---------------- | ------------- | ------------- | ---------------- |
| MAXN SUPER | 0  | 6                | 1984          | 1173          | 3200             |
| 10W        | 1  | 4                | 1190.4        | 612           | 2133             |
| 15W        | 2  | 4                | 1420.8        | 612           | 3200             |
| 20W        | 3  | 6                | 1497.6        | 408           | 3200             |
| 40W        | 4  | 6                | 1984          | 1173          | 3200             |

#### Orin NX 16GB

| Mode       | ID | Online CPU cores | CPU max (MHz) | GPU max (MHz) | Memory max (MHz) |
| ---------- | -- | ---------------- | ------------- | ------------- | ---------------- |
| MAXN SUPER | 0  | 8                | 1984          | 1173          | 3200             |
| 10W        | 1  | 4                | 1190.4        | 612           | 2133             |
| 15W        | 2  | 4                | 1420.8        | 612           | 3200             |
| 25W        | 3  | 8                | 1497.6        | 408           | 3200             |
| 40W        | 4  | 8                | 1497.6        | 1173          | 3200             |

> **Warning**
>
> **MAXN SUPER** is an unconstrained mode that enables the maximum number of cores and the maximum clock frequencies. It has no fixed power budget: hardware throttling is engaged when the module power exceeds its limit, so MAXN SUPER does not always give the best performance, and NVIDIA does not recommend running heavy workloads in this mode for prolonged periods.
>
> The ZED Box 2 is passively cooled: for sustained workloads in the **40W** or **MAXN SUPER** modes, install the [optional fan](/docs/products/embedded/zed-box-series/zed-box-2/installation#install-the-optional-fan), or select a mode with a lower power budget if the system becomes unstable.

> **Note**
>
> * Always check the modes defined on your device, as described in [Check the current power mode](#check-the-current-power-mode), before switching.
> * A higher power budget does not always mean a faster GPU. For example, the 20W and 25W modes enable more CPU cores but cap the GPU at a lower frequency than the 15W mode. Benchmark your own application in each candidate mode to find the one that suits it best.
> * The memory (EMC) frequency of 3200 MHz is the maximum of the `-super-maxn` flash configurations. With the standard Super flash configuration, the memory frequency is limited to 3199 MHz.

The complete clock configuration of each mode, including DLA, PVA, and SoC engine frequencies, is available in the [NVIDIA Jetson Linux Developer Guide](https://docs.nvidia.com/jetson/archives/r39.2/DeveloperGuide/SD/PlatformPowerAndPerformance/JetsonOrinNanoSeriesJetsonOrinNxSeriesAndJetsonAgxOrinSeries.html#supported-modes-and-power-efficiency), under the **Jetson Orin NX 8GB Super** and **Jetson Orin NX 16GB Super** columns.

## Check the current power mode

Display the active power mode:

```bash
sudo nvpmodel -q
```

The command prints the name and the ID of the mode. For example, on an Orin NX 16GB in 40W mode:

```console
NV Power Mode: 40W
4
```

List all the power modes defined on your device, with their IDs and names, and the default mode applied after flashing:

```bash
grep "^< POWER_MODEL\|^< PM_CONFIG" /etc/nvpmodel.conf
```

For example, on an Orin NX 16GB:

```console
< POWER_MODEL ID=0 NAME=MAXN_SUPER >
< POWER_MODEL ID=1 NAME=10W >
< POWER_MODEL ID=2 NAME=15W >
< POWER_MODEL ID=3 NAME=25W >
< POWER_MODEL ID=4 NAME=40W >
< PM_CONFIG DEFAULT=4 >
```

On the Ubuntu desktop, the current power mode is also displayed next to the NVIDIA icon in the top bar.

## Change the power mode

### From the command line

Select a power mode by its ID:

```bash
sudo nvpmodel -m <mode_id>
```

For example, to select the 25W mode of an Orin NX 16GB, which has ID `3`:

```bash
sudo nvpmodel -m 3
```

The selected power mode **persists across reboots** until you change it again.

Some mode changes modify the number of active GPU TPCs, which can only be applied at boot. In this case, `nvpmodel` asks for a reboot:

```console
NVPM WARN: Golden image context is already created
NVPM WARN: Reboot required for changing to this power mode: 0
NVPM WARN: DO YOU WANT TO REBOOT NOW? enter YES/yes to confirm:
```

Type `yes` to reboot immediately. The new mode is applied after the reboot.

### From the Ubuntu desktop

1. Click the NVIDIA icon in the top bar. The current power mode is displayed next to it.

2. Open the **Power mode** submenu and click the mode you want to set. The modes listed depend on your Jetson module.

   ![Power mode menu of the nvpmodel GUI](/_fern-files/_img/65eb9664124089c65bf93a45dfdb95d7ca07a02cc06beaba6d85cb23e91eae65.webp)

3. If the new mode requires a reboot, a dialog asks for confirmation. Click **OK** to reboot and apply the new mode.

   ![Reboot confirmation dialog](/_fern-files/_img/3e58794dc35638ba31eeadfa02094afa9395a84a99f9036b6968a416f6887f71.webp)

## Maximize the clocks with jetson_clocks

By default, the CPU, GPU, and memory frequencies scale dynamically with the load (DVFS), up to the limits of the active power mode. The `jetson_clocks` script locks these clocks at the **maximum frequencies of the current power mode**. This reduces latency and gives more stable performance, for example during benchmarks, at the cost of a higher idle power consumption.

`jetson_clocks` never exceeds the limits of the power mode: select the power mode first, then run `jetson_clocks`.

| Command                        | Description                                                           |
| ------------------------------ | --------------------------------------------------------------------- |
| `sudo jetson_clocks --show`    | Display the current clock settings                                    |
| `sudo jetson_clocks --store`   | Save the current clock settings to `~/.jetsonclocks_conf.txt`         |
| `sudo jetson_clocks`           | Lock the clocks at their maximum frequency for the current power mode |
| `sudo jetson_clocks --restore` | Restore the clock settings saved with `--store`                       |

To return to dynamic frequency scaling later, store the settings before maximizing the clocks:

```bash
sudo jetson_clocks --store
sudo jetson_clocks
# ... run your workload ...
sudo jetson_clocks --restore
```

> **Note**
>
> * The effect of `jetson_clocks` does **not** persist across reboots.
> * After running `jetson_clocks`, you cannot change the power mode with `nvpmodel` anymore. Reboot the device first.

## Create a custom power mode

If none of the predefined modes suits your application, you can define a custom power mode, for example to keep more CPU cores online at a lower frequency, or to cap the GPU frequency.

1. Use the [NVIDIA Jetson Power Estimator](https://jetson-tools.nvidia.com/powerestimator/) to estimate the power consumption of your configuration and to generate the corresponding `nvpmodel` configuration.

2. Back up the current configuration file:

   ```bash
   sudo cp /etc/nvpmodel.conf /etc/nvpmodel.conf.bak
   ```

   `/etc/nvpmodel.conf` is a link to the configuration file of your module, for example `/etc/nvpmodel/nvpmodel_p3767_0000_super.conf` for the Orin NX 16GB.

3. Edit `/etc/nvpmodel.conf` and add a new `< POWER_MODEL ID=<id> NAME=<name> >` block. The easiest way is to copy the block of the closest existing mode, then:
   * give it a **unique** `ID` and a descriptive `NAME`,
   * enable or disable CPU cores with the `CPU_ONLINE CORE_<n> 1|0` lines,
   * adjust the `MIN_FREQ` and `MAX_FREQ` values. CPU frequencies are expressed in **kHz**; GPU, memory (EMC), DLA, and PVA frequencies in **Hz**. A value of `-1` means no limit.

4. Select the new mode:

   ```bash
   sudo nvpmodel -m <id>
   ```

> **Warning**
>
> * Keep the total consumption within the limit of your [power supply](#power-supply-of-the-zed-box-2).
> * Capping the memory (EMC) frequency below the bandwidth required by your application can cause functional failures, for example dropped camera frames.

## Monitor power consumption and temperature

Monitor the system while your application runs to validate your power mode choice.

### tegrastats

`tegrastats` is installed with JetPack. It reports the CPU and GPU load and frequencies, the memory usage, the temperatures, and the power consumption of the module rails:

```bash
sudo tegrastats --interval 1000
```

![tegrastats output](/_fern-files/_img/e886e15d06c53ec04fa4027aabd9f50dea38943ae2cb81abf090d5b5a3349750.webp)

To log the statistics in the background, for example during a long test:

```bash
sudo tegrastats --interval 1000 --logfile ~/tegrastats.log &
```

Stop the background logging with `sudo tegrastats --stop`.

> **Tip**
>
> You can also start `tegrastats` from the Ubuntu desktop: click the NVIDIA icon in the top bar, then **Run tegrastats**.

### Jetson Power GUI

The **Jetson Power GUI** is installed with JetPack. It displays the CPU, GPU, and memory frequencies and loads, the readings of the temperature sensors, and the instantaneous and average power of each monitored rail.

To start it, click the NVIDIA icon in the top bar, then **Run Jetson Power GUI**.

![Jetson Power GUI main tab](/_fern-files/_img/0e70ad8638239258a7cfdf5aaaa7a7c628fcc02151d25d7fa5298fd542849cda.webp)

The **Thermal / Power Monitor** tab shows the throttling and shutdown limits of each temperature sensor, and the voltage, current, and power of each monitored rail:

![Jetson Power GUI Thermal / Power Monitor tab](/_fern-files/_img/33ab153dae7de6629d6d16e43aa859c9003c5061f79a67002457479ef785bc2d.webp)

The **Record** section at the bottom of the **Main** tab captures a log over a given duration, and **plot graph...** plots the recorded or real-time data. This helps you compare the power consumption of your application in different power modes.

### jtop

[jtop](https://github.com/rbonghi/jetson_stats), from the community `jetson-stats` package, is an interactive terminal monitor that also lets you change the power mode and toggle `jetson_clocks`:

```bash
sudo apt update
sudo apt install python3-pip
sudo pip3 install -U jetson-stats
sudo jtop --install-service
```

The last command installs and starts the `jtop` service, and adds your user to the `jtop` group. Log out and log in again, or reboot, then run:

```bash
jtop
```

![jtop main screen](/_fern-files/_img/9f2937bcefb76db74271376849625637bd144760b610e880b83b5e82c33d9de6.webp)

### Throttling

The temperature of the ZED Box 2 depends on the power mode, the workload, the ambient temperature, and whether the optional fan is installed. Its operating temperature range is **-20 °C to +50 °C** (-4 °F to 122 °F).

When a temperature sensor of the Jetson module reaches **99 °C**, the software starts throttling the clocks. At **103 °C**, hardware throttling is engaged, and the system shuts down at **104.5 °C** to protect itself. The clocks are also throttled when the input voltage drops or when the module power exceeds its electrical limits.

On the Ubuntu desktop, the NVIDIA icon in the top bar displays a notification when the system is throttled because of an over-current event or a high temperature.

If you observe throttling or unstable frame rates during long runs, install the [optional fan](/docs/products/embedded/zed-box-series/zed-box-2/installation#install-the-optional-fan), select a lower power mode, improve the airflow around the ZED Box 2, or reduce the workload of your application.

## Further reading

* [NVIDIA Jetson Linux Developer Guide: Platform Power and Performance](https://docs.nvidia.com/jetson/archives/r39.2/DeveloperGuide/SD/PlatformPowerAndPerformance/JetsonOrinNanoSeriesJetsonOrinNxSeriesAndJetsonAgxOrinSeries.html)
* [NVIDIA Technical Blog: Power Optimization with NVIDIA Jetson](https://developer.nvidia.com/blog/power-optimization-with-nvidia-jetson/)