Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro jazzy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro kilted showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro rolling showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro github showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro galactic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro iron showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro melodic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange

No version for distro noetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

libfranka package from libfranka repo

libfranka

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.18.1
License Apache 2.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Description C++ client library to control Franka robots in real-time
Checkout URI https://github.com/frankaemika/libfranka.git
VCS Type git
VCS Version main
Last Updated 2025-12-02
Dev Status DEVELOPED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

libfranka is a C++ library for Franka Robotics research robots

Additional Links

Maintainers

  • Franka Robotics GmbH

Authors

  • Franka Robotics GmbH

libfranka: C++ Library for Franka Robotics Research Robots

codecov

libfranka is a C++ library that provides low-level control of Franka Robotics research robots. The API References offers an overview of its capabilities, while the Franka Control Interface (FCI) documentation provides more information on setting up the robot and utilizing its features and functionalities.

To find the appropriate version to use, please refer to the Robot System Version Compatibility.

Key Features

  • Low-level control: Access precise motion control for research robots.
  • Real-time communication: Interact with the robot in real-time.

Getting Started

1. System Requirements

Before using libfranka, ensure your system meets the following requirements:

  • Operating System: Linux with PREEMPT_RT patched kernel (Ubuntu 16.04 or later, Ubuntu 22.04 recommended)
  • Compiler: GCC 7 or later
  • CMake: Version 3.10 or later
  • Robot: Franka Robotics robot with FCI feature installed

2. Installing dependencies

sudo apt-get update
sudo apt-get install -y build-essential cmake git libpoco-dev libeigen3-dev libfmt-dev

3. Install from Debian Package - Generic Pattern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Check your architecture:

dpkg --print-architecture

Download and install:

wget https://github.com/frankarobotics/libfranka/releases/download/<version>/libfranka_<version>_<architecture>.deb
sudo dpkg -i libfranka_<version>_<architecture>.deb

Replace <version> with the desired release version (e.g., 0.18.1) and <architecture> with your system architecture (e.g., amd64 or arm64).

Example for version 0.18.1 on amd64:

wget https://github.com/frankarobotics/libfranka/releases/download/0.18.1/libfranka_0.18.1_amd64.deb
sudo dpkg -i libfranka_0.18.1_amd64.deb


If you prefer to build libfranka inside a Docker container, you can use the provided Docker setup. This ensures a consistent build environment and avoids dependency conflicts on your host system.

Docker creates a self-contained environment, which is helpful if:

  • Your system doesn't meet the requirements
  • You want to avoid installing dependencies on your main system
  • You prefer a clean, reproducible setup

If you haven't already, clone the libfranka repository:

git clone --recurse-submodules https://github.com/frankarobotics/libfranka.git
cd libfranka
git checkout <desired-tag-or-branch>

Using Docker command line

  1. Build the Docker image:
    cd .ci
    docker build -t libfranka:latest -f Dockerfile.focal .
    cd ..
    

File truncated at 100 lines see the full file

CHANGELOG

CHANGELOG

All notable changes to libfranka and pylibfranka will be documented in this file.

[0.18.2]- Unreleased

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Documentation

  • Enhanced documentation with expanded installation methods, and reorganized getting started guide

    Changed

  • upload debian packages automatically to releases

pylibfranka - Python

Added

  • Added Joint and Cartesian Velocity controller examples.

[0.18.1]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Changed

  • The libfranka library is built with static links - removing the need for dynamic dependencies at runtime
  • Fix the acceleration link addition bug and robot model link parsing github
  • Update the test urdf with the acceleration links and joint

pylibfranka - Python

Added

  • Added API documentation section to the official docs: API References

[0.18.0]

Requires Franka Research 3 System Version >= 5.9.0

libfranka - C++

Added

  • Forward kinematics computation using Pinocchio library
  • Jacobian computation using Pinocchio library
  • Accelerometer data exposed in robot state
  • Joint position-based velocity limits parsed from URDF to compute upper and lower velocity bounds
  • Documentation under libfranka repository
  • Feat: Async Position Control Handler added to libfranka to support asynchronous position control (Experimental and subject to change)

Changed

  • Updated libfranka-common (common-libfranka) to use float-based RobotState struct
  • Upgraded Pinocchio dependency to version 3.4.0
  • Upgraded minimum Clang version from 6 to 14
  • Removed dynamic library loading from Model constructor

Fixed

  • Corrected elbow limit rating which was using incorrect values

Deprecated

  • Marked franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q)as deprecated. It will be removed in future versions. Use Robot::getUpperJointVelocityLimits(const std::array<double, 7UL> &joint_positions) and Robot::getLowerJointVelocityLimits(const std::array<double, 7UL> &joint_positions) instead.
  • With system image >= 5.9.0, the joint position limits of the system with libfranka are increased to match the datasheet. The methods franka::computeUpperLimitsJointVelocity(const std::array<double, 7UL> &q) and franka::computeLowerLimitsJointVelocity(const std::array<double, 7UL> &q) now impose stricter constraints compared to the new parametrized limits.

pylibfranka - Python

  • Deployment of the pylibfranka to the github hosted web-page
  • Pylibfranka and libfranka versions are synchronized

[0.17.0] - 2025-10-15

pylibfranka - Python

Added

  • Cartesian pose control interface

0.16.1 - 2025-10-10

  • Fix: fix cmake and package versioning

0.16.0 - 2025-09-15

  • Feat: Added pylibfranka - a python binding for libfranka

0.15.3 - 2025-07-31

  • Fix outdated Emika links

0.15.2 - 2025-07-24

  • Optimize robot model computation

0.15.1 - 2025-06-23

  • docs starts a new docs build

0.15.0 - 2025-01-16

Requires Franka Research 3 System Version >= 5.7.2

  • Improved error minimization for joint/cartesian pose velocities and accelerations.
  • Updated joint position and cartesian pose examples to start from the initial q or O_T_EE.
  • Fixed joint position and cartesian pose low-pass filters to use the same command in the first package.
  • Added a general logger, allowing users to implement custom loggers for receiving log messages.
  • Fixed the bug that prevented exit in case of network connection interruption.

Important

  • The flags fci_joint_motion_generator_position_limits_violation_flag and fci_cartesian_motion_generator_joint_position_limits_violation_flag are now always set to false and will be deprecated in future releases. They will be replaced by joint_position_limits_violation.

BREAKING

File truncated at 100 lines see the full file

Package Dependencies

Deps Name
pinocchio

System Dependencies

Dependant Packages

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged libfranka at Robotics Stack Exchange