  Robotic systems have subsystems with a combinatorially large configuration
space and hundreds or thousands of possible software and hardware configuration
options interacting non-trivially. The configurable parameters are set to
target specific objectives, but they can cause functional faults when
incorrectly configured. Finding the root cause of such faults is challenging
due to the exponentially large configuration space and the dependencies between
the robot's configuration settings and performance. This paper proposes CaRE --
a method for diagnosing the root cause of functional faults through the lens of
causality. CaRE abstracts the causal relationships between various
configuration options and the robot's performance objectives by learning a
causal structure and estimating the causal effects of options on robot
performance indicators. We demonstrate CaRE's efficacy by finding the root
cause of the observed functional faults and validating the diagnosed root cause
by conducting experiments in both physical robots (Husky and Turtlebot 3) and
in simulation (Gazebo). Furthermore, we demonstrate that the causal models
learned from robots in simulation (e.g., Husky in Gazebo) are transferable to
physical robots across different platforms (e.g., Husky and Turtlebot 3).
