Loaded RL policy from /Users/georgpuschel/repos/robot-ml/nova-sim/robots/g1/policy/motion.pt Starting simulation loop... * Serving Flask app 'mujoco_server' * Debug mode: off WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Running on all addresses (0.0.0.0) * Running on http://127.0.0.1:3004 * Running on http://172.31.10.66:3004 Press CTRL+C to quit 127.0.0.1 - - [21/Jan/2026 12:37:14] "GET /nova-sim/api/v1/metadata HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:14] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:14] "GET /nova-sim/api/v1/video_feed?ts=1768995434741 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:14] "GET /nova-sim/api/v1/camera/aux_top/video_feed?ts=1768995434741 HTTP/1.1" 404 - 127.0.0.1 - - [21/Jan/2026 12:37:14] "GET /nova-sim/api/v1/camera/aux_side/video_feed?ts=1768995434741 HTTP/1.1" 404 - 127.0.0.1 - - [21/Jan/2026 12:37:14] "GET /nova-sim/api/v1/camera/aux_flange/video_feed?ts=1768995434741 HTTP/1.1" 404 - 127.0.0.1 - - [21/Jan/2026 12:37:15] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/video_feed HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/metadata HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/video_feed?ts=1768995450178 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/camera/aux_top/video_feed?ts=1768995450179 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/camera/aux_side/video_feed?ts=1768995450179 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:37:30] "GET /nova-sim/api/v1/camera/aux_flange/video_feed?ts=1768995450179 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/ws HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/video_feed HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/metadata HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/video_feed?ts=1768995508174 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/camera/aux_top/video_feed?ts=1768995508185 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/camera/aux_side/video_feed?ts=1768995508185 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:28] "GET /nova-sim/api/v1/camera/aux_flange/video_feed?ts=1768995508185 HTTP/1.1" 200 - WebSocket client connected [WS] Received message type: switch_robot Robot switch requested: ur5_t_push / scene: scene_t_push Switching to robot: ur5_t_push [WS] Received message type: switch_robot Robot switch requested: ur5_t_push / scene: scene_t_push Nova API credentials detected - attempting bidirectional control [Nova] Configuring Nova API with config: {'use_state_stream': True, 'use_ik': False, 'use_jogging': True} [Nova] use_state_stream=True, use_ik=False, use_jogging=True [Nova] Attempting to load config from environment variables... [Nova] Config loaded from env: https://vaxtlucd.instance.wandelbots.io, controller=ur5e, motion_group=0@ur5e [Nova] Creating NovaApiClient... [Nova] Client created successfully. State streaming: True, IK: False, Jogging: True [Nova] Starting state stream... [Nova] Starting state stream thread... [Nova] Connecting to state stream: wss://vaxtlucd.instance.wandelbots.io/api/v2/cells/cell/controllers/ur5e/motion-groups/0@ur5e/state-stream?response_rate=100 [Nova] State stream started successfully [Nova] WARNING: State streaming enabled - simulation is now a digital twin. [Nova] Robot state comes from Nova API, local targets/IK are ignored. [Nova] Creating NovaJogger... [Nova Jogger] Ready to connect (will connect on first jog command) [Nova] Jogger connected successfully [Nova] Jogging enabled - UI can send directional jog commands [Nova] Configuring Nova API with config: {'use_state_stream': True, 'use_ik': False, 'use_jogging': True} [Nova] State stream connected successfully [Nova] use_state_stream=True, use_ik=False, use_jogging=True [Nova] Attempting to load config from environment variables... [Nova] Config loaded from env: https://vaxtlucd.instance.wandelbots.io, controller=ur5e, motion_group=0@ur5e [Nova] Creating NovaApiClient... [Nova] Client created successfully. State streaming: True, IK: False, Jogging: True [Nova] Starting state stream... [Nova] Starting state stream thread... [Nova] Connecting to state stream: wss://vaxtlucd.instance.wandelbots.io/api/v2/cells/cell/controllers/ur5e/motion-groups/0@ur5e/state-stream?response_rate=100 [Nova] State stream started successfully [Nova] WARNING: State streaming enabled - simulation is now a digital twin. [Nova] Robot state comes from Nova API, local targets/IK are ignored. [Nova] Creating NovaJogger... [Nova Jogger] Ready to connect (will connect on first jog command) [Nova] Jogger connected successfully [Nova] Jogging enabled - UI can send directional jog commands Switched to ur5_t_push [Nova] State stream connected successfully [Nova] State stream update (seq=20404336, 6 joints) payload={"seq": 20404336, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:37:15.457548842Z"} [Nova] State stream update (seq=20405716, 6 joints) payload={"seq": 20405716, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:37:25.536884448Z"} WebSocket client connected [Nova] State stream update (seq=20407084, 6 joints) payload={"seq": 20407084, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:37:35.588231228Z"} [Nova] State stream update (seq=20408452, 6 joints) payload={"seq": 20408452, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:37:45.606961688Z"} [Nova] State stream update (seq=20409832, 6 joints) payload={"seq": 20409832, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:37:55.677707551Z"} [Nova] State stream update (seq=20411200, 6 joints) payload={"seq": 20411200, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:38:05.685475853Z"} [Nova] State stream update (seq=20412568, 6 joints) payload={"seq": 20412568, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:38:15.705913152Z"} [Nova] State stream update (seq=20413948, 6 joints) payload={"seq": 20413948, "joint_position": [-3.7195518016815186, -1.3023245334625244, 1.538793683052063, -1.36310613155365, -1.693894624710083, -0.5143474340438843], "timestamp": "2026-01-21T11:38:25.785773953Z"} WebSocket client disconnected WebSocket client connected [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: action [Nova Jogger] Connecting to cartesian endpoint: wss://vaxtlucd.instance.wandelbots.io/api/v1/cells/cell/motion-groups/move-tcp [Nova Jogger] Connected to cartesian endpoint [Nova Jogger] Cartesian X translation at 50.0 mm/s (dir: 1) [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Nova] State stream update (seq=20415316, 6 joints) payload={"seq": 20415316, "joint_position": [-3.68723464012146, -1.2210352420806885, 1.4292374849319458, -1.3314365148544312, -1.679957628250122, -0.4849919080734253], "timestamp": "2026-01-21T11:38:35.851162205Z"} [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: action [Nova Jogger] Cartesian Y translation at 50.0 mm/s (dir: -1) [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: action [Nova Jogger] Cartesian Y translation at 50.0 mm/s (dir: 1) [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: action [Nova Jogger] Cartesian Y translation at 50.0 mm/s (dir: -1) [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: action [Nova Jogger] Cartesian X translation at 50.0 mm/s (dir: -1) [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: action [Nova Jogger] Cartesian X translation at 50.0 mm/s (dir: 1) [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [WS] Received message type: camera [Nova] State stream update (seq=20416684, 6 joints) payload={"seq": 20416684, "joint_position": [-3.7549033164978027, -1.3193519115447998, 1.5616960525512695, -1.373165249824524, -1.7090238332748413, -0.5465713143348694], "timestamp": "2026-01-21T11:38:45.888551092Z"}127.0.0.1 - - [21/Jan/2026 12:38:49] "GET /.well-known/appspecific/com.chrome.devtools.json HTTP/1.1" 404 - 127.0.0.1 - - [21/Jan/2026 12:38:50] "GET /nova-sim/api/v1 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:50] "GET /nova-sim/api/v1/ws HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:50] "GET /nova-sim/api/v1/video_feed HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:50] "GET /.well-known/appspecific/com.chrome.devtools.json HTTP/1.1" 404 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/metadata HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/video_feed?ts=1768995531118 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/env HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/camera/aux_top/video_feed?ts=1768995531128 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/camera/aux_side/video_feed?ts=1768995531128 HTTP/1.1" 200 - 127.0.0.1 - - [21/Jan/2026 12:38:51] "GET /nova-sim/api/v1/camera/aux_flange/video_feed?ts=1768995531128 HTTP/1.1" 200 - WebSocket client disconnected WebSocket client connected [WS] Received message type: camera [WS] Received message type: action [Nova Jogger] Cartesian X translation at 50.0 mm/s (dir: 1) [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vx': 0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vx': 0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [WS] Received message type: action [Nova Jogger] Cartesian Y translation at 50.0 mm/s (dir: -1) [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [Broadcast] Non-zero teleop values: {'vy': -0.05} [Broadcast] Sending to 2 clients, teleop non-zero values: {'vy': -0.05} [Broadcast] Actual JSON teleop_action j3 = 0.0 [WS] Received message type: action [Nova Jogger] Stopped (zero velocities sent) [Nova] State stream update (seq=20418064, 6 joints) payload={"seq": 20418064, "joint_position": [-3.7563540935516357, -1.2321059703826904, 1.4462759494781494, -1.3451716899871826, -1.7096422910690308, -0.5478959083557129], "timestamp": "2026-01-21T11:38:55.967287738Z"} [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 1... [Nova Jogger] Stopped (zero velocities sent) [Nova Jogger] Receive error: sent 1000 (OK); then received 1000 (OK) [Nova Jogger] Connecting to joint endpoint: wss://vaxtlucd.instance.wandelbots.io/api/v1/cells/cell/motion-groups/move-joint [Nova Jogger] Connected to joint endpoint [Nova Jogger] Joint 0 jogging at 0.15 rad/s J1: err=2.1856, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: stop_home [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 1... [Nova Jogger] Joint 0 jogging at 0.15 rad/s J1: err=2.0384, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: stop_home [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 1... [Nova Jogger] Joint 0 jogging at 0.15 rad/s J1: err=1.9932, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova] State stream update (seq=20419432, 6 joints) payload={"seq": 20419432, "joint_position": [-3.212111473083496, -1.2321059703826904, 1.4462759494781494, -1.3451716899871826, -1.7096422910690308, -0.5478959083557129], "timestamp": "2026-01-21T11:39:05.973094016Z"} [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 1... [Nova Jogger] Joint 0 jogging at 0.15 rad/s J1: err=0.8212, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: stop_home [WS] Received message type: control_mode [WS] Received message type: control_mode [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 1... [Nova Jogger] Joint 0 jogging at 0.15 rad/s J1: err=0.7257, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova] State stream update (seq=20420800, 6 joints) payload={"seq": 20420800, "joint_position": [-2.1125688552856445, -1.2321059703826904, 1.4462759494781494, -1.3451716899871826, -1.7096422910690308, -0.5478959083557129], "timestamp": "2026-01-21T11:39:16.006326479Z"} [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 6... [Nova Jogger] Joint 5 jogging at 0.15 rad/s J6: err=0.5479, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 1... [Nova Jogger] Joint 0 jogging at 0.15 rad/s J1: err=0.4753, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 1 reached target (error: 0.0002 rad) → Homing joint 6... [WS] Received message type: home [Nova Jogger] Joint 5 jogging at 0.15 rad/s J6: err=0.4283, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: stop_home [Nova Jogger] Stopped (zero velocities sent) ⏸ Homing stopped by user [WS] Received message type: home 🏠 Starting homing sequence for 6 joints → Homing joint 2... [Nova Jogger] Joint 1 jogging at -0.15 rad/s J2: err=-0.3388, dir=-, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 2 reached target (error: 0.0022 rad) → Homing joint 4... [WS] Received message type: home [Nova Jogger] Joint 3 jogging at -0.15 rad/s J4: err=-0.2256, dir=-, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova] State stream update (seq=20422168, 6 joints) payload={"seq": 20422168, "joint_position": [-1.5449260473251343, -1.5976773500442505, 1.4462759494781494, -1.4450716972351074, -1.7096422910690308, -0.1647532433271408], "timestamp": "2026-01-21T11:39:26.010412039Z"} [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 4 reached target (error: 0.0039 rad) → Homing joint 6... [WS] Received message type: home [Nova Jogger] Joint 5 jogging at 0.15 rad/s J6: err=0.1648, dir=+, vel=0.150 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 6 reached target (error: 0.0051 rad) → Homing joint 5... [WS] Received message type: home [Nova Jogger] Joint 4 jogging at 0.14 rad/s J5: err=0.1388, dir=+, vel=0.139 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 5 reached target (error: 0.0022 rad) → Homing joint 3... [WS] Received message type: home [Nova Jogger] Joint 2 jogging at 0.12 rad/s J3: err=0.1245, dir=+, vel=0.125 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 3 reached target (error: 0.0040 rad) → Homing joint 1... [WS] Received message type: home [Nova Jogger] Joint 0 jogging at -0.03 rad/s J1: err=-0.0259, dir=-, vel=0.026 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 1 reached target (error: 0.0088 rad) ✓ Homing sequence complete! [WS] Received message type: home 🏠 Starting homing sequence for 5 joints → Homing joint 2... [Nova Jogger] Joint 1 jogging at 0.03 rad/s J2: err=0.0269, dir=+, vel=0.027 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 2 reached target (error: 0.0093 rad) → Homing joint 4... [WS] Received message type: home [Nova Jogger] Joint 3 jogging at 0.02 rad/s J4: err=0.0247, dir=+, vel=0.025 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 4 reached target (error: 0.0089 rad) → Homing joint 5... [WS] Received message type: home [Nova Jogger] Joint 4 jogging at -0.02 rad/s J5: err=-0.0196, dir=-, vel=0.020 [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [WS] Received message type: home [Nova Jogger] Stopped (zero velocities sent) ✓ Joint 5 reached target (error: 0.0091 rad)