We can start a TurtleBot simulation using the following command:
$ roslaunch turtlebot_gazebo turtlebot_playground.launch
You will get the TurtleBot simulation in Gazebo like this:
You can move the robot by launching the teleop node with the following command:
$ roslaunch turtlebot_teleop keyboard_teleop.launch
You can now move the robot using the keyboard. Launch the app again and connect to the ROS master running on the PC. Then, you can remap the Gazebo RGB image compressed data into an app image topic, like this:
$ rosrun topic_tools relay /camera/rgb/image_raw/compressed /usb_cam/image_raw/compressed
Now, what happens is that the robot camera image is visualized in the app, and if you put the phone into a VR headset, it will simulate a 3D environment. The following screenshot shows the split view of the images from Gazebo:
You can move the robot using a keyboard as of now. In the next section, we can see the possible issues and the solutions that you may encounter when you work with the application.