How franka intents to handle the TCP offset is through the desk interface as shown below.
However, to unify the TCP configuration between simulation and hardware, the offset should only be handled by RCS and franka should always return the flange position.
- FR3 needs to be configured to return the flange position in desk. This should be into the documentation (@khaledmohamed00 ) and we can implement a check in
move_home to verify that the TCP is correctly configured
get_cartesian_position in FR3.cpp must be adapted to apply cfg.tcp_offset before returning the value
set_cartesian_position_internal as well as osc_set_cartesian_position must remove the configured offset before handing down to libfranka.
How franka intents to handle the TCP offset is through the desk interface as shown below.
However, to unify the TCP configuration between simulation and hardware, the offset should only be handled by RCS and franka should always return the flange position.
move_hometo verify that the TCP is correctly configuredget_cartesian_positionin FR3.cpp must be adapted to applycfg.tcp_offsetbefore returning the valueset_cartesian_position_internalas well asosc_set_cartesian_positionmust remove the configured offset before handing down to libfranka.