About Foxglove
We use Foxglove to visualize the data being published by our ROS nodes.
This guide is intended as a series of instructions to quickly setup foxglove for our f1tenth environment, for more detailed information please refer to the official foxglove documentation.
Installation
To install the Foxglove-studio app follow these instructions, a web app is also available.
Create an account and log in.
Connecting to the Rosbridge websocket
When running the bringup.py
launchfile on our f1tenth cars
(or the sim.py
launchfile in the docker image) a rosbridge
websocket will also activate.
The websocket's default port is 9090
, so it's address will be:
Open the Foxglove app and select Open connection...
:
In the pop-up window select Rosbridge
and make sure the address
is correct:
Then click
Open
.
You should now be connected to the web socket.
Settings
The data form the ROS topics can be viewed in the 3D Panel,
by selecting the panel you can change its settings in the sidebar
on the left (this section is called Panel
).
For F1tenth set the Display frame
to map
and hide the
transforms in the Transforms
section.
To view the car model scroll down to Custom layers
and click
on the three dots to add a URDF
, in the URDF
you just added
select Topic
as source and /ego_robot_description
in the
Topic
value.
For better visibility set the Color by
value of the /scan
topic
to range
.
Panels
You can change your layout as you see fit, some panels you will likely find useful while working are:
Raw messages
: displays the content of the messages being published on a topic in real time.Topic graph
: displays a graph of the ros nodes currently active, likerqt_graph
Publish
: allows to publish messages in any of the active topics
Replaying Ros-bags
Foxglove implements an easy way to view the data recorded in a ros-bag file:
First, select Open file(s)
:
Then select the ros-bag file you'd like to view, these are in the .db3
format usually.
You will now see the usual Foxglove panel with the addition of
a playback bar at the bottom that allows to view the ros-bag
recording like a video player: