By relying on the input-output feedback linearization approach, a novel adaptive controller for flexible joint robots is proposed in this work. First, a model-based controller is developed to get a structure that is useful in the development of the adaptive controller. The adaptive version is developed by using two techniques. To stabilize the output function, an adaptive neural network controller is used, which approximates the non-linear function that contains the uncertainties. The desired rotor position required by the input-output feedback linearization controller is defined with the structure of a link dynamics adaptive regressor-based controller. The main reason to adopt the mentioned structure in the definition of the desired rotor link position is to guarantee its differentiability. Real-time experiment comparisons among the model-based controller, a model-based controller with desired compensation, an adaptive controller based on joint torque feedback, and an adaptive neural network-based controller are carried out. Experimental results support the theory reported in this document and the accuracy of the proposed approach.