From 9cddf789e4d7dd3514056ccfbae5c9f1ee3c29eb Mon Sep 17 00:00:00 2001 From: mark Date: Tue, 17 Feb 2026 18:29:53 +0000 Subject: [PATCH] fix: added tracebacks --- .../2_collect_teleop_data_with_neuracore.py | 22 ++++++++++++------- piper_controller.py | 3 ++- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/examples/2_collect_teleop_data_with_neuracore.py b/examples/2_collect_teleop_data_with_neuracore.py index d7143a1..fedff4e 100644 --- a/examples/2_collect_teleop_data_with_neuracore.py +++ b/examples/2_collect_teleop_data_with_neuracore.py @@ -85,7 +85,9 @@ def log_to_neuracore_on_change_callback( else: print(f"\n⚠️ Unknown logging function: {name}") except Exception as e: - print(f"\n⚠️ Failed to call {name} to Neuracore: {e}") + print(f"\n⚠️ Failed to call {name} to Neuracore. Exception: {e}") + print("Traceback:") + traceback.print_exc() def on_button_a_pressed() -> None: @@ -132,14 +134,18 @@ def on_button_rj_pressed() -> None: nc.start_recording() print("✓ 🔴 Recording started (Button RJ)") except Exception as e: - print(f"✗ Failed to start recording: {e}") + print(f"✗ Failed to start recording. Exception: {e}") + print("Traceback:") + traceback.print_exc() else: # Stop recording try: nc.stop_recording() print("✓ ⏹️ Recording stopped (Button RJ)") except Exception as e: - print(f"✗ Failed to stop recording: {e}") + print(f"✗ Failed to stop recording. Exception: {e}") + print("Traceback:") + traceback.print_exc() if __name__ == "__main__": @@ -298,11 +304,9 @@ def on_button_rj_pressed() -> None: except KeyboardInterrupt: print("\n👋 Interrupt received - shutting down gracefully...") except Exception as e: - print(f"\n❌ Demo error: {e}") - import traceback - + print(f"\n❌ Demo error. Exception: {e}") + print("Traceback:") traceback.print_exc() - # Cleanup print("\n🧹 Cleaning up...") @@ -313,7 +317,9 @@ def on_button_rj_pressed() -> None: nc.cancel_recording() print("✓ Recording cancelled") except Exception as e: - print(f"⚠️ Error cancelling recording: {e}") + print(f"⚠️ Error cancelling recording. Exception: {e}") + print("Traceback:") + traceback.print_exc() # shutdown threads nc.logout() diff --git a/piper_controller.py b/piper_controller.py index 34eeae9..6a2c34e 100644 --- a/piper_controller.py +++ b/piper_controller.py @@ -135,7 +135,8 @@ def cleanup(self) -> None: and self.piper is not None and self.piper.get_connect_status() ): - self.graceful_stop() # this will disable the robot as well + if self.is_robot_enabled(): + self.graceful_stop() # this will disable the robot as well self.piper.DisconnectPort() print("✓ Robot disconnected")