Frequently Asked Questions (FAQs): ROS, RightHook, etc.

Prepared by W David Null (null2), edited by ECE498SM team

ROS

  • Q1. Can there be more than one Publisher/Subscriber to a ROS Topic in one ROS node?
  • Yes, you can set up multiple Publisher/Subscriber objects in a ROS node. You just have to instantiate them separately.
  • Q2. Why doesn’t setup.sh work?
  • You may need to replace the instances of “NetID” in the file with your own NetID.
  • Q3. I get an ImportError when trying to run the roslaunch file; what to do? 
  • Run the command “pip install <package_name>” in a terminal where <package_name> is the package that python cannot find.
  • Q4. Where should I clone the GitLab repository on the virtual machine?
  • Make sure to install the repository in your home directory. If this is not done, the code will not know where to look to find certain files.

Virtual Machine

  • Q1. What version of FastX do I install?
  • Use this link to download the latest version of FastX. https://www.starnet.com/fastx/current-client
  • Q2. What network do I have to be on to use FastX?
  • A VPN connection, IllinoisNet, or an EWS computer will work.
  • Q3. How do I get the GUI to work on FastX?
  • Once you have set up your connection and logged in. Start a “mate-session” which should be one of the commands you have the option of running inside FastX once you click on the “+” icon.
  • Q4. Which virtual machine do I use?
  • Because there are many people taking the class and only a few VMs, each student is assigned a VM to work on in order to ensure an even distribution. The VM you will be assigned to is specified on the Google sheet given for the class.

VPN

  • Q1. How do I get a VPN connection?
  • You need to download “Virtual Private Network (VPN)” by Cisco from the UIUC webstore. Once you have that downloaded, follow the setup tutorial. Here is the link for the mac instructions. (https://answers.uillinois.edu/illinois/page.php?id=47629)

RightHook

  • Q1. What is RightHook?
  • RightHook is tool for testing vehicle autonomy algorithms. It provides a photorealistic virtual world for a virtual autonomous car. The autonomous car can be equipped with an array of virtual sensors including LIDAR, sonar, an IMU, and more.
  • Q2. What are some of the most significant differences between the real world, and the RightHook simulation?
  • “All models are wrong, some models are useful.” Righthook is a useful model for testing and developing autonomous vehicle software. That said, (a) RightHook vehicle dynamics is rather simple, (b) sensor models are all simplifications of the underlying physics, (c) real-time computing considerations are not represented accurately in RightHook. The simulator is guaranteed to be deterministic which makes RightHook suitable for developing and testing because bugs are easier to find and fix. In the real world this is much harder because running the same program might yield a different result each time.
  • Q3. Where is the API key for RightHook? How does it work?
  • The lengthy API key you will be using for this class is specified on the Google sheet. Take this key and use it when setting up your docker in the VM.
  • Q4. Why use the Docker?
  • Docker is an environment which allows all dependencies and libraries required for specific development of applications to be contained and stored. This makes it easy to transfer applications to different computers without having to install all dependencies separately for each machine. Also, any changes to common libraries will be contained in the Docker and will not affect other programs.