JACO Assistive Robotic Device: Empowering People With Disabilities Through Innovative Algorithms

Alexandre Campeau-Lecours1, Véronique Maheu2, Sébastien Lepage2, Hugo Lamontagne2,  Simon Latour2, Laurie Paquet2, Neil Hardie2

1 Department of mechanical engineering, Université Laval, Québec, Canada

2 Kinova, Boisbriand, QC, Canada


JACO is a commercially available robotic assistive device designed to help people with upper body disabilities gaining more autonomy in their daily life. The device consists of an arm and hand (gripper) mounted on a power wheelchair.  This assistance is possible through basic functions such as tri-dimensional displacement of the gripper in space, finger opening and closing and orientation of the wrist. Although these basic functionalities allow the user to perform many tasks, advanced functionalities were required to further empower the users. This paper presents advanced functionalities that were implemented in JACO in order to increase the users’ safety and to enhance their autonomy by increasing the number of achievable tasks and diminishing the time and effort needed to achieve them.


Robots for assisting in manipulation become a powerful solution for enhancement of autonomy for people living with severe upper-limb motor impairments. Such robots may assist people in various tasks such as eating, drinking, moving various objects, turning book pages, opening and closing doors and turning on and off electrical and electronic systems. They also serve to move the user’s hand or feet, to cross legs or to stretch and can be used as a rehabilitation device in clinics (Van der Loos & Reinkensmeyer, 2008). Lately, a new generation of multitask assistive robots was introduced. Some of these robotic manipulators were designed to be installed on a fixed workstation while others were onboard mobile devices that followed users in their daily activities. The latter offered more flexibility to the user and allowed them to enhance their autonomy for a wider spectrum of activities. While many onboard robotic manipulators were developed, very few were commercialized. Some examples of assistive robots are the iARM by Exact Dynamics (Dynamics 2010) which resulted from the MANUS project (Kwee, 2000) and the Raptor by Phybotics (Applied Ressources Corporation). These assistive robots should allow efficient operations with most activities of daily living (ADL), comply with the environmental limits of a motorized wheelchair, possess an intuitive control, and allow further development and integration of new tools.

    JACO is a robotic arm produced by Kinova that consists of a fixed base (controller) which is linked to 6 carbon fiber shells and a gripper through rotating actuators. It is a unique manipulating device that was designed to be installed on a motorized wheelchairs (Figure 1) and used by persons living with upper extremity mobility limitations. Controlled through the wheelchair drive control, it allows the user to reach, move and manipulate objects in his/her surroundings. This allows enhanced autonomy in daily activities such as drinking, scratching an itch, eating, picking up items, opening doors and more (Maheu et al., 2011). JACO has been on the market since early 2010 and over 200 units have been sold in more than 25 countries. Different clinical trials have been conducted in the last few years and have shown that this assistive device is easy to use in several daily tasks considered as important for the users (Routhier & Archambault, 2010), increases the users’ autonomy (Clark, 2013) and social participation (Routhier et al., 2014) and reduces the required caregiving time (Maheu, Frappier, Archambault and Routhier, 2011).

Figure 1: A picture of a user in a power wheelchair equipped with a JACO robot.
Figure 1: JACO mounted on a power wheelchair.
Although basic motions such as positioning and orienting the gripper in space allow performance of many tasks, the users’ needs are not quite met. Indeed, complex or repetitive tasks may take too long to achieve. This could be due to multiple factors such as few available independent control signals (e.g. head joystick) (Fall et al., 2015), lack of fine movements (to perform precision tasks such as picking up a straw) and heavy user spasms. Advanced functionalities were thus designed to further empower the users. The main objective was to increase the user’s safety and to enhance their autonomy by increasing the number of achievable tasks and diminishing the time and effort needed to achieve them. The paper is structured as follows. The basic functionalities are first described. The safety features and the advanced functionalities are then presented along with a discussion and a conclusion.


A Cartesian controller automatically coordinates the actuators in order to procure intuitive motions to the user. The Cartesian controller allows 8 basic movements: 3 translations, 3 rotations of the wrist and opening/closing of the fingers (Figure 2).

Figure 2: A picture of a 6 degree of freedom JACO robot.
Figure 2 : JACO 6 degree of freedom version.

The device can be equipped with a three or a two fingers gripper. The three fingers gripper allows opening and closing of either two fingers (index and thumb) to pinch a fine object (such as a straw or a pen) or three fingers to assure better grasp of a larger object. The three fingers gripper main advantage is that it allows a stronger grasp while the two fingers gripper is less cumbersome. The best solution depends on the users specific needs. 

Figure 3: A picture of a three fingers and two fingers gripper.
Figure 3 : Kinova’s grippers: KG-3 and KG-2.

In addition to these basic movements, the Home/Retract function sends JACO, through a single command, to a position where it is ready to use (“home”) or to rest (“retract”).  More specifically, the retract mode allows placing the robot in a folded and non-obtrusive position to avoid collisions and to be very discrete. Both positions are configurable to adapt to the users’ needs. A completely individualized mapping of the control is possible through a computer-based software. These basic functionalities are accessible by all users, regardless of their individual needs and necessities.


Safety is the primary concern in the field of physical Human-Robot interaction (pHRI). Indeed, safety of the users and their surroundings must be a priority when designing a robotic device. Many safety features are embedded in JACO and this section describes some of the most important ones.

Intrinsically Safe

The most robust method to insure safety is to design intrinsically safe robots (De Santis, Siciliano, De Luca and Bicchi, 2008). For instance, designing lightweight robots allows to reduce the moving mass and to limit the robot’s maximum power. Thus, even in case of collisions, the robot would not be able to apply any harmful force on its surroundings or on the user. The robot design is also very important. For instance, there should be no place where a user could get a limb pinched or squeezed. Although these dangerous zones could be avoided by the controller, it could induce counter-intuitive motions or unexpected stops of the robot. A wrist design made of two identical 55 degrees wrists was thus chosen (Figure 2). This design eliminates a dangerous zone for the user and also leads to a smooth look, which is important for the user’s adoption of the technology.

Protection Zones

Figure 4: A picture of a conceptual drawing representing the slow zone and the stop zone.
Figure 4 : JACO user’s protection zones
The force that can be applied by JACO on its surrounding is limited by the intrinsic motor’s capacity (velocity and torque). To enhance the protection level and prevent the user from harming himself/herself through an unexpected command, customized protection zones can be set for the user. The protection zone consists of a“stop zone” where no part of the assistive device is allowed, and a “slow” zone where the assistive device velocity decreases (Figure 4). The protection zone represents a compromise between the user’s mobility (e.g. possibility of moving in/out of the protection zone) and the need to allow access to body parts (e.g. scratching the forehead).

Current Limitations

The force applied by the robot on its environment is estimated by using the current measurement at each actuator. This measurement is monitored in real time to detect possible collisions. If such an event is detected, the robot would stop.


Figure 5: A picture of an adaption tool to help JACO holding a fork.
Figure 5. Minor adaptation to everyday objects
Many strategies may be used to insure intuitive and efficient use of the assistive device such as design, training, tools and adaptation to everyday objects (Figure 5). This section presents robotic algorithms designed for specific users’ needs.  These additional functionalities aims to enhance the users’ autonomy by increasing the number of achievable tasks and diminishing the time and effort needed to achieve them.

Drinking Mode

Figure 6: A picture of JACO pouring a glass of water.
Figure 6 : Pouring motion of JACO
Most of JACO users drink with a straw. However, for those who wish to drink directly from a glass or to pour a drink, a combination of upward and backward translations in addition to wrist rotation are needed to assure proper positioning of the bottle. While humans easily perform this motion, it is a complex motion to perform with a robot. To overcome this barrier, an automatic synchronization of the drinking motion was designed. The drinking mode algorithm shifts the center of rotation of the gripper in height and radius. This allows setting the bottle at a single position near the mouth and performing the drinking motion very easily by activating the wrist rotation. The motion of drinking and pouring are very similar (Figure 6) and both tasks may be enhanced by activating the drinking mode.

Spasm Filter

The spasm filter was developed to overcome two independent problems. The first problem is heavy muscular spasms (e.g. users living with cerebral palsy), inducing unexpected errors in control signals. Filtering the control signal is a simple method to reduce the impact of these involuntary commands. Traditional filters help to decrease the acceleration of the motions, which limits the effects of the spasm commands. However, typical filters also impacts the deceleration of the motions which leads to another problem. Indeed, when the user has reached the target, the device would continue to move for a given time, because of the filter impact on the deceleration, and it would then overshoot and pass through the target. A spasm filter was thus designed to limit the acceleration of JACO. This is achieved by modifying the response of the robotic arm to the control signal by gradually increasing its velocity. However, the deceleration is not limited by this special filter, which allows instant stopping of the robot when the user stops the command. The spasm filter can be set to different levels in order to adapt to the specific user’s condition.

The second problem is the lack of proportional control due to some wheelchair configurations and technologies. Proportional control means that a slight displacement of the control device creates a slow displacement of the assistive device. When there is no proportionality, the control signal is either at zero or at full speed. It is then difficult for a user to perform fine motion such as picking up a pen from a table. Because the spasm filter limits the device’s acceleration, it allows the user to gain access to lower speed and finer precision.

Preset Position And Trajectory

Many single tasks, such as pushing on an elevator button, or elaborate tasks, such as eating, are time consuming and complex if performed with an assistive device like JACO. Those tasks necessitate the user to toggle through multiple modes and accessing many different motion commands. By analyzing those tasks, it has been observed that some positions in space, in relation to JACO, are often repeated.

The idea of the preset position and preset trajectory was to enable the user to record, respectively, a position or multiple positions (trajectory), to optimize the time and effort needed to perform a task. Once the position or trajectory is defined, the user can reach them with a simple command (e.g. pushing a button).

Automatic Orientation

Lack of dexterity in fine movements combined with the necessity for perfect alignment with a precise axis can make it difficult for a user to achieve a task such as picking up an object from a flat surface (alignment of the finger perpendicular to the table). By the activation of a unique command (e.g. pushing a button), this algorithm aligns the fingers with a selected axis. This advanced function, known as automatic orientation, allows very easy alignment, reducing the time and effort needed to complete a task, or part of a task.

Singularity Avoidance Algorithm

Singularities and joint limitations are present in every robot and prevent some motions. In an industrial application, the trajectories would be planned to avoid these zones or the robot would otherwise stop when reaching those limits. However, in service robotics and in human-robot interaction applications, trajectories are defined in real time by the user. Singularities and joint limitations are thus frequently reached and it would be very difficult to control the robot if it stopped each time it encountered a limitation. A singularity and joint limit avoidance algorithm was thus developed to allow the user to intuitively continue its motion without stopping the robot.

Variable Robot Maximum Velocity

The learning curve and dexterity of every user differs depending on many variables such as age, cognitive abilities, manual dexterity, wheelchair technology, drive control and more. Variation of the robot maximum velocity allows adapting to those variables and allows more safety for the inexperienced user. The linear speed of the gripper may be set from 4 to 20 cm/s.


In this paper, we have presented different functionalities and algorithms that were developed to increase JACO’s performances. Because the users’ safety is of the utmost importance, safety features such as protection zones and current limitation were first implemented. Advanced functionalities were then added to enhance the users’ autonomy by increasing the number of achievable tasks and diminishing the time and effort needed to achieve them.

The features were developed and tested with the help of experienced JACO users. Future work will focus on clinical trials aiming to evaluate precisely the contribution of each individual feature on the user’s performances, both in terms of achievable tasks and of time and effort to achieve them.


       Although JACO’s basic functionalities allow the user to perform many tasks, advanced functionalities were required to further empower the users. This paper has presented  advanced functionalities implemented in JACO that were specifically designed to increase JACO users’ safety, to increase the number of achievable tasks and to decrease the time and effort needed to achieve them. Future work will focus on clinical trials aiming to determine the specific contribution of each individual advanced functionality on users’ performances when using JACO.


  1. Clark E. Utilisation d’un bras robotisé par des personnes ayant un contrôle moteur diminué aux membres supérieurs. (2013) Motricité Cérébrale : Réadaptation, Neurologie du Développement. 34; 63-70.
  2. De Santis, A., Siciliano, B., De Luca, A., Bicchi, A. (2008). An atlas of physical human–robot interaction. Mechanism and Machine Theory. 2008. 43.3: 253-270.
  3. Fall, C. L., Turgeon, P., Campeau-Lecours, A., Maheu, V., Boukadoum, M., Roy, S., Massicotte, D., Gosselin, C. and Gosselin, B. (2015). Intuitive Wireless Control of a Robotic Arm for people living with an upper body Disability. The 37th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC’15).
  4. Kwee H.H. (2000). Integrated control of MANUS manipulator and wheelchair enhanced by environmental docking. Robotica 16, 491–498.
  5. Maheu, V., Frappier, J., Archambault, PS., Routhier, F. (2011). Evaluation of the JACO robotic arm: Clinico-economic study for powered wheelchair users with upper-extremity disabilities. IEEE International Conference on Rehabilitation Robotics. 1-5.
  6. Routhier, F. and Archambault, PS. (2010). Usability of a joystick-controlled six degree-of-freedom robotic manipulator. Rehabilitation Engineering and Assistive Technology Society of North America, RESNA Annual Conference.
  7. Routhier, F., Archambault, P., Cyr, M. C., Maheu, V., Lemay, M., & Gélinas, I. (2014). Benefits Of Jaco Robotic Arm On Independent Living And Social Participation: An Exploratory Study. Rehabilitation Engineering and Assistive Technology Society of North America, RESNA Annual Conference.
  8. Van der Loos, HF. M. and Reinkensmeyer, DJ. (2008). Rehabilitation and health care robotics. Springer Handbook of Robotics. 1223-1251.