Kinova API Documentation
Kinova Documentation

What to do first?

F.A.Q.

Where is the torque control documentation?

Here !

What are the files needed to use this API under Ubuntu?

What are the files needed to use this API under Windows?

  • CommandLayer.h
  • CommunicationLayerWindows.h
  • KinovaTypes.h
  • CommandLayerWindows.dll
  • CommunicationLayerWindows.dll
  • CommandLayerEthernet.dll
  • CommunicationLayerEthernet.dll

Where can I find all the examples?

All examples are on the software package at this location: from the package's root, they are in the folder Documentation, sub folder API Examples.

How to run an example?

  • Make sure you have installed the Ubuntu package and its dependencies.
  • Make sure that there is a USB cable connected to the robotical arm's usb port.
  • Make sure that the robotical arm is powered on.
  • Go in the Debug folder of the example.
  • Execute the example: sudo ./NameOFExample

I got an error code 1014 from the function InitAPI(), what does it mean?

Most of the time, this happens under Ubuntu and it usually means that you don't have the right privileges on the USB device (in our case, the robotical arm). The file should be in /dev/bus/usb/???/???. You can type the command "lsusb" in your terminal to find out where the device file is located. Check for a device with vendor ID 22CD.

How do I initialize the robotical arm?

This is done by calling 2 functions: MoveHome and InitFingers. Call them in that order and your robotical arm will be ready to move and grab.

What is the reference frame of the robotical arm?

The Cartesian position and orientation returned by the API's functions are relative to the base reference frame. The origin is at the center and bottom of the base. The Z axis points upward, the X axis points to the left (when facing the connectors) and the Y axis is toward the connectors (see the DH Parameters document).

What is the difference between the FIXED and ROTATING frame types?

The fixed frame is the classic robot motion. When you move in translation, the orientation remains constant. The rotating frame is used as default. It's used in rehabilitation to obtain more intuitive motions. When you perform translations, the orientation changes to be more human-like.

What Euler convention is used to represent the orientation?

Convention XYZ

How can I control the robotical arm?

There are 4 modes of control available with the API: cartesian position control, cartesian velocity control, angular position control and angular velocity control.

How do I use the force control?

Have a look at the following example : StartForceControl

Can I communicate with more than one robotic device?

Absolutely. Since the version 5.1.1, this library offers the possibility to communicate with many robotic devices with the same application. Use the function GetDevices (for USB) or Ethernet_GetDevices (for ethernet) to get all the devices connected on the USB bus or your network. You can then use the function SetActiveDevice or Ethernet_SetActiveDevice to select the robotic device you want to communicate with.