[Isaac Sim] Installation and Learning
Installation
Installing NVidia Isaac Sim is a little bit tricky. It was not installed properly on GPU machines with specifications lower than the RTX 2080. Omniverse Cache and Nucleus must be running prior to install Isaac Sim, however Nucleus often causes unknown problems. Remove and create nucleus account again when a problem is occurred.
Furthermore, it takes so long to install Isaac Sim but you need to see if it is in progress or stucked. Even just closing terminal (Ctrl+C) could resolve the problem when it is stucked. Some says Wi-Fi other than Ethernet is recommended for Nucleus... weird. Anyway, I don't quite remember how I succeeded to install it however, anyway, I installed it...
Learning
Issac Sim tutorials would be the best option to learn Issac sim (as my colleague recommends), although it takes a few days.
ROS2 Foxy Docker
As descirbed in troubleshoots below, an error is occurred on Ubuntu 22.04 Humble at the moment. For that, we can use ROS2 foxy docker instead. Download osrf/ros:foxy-desktop docker and execute bash on it.
Install necessary libraries as described in https://docs.omniverse.nvidia.com/app_isaacsim/app_isaacsim/install_ros.html#ros-2,
// Copy ros2_workspace to docker
$docker ps //--- check container ID
$docker cp <isaac_sim.local/path>/ros2_workspace/src {container_ID}/ros2_workspace/
// In docker,
$sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
$sudo apt install python3-colcon-common-extensions
$source /opt/ros/foxy/setup.bash
$cd /ros2_workspace
$rosdep install -i --from-path src --rosdistro foxy -y
$colcon build
$source install/local_setup.bash
// Save docker
$docker ps //--- check container ID
$docker commit {container_ID} {image_name}
// Run RViz using new docker image
$xhost +local:docker
$source /opt/ros/foxy/setup.bash
$source install/local_setup.bash
$ros2 launch carter_navigation carter_navigation.launch.py
Don't forget to set FastDDS for Isaac Sim.
Troubleshoots
Ubuntu 22.04 Humble
As of January 2023, Isaac Sym crashes when it is launched on Ubuntu 22.04 + ROS2 Humble. (It seems to be working in next release.) The solution is using foxy docker as follows:
1. Download osrf/ros:foxy-desktop docker and run. Do not forget set ROS_DOMAIN_ID.
$ docker run --net=host --env="DISPLAY" --volume="$HOME/.Xauthority:/root/.Xauthority:rw" -it --rm --privileged osrf/ros:foxy-desktop /bin/bash
$ export ROS_DOMAIN_ID=30
2. Run Issac Sim
- Disable ROS bridge & enable ROS2 bridge under Window-Extensions-ros menu.
3. Run Teleop
$ ros2 run teleop_twist_keyboard teleop_twist_keyboard
Ros2_context problem *** happens a lot
It crashes when set Ros2_context in OmniGraph as follows:
It works properly when set the Outputs context to 0 before playing. The value is set again automatically.
ROS2 Docker Not Working
set FASTRTPS_DEFAULT_PROFILES_FILE=C:\<path_to_isaac_sim_package>\ros2_workspace\fastdds.xml
libssl1.1
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb
sudo dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb
Demo
Open and launch Isaac Examples - ROS - Navigation. Check ROS_DOMAIN_ID on ros2_context ActionGraph if it does not move.
References
Setting Tip : https://forums.developer.nvidia.com/t/isaac-sim-enabling-the-ros-2-bridge-extension-by-default/235292