diff --git a/CHANGELOG.md b/CHANGELOG.md index a01991d6..f7e69d1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # CHANGELOG +## 0.13.1 - 2023-11-30 + + * Hotfix: (temporary-workaround) for max-path-pose-deviation in ExternalMode for callback based control. + ## 0.13.0 - 2023-11-16 * Add abstract ActiveControlBase class for the ActiveControllers to implement. diff --git a/CMakeLists.txt b/CMakeLists.txt index 5d4d90e0..f06fdc4e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.4) list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") -set(libfranka_VERSION 0.13.0) +set(libfranka_VERSION 0.13.1) project(libfranka VERSION ${libfranka_VERSION} diff --git a/src/robot.cpp b/src/robot.cpp index 73479e5d..0a1dd3df 100644 --- a/src/robot.cpp +++ b/src/robot.cpp @@ -55,12 +55,13 @@ void Robot::control(std::function double cutoff_frequency) { std::unique_lock control_lock(control_mutex_, std::try_to_lock); assertOwningLock(control_lock); - - ControlLoop loop(*impl_, std::move(control_callback), - [](const RobotState&, Duration) -> JointVelocities { - return {{0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}}; - }, - limit_rate, cutoff_frequency); + // temporary workaround for the max_path_pose_deviation issue + limit_rate = true; + ControlLoop loop(*impl_, std::move(control_callback), + [](const RobotState& robot_state, Duration) -> JointPositions { + return JointPositions(robot_state.q); + }, + limit_rate, cutoff_frequency); loop(); }