Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Install global env tools
uses: jdx/mise-action@v2
uses: jdx/mise-action@v3
with:
log_level: debug
mise_toml: |
[tools]
node = "20"
node = "24"
go = "latest"

- name: Install claat
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@ jobs:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Install global env tools
uses: jdx/mise-action@v2
uses: jdx/mise-action@v3
with:
log_level: debug
mise_toml: |
[tools]
node = "20"
node = "24"
go = "latest"

- name: Install claat
Expand Down
2 changes: 1 addition & 1 deletion site/.nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
20
24
2 changes: 1 addition & 1 deletion site/.tool-versions
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
nodejs 22
nodejs 24
golang latest
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified site/viamguides/src/so101/assets/setup_app_configure_sensor.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
48 changes: 36 additions & 12 deletions site/viamguides/src/so101/so101.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,17 +74,39 @@ The SO-ARM101 communicates with your computer via USB connection. This section w
- Use the provided USB cable to connect the SO-ARM101 control board to your computer
- You should see indicator LEDs on the control board
![arm control board connected](./assets/arm_control_connected.jpeg)
1. **Verify USB detection**:
- Check that the USB device is detected:
```bash
ls /dev/tty*
```
- Look for a device that appears when you connect the arm
![list of serial device paths](./assets/list_serial_devices.png)
1. **Check USB serial device**:
- You should see a device like `/dev/ttyUSB0` or `/dev/ttyACM0` on Linux, or `/dev/tty.usbmodem58CD1767051` (the part after "usbmodem" is a unique ID for that control board) on MacOS

Note the path to that device on your computer, a.k.a "port". It will be used to configure your machine in the following steps.

In the next step, you'll use a [Discovery service](https://docs.viam.com/operate/reference/services/discovery/) to automatically configure your components.

<!-- ------------------------ -->

## Automatically configure arm & gripper components
Duration: 5

Now you'll configure the discovery service that the SO-101 module provides.
This searches your machine running viam-server for the serial port path used to communicate with the arm's control board you connected to in the previous step.

### Add the discovery service

1. Click the **+** icon in the left-hand menu and select **Component or service**.
![add component or service](./assets/add_component_service.png)
1. Select `discovery`, and find the `so101:discovery` model. This adds the `so101-arm` module for working with the SO-ARM101. Rename the default name to `discover-so101`.
![add service](./assets/add_discovery.png)
![name service](./assets/name_discovery.png)
1. Notice adding this module adds the discovery service called `discover-so101`.
1. Click **Save** in the top right to save and apply your configuration changes.
1. Open the TEST panel at the bottom of the `discovery-so101` card to view the discovered components.
![view components](./assets/view_discovery.png)
1. Click "+ Add component" for the relevant resources you want to add to your machine:
- If you're building the arm from a kit, add the calibration sensor
- If you have a pre-assembled arm or calibrated before, add the arm and gripper components.
1. Click **Save** in the top right to save and apply your configuration changes.
1. You can now delete the discovery service.
![remove discovery service](./assets/remove_calibration.png)


If you have a pre-assembled arm or calibrated before, you can skip to the **Test your arm** step.

Otherwise, continue to the next step to calibrate the motors on the arm.

<!-- ------------------------ -->
## Configure calibration sensor
Expand All @@ -95,12 +117,14 @@ This is used in tandem with a [Viam App](https://docs.viam.com/operate/control/v

### Add the calibration sensor

**These instructions are only necessary if you didn't use the discovery service in the previous step.**

1. Click the **+** icon in the left-hand menu and select **Component or service**.
![add component or service](./assets/add_component_service.png)
1. Select `sensor`, and find the `so101:calibration` model. This adds the `so101-arm` module for working with the SO-ARM101. Rename the default name to `calibration`.
![add sensor](./assets/add_calibration.png)
![name sensor](./assets/name_calibration.png)
1. Notice adding this module adds the sensor hardware component called `calibration`. Add the following JSON object under the **CONFIGURE** section of the new corresponding panel.
1. Notice adding this module adds the sensor component called `calibration`. Add the following JSON object under the **CONFIGURE** section of the new corresponding panel.
Set the `calibration_file` to something descriptive for your arm, then set the `port` to the USB path connecting your arm to your computer.
```json
{
Expand Down
Loading