A method for fault reaction, fault isolation, and graceful degradation in a robotic system having a plurality of robotic arms , wherein each robotic arm has a plurality of motors for actuating degrees of freedom movement of the robotic arm; wherein each robotic arm has one or more nodes for controlling corresponding motors of the robotic arm; and a plurality of arm processors , wherein each of the plurality of arm processors is operatively coupled to a corresponding one of the plurality of robotic arms ; and a system supervisor processor ; the method comprising: detecting, by one of the nodes or one of the arm processors , a fault, affecting the node or arm processor, in a failed arm of the plurality of robotic arms ; placing, by the node or the arm processor, the failed arm into a safe state, wherein the safe state isolates the fault by preventing further movement of the failed arm; diagnosing, by the node or the arm processor, the fault to generate information of the fault, and sending an error message including the information of the fault to the system supervisor processor ; and receiving, by the system supervisor processor , the error message; determining whether the fault should be treated as a system fault or a local fault, by using information in the error message, wherein the system fault affects the performance of at least one other robotic arm of the plurality of robotic arms , and wherein the local fault affects the performance of only the failed arm; and only if the fault is to be treated as a system fault: transmitting, by the system supervisor processor , a fault notification to the arm processors of non-failed arms of plurality of robotic arms , and placing, by the arm processors , non-failed arms of the plurality of robotic arms in the safe state. detecting, by one of the nodes or one of the arm processors , a fault, affecting the node or arm processor, in a failed arm of the plurality of robotic arms ; placing, by the node or the arm processor, the failed arm into a safe state, wherein the safe state isolates the fault by preventing further movement of the failed arm; diagnosing, by the node or the arm processor, the fault to generate information of the fault, and sending an error message including the information of the fault to the system supervisor processor ; and receiving, by the system supervisor processor , the error message; determining whether the fault should be treated as a system fault or a local fault, by using information in the error message, wherein the system fault affects the performance of at least one other robotic arm of the plurality of robotic arms , and wherein the local fault affects the performance of only the failed arm; and only if the fault is to be treated as a system fault: transmitting, by the system supervisor processor , a fault notification to the arm processors of non-failed arms of plurality of robotic arms , and placing, by the arm processors , non-failed arms of the plurality of robotic arms in the safe state. transmitting, by the system supervisor processor , a fault notification to the arm processors of non-failed arms of plurality of robotic arms , and placing, by the arm processors , non-failed arms of the plurality of robotic arms in the safe state. <EOS>