'robot_name' KeyError in get_data when running RMF demo on ROS 2 Jazzy (#698)

Posted by @rajgavhale52:

Hi RMF team,

I’m trying to run an Open-RMF demo on ROS 2 Jazzy, but I’m encountering the following repeated error in the fleet adapter logs:
[fleet_adapter-15] Other error for tinyRobot1 in get_data: ‘robot_name’
[fleet_adapter-15] Other error for tinyRobot2 in get_data: ‘robot_name’

This seems to be a KeyError: ‘robot_name’, likely caused when the fleet adapter attempts to parse the robot status data and does not find the expected ‘robot_name’ field.

What I’ve Checked:

The server-side /status endpoint is running and returning JSON.

However, in some cases, the data field in the response lacks 'robot_name', which causes the error.

This is being caught by client-side checks added to the adapter:

if 'robot_name' not in data:
    print(f"[ERROR] Malformed 'data' content for {robot_name}: missing key 'robot_name'")
    return None

:hammer_and_wrench: My Setup:

ROS 2 distro: Jazzy

RMF version: latest from source (or binary, please clarify here)

Running: rmf_demos with simulated robots (tinyRobot1, tinyRobot2)

FastAPI backend used for robot status updates

Posted by @xiyuoh:

Hello @rajgavhale52 , this is likely an incompatibility with rmf_simulation leading to the fleet adapter unable to discover the robots. I notice your RMF version is a little ambiguous, unsure if you’re using source or binary. Assuming you’re building latest from source, please ensure that you have rmf_simulation and rmf_traffic_editor checked out to jazzy branch before doing a clean build. You can use main for all the other repos. This is documented in our Systems Requirements. Let me know if this works for you.

Posted by @rajgavhale52:

Let me ask one more thing i want to modify the slotcar plugin but i found difficult to build the rmf_simulation packages in humble having vendor packages error please provide me some idea about this