isaac_ros_jetson_stats#
Source code available on GitHub.
Quickstart#
Set Up Development Environment#
Set up your development environment by following the instructions in getting started.
(Optional) Install dependencies for any sensors you want to use by following the sensor-specific guides.
Note
We strongly recommend installing all sensor dependencies before starting any quickstarts. Some sensor dependencies require restarting the development environment during installation, which will interrupt the quickstart process.
Build isaac_ros_jetson_stats#
Install
jtopon the host machine:sudo pip3 install --break-system-packages -U jetson-stats
Activate the Isaac ROS environment:
isaac-ros activateInstall the prebuilt Debian package:
sudo apt-get update
sudo apt-get install -y ros-jazzy-isaac-ros-jetson-stats
Install Git LFS:
sudo apt-get install -y git-lfs && git lfs install
Clone this repository under
${ISAAC_ROS_WS}/src:cd ${ISAAC_ROS_WS}/src && \ git clone -b release-4.0 https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_jetson.git isaac_ros_jetson
Activate the Isaac ROS environment:
isaac-ros activateUse
rosdepto install the package’s dependencies:sudo apt-get update
sudo pip3 install --break-system-packages -U jetson-stats && \ rosdep update && rosdep install --from-paths ${ISAAC_ROS_WS}/src/isaac_ros_jetson/isaac_ros_jetson_stats --ignore-src -y
Build the package from source:
cd ${ISAAC_ROS_WS}/ && \ colcon build --symlink-install --packages-up-to isaac_ros_jetson_stats --base-paths ${ISAAC_ROS_WS}/src/isaac_ros_jetson/isaac_ros_jetson_stats
Source the ROS workspace:
Note
Make sure to repeat this step in every terminal created inside the Isaac ROS environment.
Because this package was built from source, the enclosing workspace must be sourced for ROS to be able to find the package’s contents.
source install/setup.bash
Run Launch File#
Run the following launch files to spin up a demo of this package:
ros2 launch isaac_ros_jetson_stats jtop.launch.py
Visualize Results#
Open a new terminal inside the Isaac ROS environment:
isaac-ros activateCheck that the
rqtrobot monitor plugin is installed.sudo apt-get install ros-jazzy-rqt-robot-monitor
Open robot monitor.
rqt
Open
rqtviewFrom menu open the Diagnostics Viewer Plugins -> Robots Tools -> Diagnostics Viewer
Select the checkbox “Alternative View”
Verify that
rqtstarts displaying the diagnostic status of the Jetson:
Control your Jetson#
- You can control your Jetson using the following services:
jtop/fan: Change the fan speed configuration.jtop/nvpmodel: Change the NVPmodel of your board.jtop/jetson_clocks: Enable or disable Jetson Clocks.
Change the Fan Speed Configuration#
An example to change the fan speed configuration:
ros2 service call /jtop/fan isaac_ros_jetson_stats_services/srv/Fan "{'profile':quiet ,'speed':100}"
This command will change the fan speed configuration to 100% and the profile to quiet. You can change the profile to quiet, cool, or manual.
These profile can change depending on JetPack version and Jetson model. You can check the available profiles from the documentation reference.
Change the NVPmodel of your board#
An example to change the NVPmodel of your board:
ros2 service call /jtop/nvpmodel isaac_ros_jetson_stats_services/srv/NVPModel "{'nvpmodel':0 }"
This command will change NVPmodel on your board. To check the available NVPmodel, you can check the documentation reference.
Note
Not all NVPmodel are available on all Jetson models. You can check the available NVPmodel from the NVIDIA Jetson documentation reference.
Note
Not all NVPmodel can be set without a reboot. If it fails you need to change manually on your board.
Change the Jetson Clocks#
An example to enable Jetson Clocks:
ros2 service call /jtop/jetson_clocks isaac_ros_jetson_stats_services/srv/JetsonClocks "{'status':true}"
This command enables Jetson Clocks. You can disable Jetson Clocks by changing the value to false.
Troubleshooting#
jtop Not Working#
Symptoms#
The jtop node fails to start.
Solution#
Exit the Isaac ROS environment and install jetson-stats on your host:
sudo pip3 install --break-system-packages -U jetson-stats
Mismatch version jtop service and client#
Please update your jtop package on your host and reboot the Isaac ROS container.
sudo pip3 install --break-system-packages -U jetson-stats
You may need to reboot the host.
Diagnostics Viewer doesn’t appear#
If the Diagnostics Viewer doesn’t appear when you are running rqt:
rm ~/.config/ros.org/rqt_gui.ini
This command will refresh rqt, updating the list of all plugins available.
API#
Launch jtop Diagnostic Monitor#
ros2 launch isaac_ros_jetson_stats jtop.launch.py
ROS Parameters#
ROS Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
|
When you initialize |
ROS Topics Published#
ROS Topic |
Interface |
Description |
|---|---|---|
|
Diagnostic message. |
ROS Services Advertised#
ROS Service |
Interface |
Description |
|---|---|---|
|
A service change the fan speed configuration. |
|
|
A service to change the NVPmodel of your board. |
|
|
A service to enable or disable Jetson Clocks |