nova-sim / server.log
Georg
Update mujoco_server.py to replace jogging commands with homing commands and enhance action handling
51b2fc6
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)