-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RSDK-8460 - Modularize the xarm driver and remove it from RDK #4578
base: main
Are you sure you want to change the base?
Conversation
components/arm/register/register.go
Outdated
@@ -3,9 +3,9 @@ package register | |||
|
|||
import ( | |||
// register arms. | |||
_ "github.com/viam-modules/viam-ufactory-xarm/arm" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This rather defeats the purpose of putting this in a module, no?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- arm registration should not attempt to register the module; the module itself should take care of that.
- I believe the order of operations described is incorrect. Presumably we will want to migrate all user configs to the module, then merge this, rather than the other way around, no?
- please detail testing done on this module
My fault, will remove.
If I run the migration and also remove the xArm RDK object today, then users can still continue to choose the xArm RDK object when setting up an arm up until Tuesday since the version of RDK that app.viam uses is not aware that the xArm RDK object no longer exists.
Will update the PR's readme. |
components/arm/fake/fake.go
Outdated
@@ -8,11 +8,11 @@ import ( | |||
"sync" | |||
|
|||
"github.com/pkg/errors" | |||
xarm "github.com/viam-modules/viam-ufactory-xarm/arm" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should not be importing modules into RDK. This makes our import graph extremely messy.
We can replicate the imported function locally and use the test files you added.
I think we should wait before merging this. Here's why:
That has the lowest chance of breaking anything. Broadly this PR looks good code-wise modulo the one comment I had about not importing the module back into RDK. |
…e can embed them to replicate module functionality
This PR removes the xArm driver within the RDK.
Once this is merged 1/2 of the work needed for this ticket will be done.
The other half is the migration script which will convert relevant configs to use the module.
Timing is an important consideration here. If this PR is merged before this upcoming Tuesday 11.26.24 then when the new RDK is cut on Tuesday, app.viam will no longer give the user the option of choosing between the module and RDK object.
The migration will be run on Tuesday, shortly after we have a new release.
Testing that has been done on the xArm module:
CurrentInputs
and theDoCommand
to open/close the gripper as well as set the speed and acceleration. The script also uses the motion service'sDoCommand
to execute a plan soMoveThroughJointPositions
is tested. I also have used the control tab on app.viam to move the robot and have confirmed that functionality remains forJointPositions
andMoveToJointPositions
.EndPosition
andMoveToPosition
and confirmed that functionality remains.Testing I have not done: