📖 Full documentation: https://robotiq.github.io/docs/drivers/2F%20hande/SDK/C++/
C++ driver with functions to control Robotiq Adaptive Grippers: 2F85, 2F140 and Hand-E. It allows high communication frequency.
Note: With the default baudrate of the gripper the maximum achievable communication frequency is 250Hz. The communication frequency is set with the
ConnectionConfig::connectionFrequencyparameter, which defaults to 100Hz.
Cross-platform: Linux, Windows, macOS — and freestanding/RTOS targets such as STM32 microcontrollers.
Submit here: Robotiq/grippers/issues
Semantic versioning from 1.0.0 on: patch releases fix
bugs, minor releases add API, and a breaking change to the documented API takes
a major release. The documented API is what this README and the headers under
Robotiq/gripper/ describe — Gripper, the command/status blocks,
ConnectionConfig, Serial, Platform, Logger, the toString() free
functions, DeviceProfile and the SI unit conversions, and
GripperModbusClient for the no-thread path. The text toString() renders is
for people, not parsers: its layout may change in any release. Everything
under Robotiq/detail/ is internal and may change in any release.
The injectable interfaces are the exception, and only for the side that
implements them: a minor release may add a member Platform, Serial or
Logger requires, since what they have to cover grows with every new target
and transport. Calling them keeps the major-release guarantee. If you maintain
an implementation out of tree — an RTOS Platform, a UART Serial — pin the
minor version; moving up gives a compile error naming the new member, and the
in-tree implementations show what to return.
Two paths this section named at 1.0.0 have moved: the register map to
Robotiq/detail/register_map.hpp, and the Modbus client from
detail/gripper_modbus_client.hpp to gripper/modbus_client.hpp. Both old
paths still exist as shims that include the new header and warn; they go away
in the next major release. Headers this section never named —
gripper/named_bit_array.hpp and gripper/throttle.hpp — moved into
Robotiq/detail/ without a shim, as did makeDefaultLogger(); pass a null
Logger to get the build's default one.
BSD-3-Clause. Robotiq develops and maintains this SDK; parts of it started from PickNik Robotics' ros2_robotiq_gripper driver (BSD-3-Clause), whose original copyright notices are preserved in the affected files, with the full history preserved in git.