Jetson/TX1 Power Monitor

Jetson TX1 (hardware revision 300 or greater) enables use of INA monitors for the module and Developer Kit carrier board.

Note that Developer Kits may have an earlier revision of the module, in which case only INA monitors on the carrier board are available.

Follow this how-to guide to verify minimum requirements and read voltage and current measurements from the INA monitors.

Verify L4T / JetPack Version
The L4T version can be determined with this command:

$ head -1 /etc/nv_tegra_release

If your L4T version is not at least 24.2, please download the latest JetPack and update your Jetson TX1 to be able to use the INAs.

Verify Jetson TX1 module is revision 300 or higher
The feature to enable use of INA monitors was added starting with revision 300 of Jetson TX1. For example, SKU  (note the "-300") has the feature.

The module SKU can be determined with the i2cdump command:

$ sudo i2cdump -y -r 0x14-0x26 2 0x50 b

Read the information via sysfs nodes
INA3221 monitors are readable via sysfs nodes. Where N is a channel number (0 – 2):

rail_name_N exports rail name in_currentN_input exports rail current in mA in_voltageN_input exports rail Voltage in mV  in_powerN_input exports rail power in mW

The INA driver may additionally present other nodes, but you must not modify any INA sysfs node value. Modifying these values could result in damage to your device.

The Jetson TX1 module has a 3-channel INA3221 monitor at I2C address 0x40. The sysfs nodes to read rail name, voltage, current & power can be found at:

/sys/devices/platform/7000c400.i2c/i2c-1/1-0040/iio_device/

These are the rail names for I2C address 0x42:

Channel-0: VDD_IN main module power input Channel-1: VDD_GPU GPU Power rail Channel-2: VDD_CPU CPU Power rail

The Jetson TX1 Development Kit carrier board has 3-channel INA3221 monitors at I2C addresses  and. The sysfs nodes to read rail name, voltage, current & power can be found at:

/sys/devices/platform/7000c400.i2c/i2c-1/1-0042/iio_device/ /sys/devices/platform/7000c400.i2c/i2c-1/1-0043/iio_device/

These are the rail names for I2C address :

Channel-0: VDD_MUX main carrier board power input Channel-1: VDD_5V_IO_SYS main carrier board 5V supply Channel-2: VDD_3V3_SYS main carrier board 3.3V supply

These are the rail names for I2C address :

Channel-0: VDD_3V3_IO (name on schematics is VDD_3V3_SLP) carrier board 3.3V Sleep supply Channel-1: VDD_1V8_IO (name on schematics is VDD_1V8) main carrier board 1.8V supply Channel-2: VDD_M2_IN (name on schematics is VDD_3V3_SYS_M2) 3.3V supply for M.2 Key E connector

Examples
To read INA3221 @ 0x40 channel-0 rail name (i.e., VDD_IN):

$ cat /sys/devices/platform/7000c400.i2c/i2c-1/1-0040/iio_device/rail_name_0

To read VDD_IN voltage, current & power:

$ cat /sys/devices/platform/7000c400.i2c/i2c-1/1-0040/iio_device/in_current0_input $ cat /sys/devices/platform/7000c400.i2c/i2c-1/1-0040/iio_device/in_voltage0_input $ cat /sys/devices/platform/7000c400.i2c/i2c-1/1-0040/iio_device/in_power0_input