Measuring Power#
This module talks about how to measure power on the EVM.
Power#
The starter kit EVMs for the AM62x contain on-board current sensors to measure power usage on all of the voltage rails powering the SoC. These current sensors are INA231 ICs, and can be configured and read over an I2C bus.
There are 6 voltage rails into the SoC, and each of these is read by an INA using voltage measurements.
VDD Core
VDDR Core
digital VDD 3.3V
digital VDD 1.8V
analog VDD 1.8V
VDD DDR (or LPDDR)
Power is measured by reading a voltage across a small (<<1 Ohm) shunt resistor and the voltage of the bus itself (low side of the resistor). The shunt voltage is a proxy for current, and is calculated by knowing the value of the shunt resistor precisely. We use a high precision resistor (1%).
Since these current resistors are accessible over I2C, they can be read directly from the SoC for measuring power during the active state.
Here is a python script for measuring power on the AM62x EVM.
To run these, a network connection is necessary so that a python package can be installed via pip.
python3 -m ensurepip pip3 install smbus2
Note that network settings and certificates may cause pip3 to throw errors. Explicitly trusting the host sites should fix this. It may be necessary to add a proxy with the –proxy tag if the device is behind a firewall e.g. on a corporate network.
pip3 --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org install smbus2