Skip to content

Conversation

@wandeljan
Copy link
Contributor

@wandeljan wandeljan commented Nov 5, 2025

Update the jogging functionality to use API version 2. The JoggerConnection that powers the jogging panel is moved from the nova.js library to the react components.

Updates nova.js to version 3.3

BREAKING CHANGE: Updated to use API v2 under the hood; selecting a different controller coordinate system for jogging is currently not possible. You can still use the tool's coordinate system by choosing the Tool option in "Orientation" dropdown.

Storybook Link

@wandeljan wandeljan self-assigned this Nov 5, 2025
- Import and extend JoggingConnection from nova.js v1
@wandeljan wandeljan force-pushed the feat/upgrade-jogging-to-v2 branch from f3e9415 to 37f9671 Compare November 5, 2025 10:56
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR migrates the codebase from nova-js v1 API to v2 API. The migration involves updating API imports, refactoring data structures, and introducing new connection classes for motion stream and jogging functionality.

  • Updated @wandelbots/nova-js dependency to v2 pre-release version
  • Replaced v1 API types and imports with v2 equivalents across components
  • Introduced new MotionStreamConnection and JoggerConnection classes to replace v1's ConnectedMotionGroup and jogging functionality
  • Migrated data structures from nested objects to array-based representations (e.g., Pose now uses arrays instead of {x, y, z} objects)

Reviewed Changes

Copilot reviewed 38 out of 39 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
package.json Updates nova-js dependency to v2 pre-release version
src/lib/MotionStreamConnection.ts New class for managing motion group state streaming
src/lib/JoggerConnection.ts New class for robot jogging control via websockets
src/lib/motionStateUpdate.ts New utilities for comparing motion states with array-based poses
src/components/jogging/*.tsx Updated to use new JoggerConnection and v2 API types
src/components/robots/*.tsx Changed imports from @wandelbots/nova-api/v1 to @wandelbots/nova-js/v1
stories/*.tsx Updated imports and type definitions for v2 compatibility
docs/*.md Added documentation for new connection classes
Comments suppressed due to low confidence (1)

src/components/jogging/JoggingStore.ts:143

  • This expression has no effect.
    jogger.motionStream.controllerId

Copy link
Member

@stefanwagnerdev stefanwagnerdev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would appreciate some added Unit Tests against mocks for the jogger implementation if possible.

@stefanwagnerdev
Copy link
Member

Please do a design pass with the design team about the removal of the coordinate system. I think the selector could now be removed and instead a simple toggle for switching beteen tool and world introduced.

@wandeljan wandeljan changed the title Update jogging panel to API v2 … feat: Update jogging panel to API v2 … Nov 6, 2025
@wandeljan wandeljan changed the title feat: Update jogging panel to API v2 … feat: Update jogging panel to API v2 Nov 6, 2025
@wandeljan
Copy link
Contributor Author

Please do a design pass with the design team about the removal of the coordinate system. I think the selector could now be removed and instead a simple toggle for switching beteen tool and world introduced.

After a brief discussion we are going for hiding the select field, but keeping the three other selects (with the Increment option spanning both columns).

@wandeljan wandeljan force-pushed the feat/upgrade-jogging-to-v2 branch from 04cb938 to 33cdf67 Compare November 6, 2025 10:32
@wandeljan wandeljan force-pushed the feat/upgrade-jogging-to-v2 branch from 33cdf67 to 4b7ad67 Compare November 6, 2025 10:36
@wandeljan wandeljan force-pushed the feat/upgrade-jogging-to-v2 branch from 3ead760 to 798859b Compare November 7, 2025 10:07
Copy link
Collaborator

@evrys evrys left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Jogged a bit with a virtual fanuc, seems to work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants