Modern drives of mobile robots are complex machines. Because of this complexity, as well as of wear and aging of components, faults occurs in such systems quite frequently at runtime. In order to use such drives in truly autonomous robots it is desirable that the robot is able to automatically react to such faults. Therefore, the robot needs reasoning and reconfiguration capabilities in order to be able to detect, localize and repair such faults on-line. In this paper we propose a model-based diagnosis and reconfiguration framework which allows an autonomous robot to detect and compensate faults in its drive. Moreover, we present an implementation for a real robot platform. Finally, we report experimental results which shows that the proposed framework is able to correctly cope with injected faults in the drive hardware, like broken motors.