From 1369cca15de8954937447c45c082589dd8ced7bd Mon Sep 17 00:00:00 2001 From: Pierre Krack Date: Wed, 8 Jan 2025 17:59:50 +0100 Subject: [PATCH 1/2] Fix double reset correctly reset `last_ts` in camera frame buffers --- python/tests/test_sim_envs.py | 46 +++++++++++++++++++++++++++++++++++ src/sim/camera.cpp | 2 ++ 2 files changed, 48 insertions(+) diff --git a/python/tests/test_sim_envs.py b/python/tests/test_sim_envs.py index f2a9e253..11fedca2 100644 --- a/python/tests/test_sim_envs.py +++ b/python/tests/test_sim_envs.py @@ -57,6 +57,20 @@ def assert_collision(self, info: dict): class TestSimEnvsTRPY(TestSimEnvs): """This class is for testing TRPY sim env functionalities""" + def test_reset(self, cfg, gripper_cfg, cam_cfg): + """ + Test reset functionality. + """ + # TODO: + # - test initial pose after reset. + # - test initial gripper config. + env = fr3_sim_env( + ControlMode.CARTESIAN_TRPY, cfg, gripper_cfg=gripper_cfg, camera_set_cfg=cam_cfg, max_relative_movement=None + ) + # Test double reset. Regression test. A lot can go wrong when resetting. + env.reset() + env.reset() + def test_zero_action_trpy(self, cfg): """ Test that a zero action does not change the state significantly @@ -169,6 +183,24 @@ def test_collision_guard_trpy(self, cfg, gripper_cfg, cam_cfg): class TestSimEnvsTquart(TestSimEnvs): """This class is for testing Tquart sim env functionalities""" + def test_reset(self, cfg, gripper_cfg, cam_cfg): + """ + Test reset functionality. + """ + # TODO: + # - test initial pose after reset. + # - test initial gripper config. + env = fr3_sim_env( + ControlMode.CARTESIAN_TQuart, + cfg, + gripper_cfg=gripper_cfg, + camera_set_cfg=cam_cfg, + max_relative_movement=None, + ) + # Test double reset. Regression test. A lot can go wrong when resetting. + env.reset() + env.reset() + def test_non_zero_action_tquart(self, cfg): """ Test that a zero action does not change the state significantly in the tquart configuration @@ -271,6 +303,20 @@ def test_collision_guard_tquart(self, cfg, gripper_cfg, cam_cfg): class TestSimEnvsJoints(TestSimEnvs): """This class is for testing Joints sim env functionalities""" + def test_reset(self, cfg, gripper_cfg, cam_cfg): + """ + Test reset functionality. + """ + # TODO: + # - test initial pose after reset. + # - test initial gripper config. + env = fr3_sim_env( + ControlMode.JOINTS, cfg, gripper_cfg=gripper_cfg, camera_set_cfg=cam_cfg, max_relative_movement=None + ) + # Test double reset. Regression test. A lot can go wrong when resetting. + env.reset() + env.reset() + def test_zero_action_joints(self, cfg): """ This is for testing that a certain action leads to the expected change in state diff --git a/src/sim/camera.cpp b/src/sim/camera.cpp index 429ff520..1d1dda92 100644 --- a/src/sim/camera.cpp +++ b/src/sim/camera.cpp @@ -51,6 +51,8 @@ int SimCameraSet::buffer_size() { } void SimCameraSet::clear_buffer() { std::lock_guard lock(buffer_lock); + // when we clear the buffer, there is no last image timestep + this->last_ts = 0; buffer.clear(); } From 267d291233c470ed4c619f0ddf1df5fea3d7821b Mon Sep 17 00:00:00 2001 From: Pierre Krack Date: Thu, 9 Jan 2025 10:28:55 +0100 Subject: [PATCH 2/2] Bump clang version in pipeline github's ubuntu-latest runner image updated to ubuntu 24.04 --- .github/workflows/cpp.yaml | 2 +- .github/workflows/py.yaml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cpp.yaml b/.github/workflows/cpp.yaml index 8a3da66b..cb350062 100644 --- a/.github/workflows/cpp.yaml +++ b/.github/workflows/cpp.yaml @@ -26,7 +26,7 @@ jobs: - name: Clang build run: make clangcompile - name: Clang Tidy - run: clang-tidy-15 -p=build --warnings-as-errors='*' $(find src -name '*.cpp' -o -name '*.cc' -name '*.h') + run: clang-tidy -p=build --warnings-as-errors='*' $(find src -name '*.cpp' -o -name '*.cc' -name '*.h') build_gcc: runs-on: ubuntu-latest diff --git a/.github/workflows/py.yaml b/.github/workflows/py.yaml index a52883c5..6eb9a51d 100644 --- a/.github/workflows/py.yaml +++ b/.github/workflows/py.yaml @@ -28,8 +28,8 @@ jobs: pythonpackage: runs-on: ubuntu-latest env: - CC: clang-15 - CXX: clang++-15 + CC: clang + CXX: clang++ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v4