From 74c470a8fa29ee98fd6fc83c71734d87df511092 Mon Sep 17 00:00:00 2001 From: dev01 Date: Sun, 7 Jun 2026 13:45:15 +0800 Subject: [PATCH] fix: restrict PID config serial output to debug mode, default to debug - gimbal_node: skip 0xA8 frame send when not in debug mode - chassis_node: skip 0xA8 frame send when not in debug mode - chassis_node: change default mode from auto to debug --- .../chassis_control_pkg/chassis_node.py | 8 +++++++- .../gimbal_control_pkg/gimbal_control_pkg/gimbal_node.py | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/workspace/src/chassis_control_pkg/chassis_control_pkg/chassis_node.py b/workspace/src/chassis_control_pkg/chassis_control_pkg/chassis_node.py index 81879e3..1dd0a3f 100644 --- a/workspace/src/chassis_control_pkg/chassis_control_pkg/chassis_node.py +++ b/workspace/src/chassis_control_pkg/chassis_control_pkg/chassis_node.py @@ -61,7 +61,7 @@ class ChassisNode(Node): Float32, '/chassis/feedforward', 10 ) - self._current_mode = 'auto' + self._current_mode = 'debug' self._read_thread = threading.Thread( target=self._serial_read_loop, daemon=True @@ -118,6 +118,12 @@ class ChassisNode(Node): self._write_frame(data) def _pid_config_callback(self, msg: String): + if self._current_mode != 'debug': + self.get_logger().warn( + 'Chassis PID config only allowed in debug mode, ' + f'current mode: {self._current_mode}') + return + try: pid = json.loads(msg.data) except json.JSONDecodeError as e: diff --git a/workspace/src/gimbal_control_pkg/gimbal_control_pkg/gimbal_node.py b/workspace/src/gimbal_control_pkg/gimbal_control_pkg/gimbal_node.py index 87d764a..622c1bf 100644 --- a/workspace/src/gimbal_control_pkg/gimbal_control_pkg/gimbal_node.py +++ b/workspace/src/gimbal_control_pkg/gimbal_control_pkg/gimbal_node.py @@ -107,6 +107,12 @@ class GimbalNode(Node): self._write_frame(data) def _pid_config_callback(self, msg: String): + if self._current_mode != 'debug': + self.get_logger().warn( + 'PID config only allowed in debug mode, ' + f'current mode: {self._current_mode}') + return + try: pid = json.loads(msg.data) except json.JSONDecodeError as e: