diff --git a/.github/vale/styles/Viam/AvoidWithSubstitution.yml b/.github/vale/styles/Viam/AvoidWithSubstitution.yml index fb6e16515c..f79731f398 100644 --- a/.github/vale/styles/Viam/AvoidWithSubstitution.yml +++ b/.github/vale/styles/Viam/AvoidWithSubstitution.yml @@ -7,8 +7,8 @@ action: name: replace swap: in the website: on the website - web app: Viam app or Viam platform - cloud app: Viam app or Viam platform + web app: Viam or web UI or Viam platform + cloud app: Viam or web UI or Viam platform user of an org: member of an org compute parts: Computer microprocessor: Raspberry Pi or Jetson or another specific term diff --git a/.github/vale/styles/Viam/AvoidWithSubstitutionViamsuggestonly.yml b/.github/vale/styles/Viam/AvoidWithSubstitutionViamsuggestonly.yml index 3ac235b84c..052b3d93c5 100644 --- a/.github/vale/styles/Viam/AvoidWithSubstitutionViamsuggestonly.yml +++ b/.github/vale/styles/Viam/AvoidWithSubstitutionViamsuggestonly.yml @@ -6,6 +6,6 @@ ignorecase: true action: name: replace swap: - cloud app: Viam app or Viam platform + cloud app: Viam or web UI or Viam platform Scuttlebot: SCUTTLE robot on the app: in the app diff --git a/docs/data-ai/ai/act.md b/docs/data-ai/ai/act.md index 53dea9a2d4..8fbd1ca309 100644 --- a/docs/data-ai/ai/act.md +++ b/docs/data-ai/ai/act.md @@ -32,7 +32,7 @@ async def connect(): # API key ID api_key_id='' ) - return await RobotClient.at_address("ADDRESS FROM THE VIAM APP", opts) + return await RobotClient.at_address("MACHINE ADDRESS", opts) # Get largest detection box and see if it's center is in the left, center, or @@ -104,7 +104,7 @@ if __name__ == "__main__": {{% /expand%}} -If you configured the color detector to detect red in the Viam app, your rover should detect and navigate towards any red objects that come into view of its camera. +If you configured the color detector to detect red, your rover should detect and navigate towards any red objects that come into view of its camera. Use something like a red sports ball or book cover as a target to follow to test your rover:
diff --git a/docs/data-ai/ai/advanced/upload-external-data.md b/docs/data-ai/ai/advanced/upload-external-data.md index 5368ebd947..56ac6d7307 100644 --- a/docs/data-ai/ai/advanced/upload-external-data.md +++ b/docs/data-ai/ai/advanced/upload-external-data.md @@ -12,7 +12,7 @@ aliases: - /services/data/upload/ - /how-tos/upload-data/ date: "2024-12-04" -description: "Upload data to the Viam app from your local computer or mobile device using the data client API, Viam CLI, or Viam mobile app." +description: "Upload data to Viam from your local computer or mobile device using the data client API, Viam CLI, or Viam mobile app." prev: "/data-ai/ai/act/" --- @@ -30,7 +30,7 @@ However, if you already have a cache of data you'd like to use with Viam, you ca ### Prerequisites -{{% expand "A running machine connected to the Viam app. Click to see instructions." %}} +{{% expand "A running machine connected to Viam. Click to see instructions." %}} {{% snippet "setup-both.md" %}} @@ -72,7 +72,7 @@ In the **Additional paths**, enter the full path to the directory where the data Toggle **Syncing** to on (green) if it isn't already on. -{{}} +{{}} Click **Save** in the top right corner of the page. @@ -80,7 +80,7 @@ Click **Save** in the top right corner of the page. {{% tablestep number=3 %}} **Confirm that your data uploaded** -Navigate to your [**DATA** page in the Viam app](https://app.viam.com/data/view) and confirm that your data appears there. +Navigate to your [**DATA** page](https://app.viam.com/data/view) and confirm that your data appears there. If you don't see your files yet, wait a few moments and refresh the page. {{% /tablestep %}} @@ -243,7 +243,7 @@ if __name__ == "__main__": Save and run your code once. Running your code more than once will duplicate the data. -View your uploaded data in your [**DATA** page in the Viam app](https://app.viam.com/data/view). +View your uploaded data in your [**DATA** page](https://app.viam.com/data/view). {{% /tablestep %}} {{< /table >}} diff --git a/docs/data-ai/ai/alert.md b/docs/data-ai/ai/alert.md index 9f9cf64688..9ad00910a5 100644 --- a/docs/data-ai/ai/alert.md +++ b/docs/data-ai/ai/alert.md @@ -13,7 +13,7 @@ For example, a trigger could alert you when a camera feed detects an anomaly. ### Prerequisites -{{% expand "A running machine connected to the Viam app." %}} +{{% expand "A running machine connected to Viam." %}} {{% snippet "setup-both.md" %}} @@ -128,7 +128,7 @@ Because the filter only syncs images that contain an anomaly, this trigger sends Follow these steps to configure a trigger to alert when `filtered-camera` syncs an image: -1. Go to the **CONFIGURE** tab of your machine on the [Viam app](https://app.viam.com). +1. Go to the **CONFIGURE** tab of your machine. Click the **+** (Create) button in the left side menu and select **Trigger**. 1. Enter a name and click **Create**. @@ -144,14 +144,14 @@ Follow these steps to configure a trigger to alert when `filtered-camera` syncs To add an email notification: 1. Click **Add Email**. - {{}} + {{}} 1. Add the email you wish to be notified whenever this trigger is triggered. 1. Configure the time between notifications. To add a webhook notification: 1. Click **Add Webhook**. - {{}} + {{}} 1. Add the URL of your cloud function. 1. Configure the time between notifications. 1. Write your cloud function to process the [webhook](/data-ai/reference/triggers-configuration/#webhook-attributes). diff --git a/docs/data-ai/ai/create-dataset.md b/docs/data-ai/ai/create-dataset.md index cdac56ad88..b08766a59f 100644 --- a/docs/data-ai/ai/create-dataset.md +++ b/docs/data-ai/ai/create-dataset.md @@ -24,7 +24,7 @@ This page explains how to create a dataset that meets these criteria for your tr ## Prerequisites -{{% expand "a machine connected to the Viam app" %}} +{{% expand "a machine connected to Viam" %}} {{% snippet "setup.md" %}} @@ -38,12 +38,12 @@ Follow the guide to configure a [webcam](/operate/reference/components/camera/we ## Create a dataset -To create a dataset, use the Viam CLI or the Viam app: +To create a dataset, use the CLI or the web UI: {{< tabs >}} -{{% tab name="Viam app" %}} +{{% tab name="Web UI" %}} -1. Open the [**DATASETS** tab on the **DATA** page](https://app.viam.com/data/datasets) of the Viam app. +1. Open the [**DATASETS** tab on the **DATA** page](https://app.viam.com/data/datasets). 1. Click the **+ Create dataset** button. @@ -76,7 +76,7 @@ To create a dataset, use the Viam CLI or the Viam app: {{< tabs >}} {{% tab name="One image" %}} -You can add images to a dataset directly from a camera or vision component feed in the **CONTROL** or **CONFIGURATION** tabs of the Viam app. +You can add images to a dataset directly from a camera or vision component feed in the machine's **CONTROL** or **CONFIGURATION** tabs. To add an image directly to a dataset from a visual feed, complete the following steps: @@ -87,7 +87,7 @@ To add an image directly to a dataset from a visual feed, complete the following 1. Click **Add** to add the image to the selected dataset. 1. When you see a success notification that reads "Saved image to dataset", you have successfully added the image to the dataset. -To view images added to your dataset, go to the **DATA** page's [**DATASETS** tab](https://app.viam.com/data/datasets) in the Viam app and select your dataset. +To view images added to your dataset, go to the **DATA** page's [**DATASETS** tab](https://app.viam.com/data/datasets) and select your dataset. {{% /tab %}} {{% tab name="Many images" %}} @@ -194,9 +194,9 @@ Repeat these steps for all images in the dataset. ## Add tagged images to a dataset {{< tabs >}} -{{% tab name="Viam app" %}} +{{% tab name="Web UI" %}} -1. Open the [**DATA** page](https://app.viam.com/data/view) of the Viam app. +1. Open the [**DATA** page](https://app.viam.com/data/view). 1. Navigate to the **ALL DATA** tab. diff --git a/docs/data-ai/ai/deploy.md b/docs/data-ai/ai/deploy.md index a8f425a22a..5a7dc28b0f 100644 --- a/docs/data-ai/ai/deploy.md +++ b/docs/data-ai/ai/deploy.md @@ -32,7 +32,7 @@ After training or uploading a machine learning model, use a machine learning (ML ## Deploy your ML model on an ML model service -1. Navigate to the **CONFIGURE** tab of one of your machine in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of one of your machines. 2. Add an ML model service that supports the ML model you want to use. - For example, use the `ML model / TFLite CPU` service for TFlite ML models that you trained with Viam's built-in training. @@ -73,11 +73,11 @@ Save your config to use your specified version of the ML model. ## How the ML model service works -The service works with models trained inside and outside the Viam app: +The service works with models trained on Viam or elsewhere: - You can [train TFlite](/data-ai/ai/train-tflite/) or [other model frameworks](/data-ai/ai/train/) on data from your machines. -- You can use [ML models](https://app.viam.com/registry?type=ML+Model) from the [Viam Registry](https://app.viam.com/registry). -- You can upload externally trained models from a model file on the [**MODELS** tab](https://app.viam.com/models) in the **DATA** section of the Viam app. +- You can use [ML models](https://app.viam.com/registry?type=ML+Model) from the [registry](https://app.viam.com/registry). +- You can upload externally trained models from a model file on the [**MODELS** tab](https://app.viam.com/models). - You can use a [model](/data-ai/ai/deploy/#deploy-your-ml-model-on-an-ml-model-service) trained outside the Viam platform whose files are on your machine. See the documentation of the model of ML model service you're using (pick one that supports your model framework) for instructions on this. On its own the ML model service only runs the model. diff --git a/docs/data-ai/ai/run-inference.md b/docs/data-ai/ai/run-inference.md index 7466107b97..2a378373df 100644 --- a/docs/data-ai/ai/run-inference.md +++ b/docs/data-ai/ai/run-inference.md @@ -52,12 +52,12 @@ If your vision service does not include an ML model, you must [deploy an ML mode To use a vision service: -1. Visit the **CONFIGURE** page of the Viam app. +1. Visit your machine's **CONFIGURE** page. 1. Click the **+** icon next to your main machine part and select **Component or service**. 1. Type in the name of the service and select a vision service. 1. If your vision service does not include an ML model, [deploy an ML model to your machine](/data-ai/ai/deploy/) to use that service. 1. Configure the service based on your use case. -1. To view the deployed vision service, use the live detection feed in the Viam app. +1. To view the deployed vision service, use the live detection feed. The feed shows an overlay of detected objects or classifications on top of a live camera feed. On the **CONFIGURE** or **CONTROL** pages for your machine, expand the **Test** area of the service panel to view the feed. diff --git a/docs/data-ai/ai/train-tflite.md b/docs/data-ai/ai/train-tflite.md index 2bc624e051..e51f87652b 100644 --- a/docs/data-ai/ai/train-tflite.md +++ b/docs/data-ai/ai/train-tflite.md @@ -31,7 +31,7 @@ Follow this guide to use your image data to train an ML model, so that your mach ## Prerequisites -{{% expand "a machine connected to the Viam app" %}} +{{% expand "a machine connected to Viam" %}} {{% snippet "setup.md" %}} @@ -51,7 +51,7 @@ Now that you have a dataset that contains your labeled images, you are ready to {{% tablestep number=1 %}} **Find your training dataset** -In the Viam app, navigate to your list of [**DATASETS**](https://app.viam.com/data/datasets) and select the one you want to train on. +Navigate to your list of [**DATASETS**](https://app.viam.com/data/datasets) and select the one you want to train on. {{% /tablestep %}} {{% tablestep number=2 %}} diff --git a/docs/data-ai/ai/train.md b/docs/data-ai/ai/train.md index 9d7bddf16e..71caae8cda 100644 --- a/docs/data-ai/ai/train.md +++ b/docs/data-ai/ai/train.md @@ -18,7 +18,7 @@ date: "2024-12-04" --- You can create custom Python training scripts that train machine learning models to your specifications using PyTorch, TensorFlow, TFLite, ONNX, or any other ML framework. -Once you upload a training script to the [Viam Registry](https://app.viam.com/registry?type=Training+Script), you can use it to build ML models in the Viam Cloud based on your datasets. +Once you upload a training script to the [registry](https://app.viam.com/registry?type=Training+Script), you can use it to build ML models in the Viam Cloud based on your datasets. You can also use training scripts that are in the registry already. If you wish to do this, skip to [Submit a training job](#submit-a-training-job). @@ -772,16 +772,15 @@ You can view uploaded training scripts by navigating to the [registry's **Traini ## Submit a training job -After uploading the training script, you can run it by submitting a training job through the Viam app or using the Viam CLI or [ML Training client API](/dev/reference/apis/ml-training-client/#submittrainingjob). +After uploading the training script, you can run it by submitting a training job using the web UI, the CLI or the [ML training client API](/dev/reference/apis/ml-training-client/#submittrainingjob). {{< table >}} {{% tablestep number=1 %}} **Create the training job** {{< tabs >}} -{{% tab name="Viam app" min-height="150px" %}} - -In the Viam app, navigate to your list of [**DATASETS**](https://app.viam.com/data/datasets) and select the one you want to train a model on. +{{% tab name="Web UI" min-height="150px" %}} +Navigate to your list of [**DATASETS**](https://app.viam.com/data/datasets) and select the one you want to train a model on. Click **Train model** and select **Train on a custom training script**, then follow the prompts. diff --git a/docs/data-ai/capture-data/capture-sync.md b/docs/data-ai/capture-data/capture-sync.md index bcbe5dc64f..e49114f86b 100644 --- a/docs/data-ai/capture-data/capture-sync.md +++ b/docs/data-ai/capture-data/capture-sync.md @@ -55,7 +55,7 @@ For more information, see [How sync works](/data-ai/capture-data/advanced/how-sy ## Configure data capture and sync for individual resources -1. Navigate to a configured {{< glossary_tooltip term_id="resource" text="resource" >}} in **Builder** mode in the [Viam app](https://app.viam.com). +1. Navigate to a configured {{< glossary_tooltip term_id="resource" text="resource" >}} in **Builder** mode. 1. Find the **Data capture** section in the resource panel. 1. Click **+ Add method**. diff --git a/docs/data-ai/capture-data/conditional-sync.md b/docs/data-ai/capture-data/conditional-sync.md index 43a8d9ffa9..dd45a87fb7 100644 --- a/docs/data-ai/capture-data/conditional-sync.md +++ b/docs/data-ai/capture-data/conditional-sync.md @@ -36,7 +36,7 @@ You can also view [trigger-sync-examples module](https://github.com/viam-labs/tr ## Prerequisites -{{% expand "A running machine connected to the Viam app. Click to see instructions." %}} +{{% expand "A running machine connected to Viam. Click to see instructions." %}} {{% snippet "setup-both.md" %}} @@ -294,7 +294,7 @@ To test your setup, [configure a webcam](/operate/reference/components/camera/we Make sure to physically connect any hardware parts to the computer controlling your machine. For a camera component, use the `ReadImage` method. The data manager will now capture data. -Go to the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app). +Go to the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui). You should see the sensor. Click on `GetReadings`. diff --git a/docs/data-ai/capture-data/filter-before-sync.md b/docs/data-ai/capture-data/filter-before-sync.md index 0f44042e47..23f98a28ba 100644 --- a/docs/data-ai/capture-data/filter-before-sync.md +++ b/docs/data-ai/capture-data/filter-before-sync.md @@ -77,11 +77,11 @@ Turn off data capture on your original camera if you haven't already, so that yo **Save to start capturing** Save the config. -With cloud sync enabled, captured data is automatically uploaded to the Viam app after a short delay. +With cloud sync enabled, captured data is automatically uploaded to Viam after a short delay. {{% /tablestep %}} {{% tablestep number=7 %}} -**View filtered data in the Viam app** +**View filtered data on Viam** Once you save your configuration, place something that is part of your trained ML model within view of your camera. diff --git a/docs/data-ai/data/advanced/alert-data.md b/docs/data-ai/data/advanced/alert-data.md index e3ff237bbe..e4a707aaa0 100644 --- a/docs/data-ai/data/advanced/alert-data.md +++ b/docs/data-ai/data/advanced/alert-data.md @@ -21,7 +21,7 @@ You can configure triggers to alert in the following scenarios: {{< tabs >}} {{% tab name="Builder mode" %}} -1. Go to the **CONFIGURE** tab of your machine on the [Viam app](https://app.viam.com). +1. Go to the **CONFIGURE** tab of your machine. Click the **+** (Create) button in the left side menu and select **Trigger**. {{}} @@ -52,14 +52,14 @@ You can configure triggers to alert in the following scenarios: To add an email notification: 1. Click **Add Email**. - {{}} + {{}} 1. Add the email you wish to be notified whenever this trigger is triggered. 1. Configure the time between notifications. To add a webhook notification: 1. Click **Add Webhook**. - {{}} + {{}} 1. Add the URL of your cloud function. 1. Configure the time between notifications. 1. Write your cloud function to process the [webhook](/data-ai/reference/triggers-configuration/#webhook-attributes). diff --git a/docs/data-ai/data/export.md b/docs/data-ai/data/export.md index 4d53b0be07..c9e19142a7 100644 --- a/docs/data-ai/data/export.md +++ b/docs/data-ai/data/export.md @@ -2,7 +2,7 @@ linkTitle: "Export data" title: "Export data" weight: 40 -description: "Download data from the Viam app using the data client API or the Viam CLI." +description: "Download data from Viam using the data client API or the CLI." type: "docs" tags: ["data management", "cloud", "sync"] icon: true @@ -43,7 +43,7 @@ To export your data from the cloud using the Viam CLI: {{% tablestep number=1 %}} **Filter the data you want to download** -Navigate to the [**DATA** page in the Viam app](https://app.viam.com/data/view). +Navigate to the [**DATA**](https://app.viam.com/data/view) page. Use the filters on the left side of the page to filter only the data you wish to export. @@ -66,7 +66,7 @@ Run the copied command in a terminal: viam data export --org-ids= --data-type= --mime-types= --destination=. ``` -This command uses the Viam CLI to download the data onto your computer based on the search criteria you select in the Viam app. +This command uses the Viam CLI to download the data onto your computer based on the search criteria you select in the web UI. By default, the command creates two new directories named `data` and `metadata` in the current directory and downloads the specified data into the `data` folder and metadata, like bounding box information and labels, in JSON format into the `metadata` folder. If you want to store the data in a different location, change the specified folder with the [`--destination` flag](/dev/tools/cli/#named-arguments). diff --git a/docs/data-ai/data/query.md b/docs/data-ai/data/query.md index e8ca14cb39..a25d9b0f55 100644 --- a/docs/data-ai/data/query.md +++ b/docs/data-ai/data/query.md @@ -14,7 +14,7 @@ languages: [] viamresources: ["sensor", "data_manager"] platformarea: ["data", "core"] date: "2024-12-03" -description: "Query sensor data that you have synced to the Viam app using the Viam app with SQL or MQL." +description: "Query sensor data that you have synced to Viam with SQL or MQL." --- You can use the data management service to [capture sensor data](/data-ai/capture-data/capture-sync/) from any machine and sync that data to the cloud. @@ -27,7 +27,7 @@ You can then run queries against that data to search for outliers or edge cases, - **MQL**: Viam also supports the [MongoDB Query language](https://www.mongodb.com/docs/manual/tutorial/query-documents/) for querying captured data from MQL-compatible clients such as `mongosh` or MongoDB Compass. -## Query data in the Viam app +## Query data in the web UI ### Prerequisites @@ -36,9 +36,9 @@ See [capture sensor data](/data-ai/capture-data/capture-sync/) for more informat ### Query from the app -Once your data has synced, you can query your data from within the Viam app using {{< glossary_tooltip term_id="sql" text="SQL" >}} or {{< glossary_tooltip term_id="mql" text="MQL" >}}. +Once your data has synced, you can query your data from within web UI using {{< glossary_tooltip term_id="sql" text="SQL" >}} or {{< glossary_tooltip term_id="mql" text="MQL" >}}. -You must have the [owner role](/manage/manage/rbac/) in order to query data in the Viam app. +You must have the [owner role](/manage/manage/rbac/) in order to query data on Viam. {{< table >}} {{% tablestep number=1 %}} diff --git a/docs/data-ai/data/visualize.md b/docs/data-ai/data/visualize.md index d8e41de4d7..843e8d4a8f 100644 --- a/docs/data-ai/data/visualize.md +++ b/docs/data-ai/data/visualize.md @@ -14,14 +14,14 @@ aliases: viamresources: ["sensor", "data_manager"] platformarea: ["data", "fleet"] date: "2024-12-04" -description: "Use teleop or grafana to visualize sensor data from the Viam app." +description: "Use teleop or Grafana to visualize sensor data." --- -Once you have used the data management service to [capture data](/data-ai/capture-data/capture-sync/), you can visualize your data on a dashboard with the Viam app's **TELEOP** page or a variety of third-party tools, including Grafana, Tableau, Google's Looker Studio, and more. +Once you have used the data management service to [capture data](/data-ai/capture-data/capture-sync/), you can visualize your data on a dashboard on the [TELEOP](https://app.viam.com/teleop) page or a variety of third-party tools, including Grafana, Tableau, Google's Looker Studio, and more. ## Teleop -Create a dashboard visualizing numeric data from components with the Viam app's **TELEOP** page. +Create a dashboard visualizing numeric data from components with the **TELEOP** page. ### Prerequisites @@ -39,9 +39,9 @@ See [configure a machine](/operate/get-started/supported-hardware/) for more inf {{< table >}} {{% tablestep number=1 %}} -**Create a workspace in the Viam app** +**Create a workspace on Viam** -Log in to the [Viam app](https://app.viam.com/). +Log in to [Viam](https://app.viam.com/). Navigate to the **FLEET** page's **TELEOP** tab. Create a workspace by clicking **+ Create workspace**. @@ -266,7 +266,7 @@ See the [guide on querying data](/data-ai/data/query/) for more information. For more detailed instructions on using Grafana, including a full step-by-step configuration walkthrough, see [visualizing data with Grafana](/tutorials/services/visualize-data-grafana/). -On top of visualizing sensor data with third-party tools, you can also [query it with the Python SDK](/dev/reference/apis/data-client/) or [query it with the Viam app](/data-ai/data/query/). +On top of visualizing sensor data with third-party tools, you can also [query it with the Python SDK](/dev/reference/apis/data-client/) or [query it in the web UI](/data-ai/data/query/). To see full projects using visualization, check out these resources: diff --git a/docs/dev/reference/apis/_index.md b/docs/dev/reference/apis/_index.md index 87f81d3b2b..771b47c33c 100644 --- a/docs/dev/reference/apis/_index.md +++ b/docs/dev/reference/apis/_index.md @@ -40,12 +40,12 @@ Manage your machines: connect to your machine, retrieve status information, and {{% /manualcard %}} {{% manualcard link="/dev/reference/apis/ml-training-client/" title="ML Training Client API" %}} -Submit and manage ML training jobs running on the Viam app. +Submit and manage ML training jobs running on Viam. {{% /manualcard %}} {{% manualcard link="/dev/reference/apis/billing-client/" title="Billing Client API" %}} -Retrieve billing information from the Viam app. +Retrieve billing information from Viam. {{% /manualcard %}} diff --git a/docs/dev/reference/apis/billing-client.md b/docs/dev/reference/apis/billing-client.md index fbd3213c20..425b311dc4 100644 --- a/docs/dev/reference/apis/billing-client.md +++ b/docs/dev/reference/apis/billing-client.md @@ -3,7 +3,7 @@ title: "Retrieve billing information with Viam's billing client API" linkTitle: "Billing client" weight: 90 type: "docs" -description: "Use the billing client API to retrieve billing information from the Viam app." +description: "Use the billing client API to retrieve billing information from Viam." tags: ["cloud", "sdk", "viam-server", "networking", "apis", "robot api"] aliases: - /program/apis/billing-client/ @@ -13,7 +13,7 @@ date: "2024-09-14" # updated: "" # When the content was last entirely checked --- -The billing client API allows you to retrieve billing information from the [Viam app](https://app.viam.com). +The billing client API allows you to retrieve billing information from Viam. {{% alert title="Support Notice" color="note" %}} @@ -33,7 +33,7 @@ You will also need an API key and API key ID to authenticate your session. Your API key needs to have [Org owner permissions](/manage/manage/rbac/#organization-settings-and-roles) to use the billing client API. To get an API key (and corresponding ID), you have two options: -- [Create an API key using the Viam app](/operate/control/api-keys/#add-an-api-key) +- [Create an API key in the web UI](/operate/control/api-keys/#add-an-api-key) - [Create an API key using the Viam CLI](/dev/tools/cli/#create-an-organization-api-key) The following example instantiates a `ViamClient`, authenticating with an API key, and then instantiates a `BillingClient`: diff --git a/docs/dev/reference/apis/components/arm.md b/docs/dev/reference/apis/components/arm.md index 460bc8f62f..e6bdc0ae18 100644 --- a/docs/dev/reference/apis/components/arm.md +++ b/docs/dev/reference/apis/components/arm.md @@ -21,7 +21,7 @@ The arm component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your arm and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), +To get started using Viam's SDKs to connect to and control your arm and the rest of your machine, go to your machine's page. Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/base.md b/docs/dev/reference/apis/components/base.md index a1de692338..0541287807 100644 --- a/docs/dev/reference/apis/components/base.md +++ b/docs/dev/reference/apis/components/base.md @@ -20,8 +20,7 @@ The base component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your base and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your base and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/board.md b/docs/dev/reference/apis/components/board.md index 12b2f9d881..9d54a69eb4 100644 --- a/docs/dev/reference/apis/components/board.md +++ b/docs/dev/reference/apis/components/board.md @@ -20,7 +20,7 @@ The board component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your board and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), +To get started using Viam's SDKs to connect to and control your board and the rest of your machine, go to your machine's page. Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/button.md b/docs/dev/reference/apis/components/button.md index 93a3b0f802..3f3e42931f 100644 --- a/docs/dev/reference/apis/components/button.md +++ b/docs/dev/reference/apis/components/button.md @@ -18,8 +18,7 @@ The button component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your button and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your button and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/camera.md b/docs/dev/reference/apis/components/camera.md index 129c3dd27b..1d0522fb07 100644 --- a/docs/dev/reference/apis/components/camera.md +++ b/docs/dev/reference/apis/components/camera.md @@ -26,8 +26,7 @@ The camera component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your camera and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your camera and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/encoder.md b/docs/dev/reference/apis/components/encoder.md index ff1d886b67..3a26e2253c 100644 --- a/docs/dev/reference/apis/components/encoder.md +++ b/docs/dev/reference/apis/components/encoder.md @@ -20,8 +20,7 @@ The encoder component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your encoder and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your encoder and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/gantry.md b/docs/dev/reference/apis/components/gantry.md index fa98c30eb7..44203a6422 100644 --- a/docs/dev/reference/apis/components/gantry.md +++ b/docs/dev/reference/apis/components/gantry.md @@ -20,8 +20,7 @@ The gantry component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your gantry and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your gantry and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/generic.md b/docs/dev/reference/apis/components/generic.md index 2fc4fc9d3e..c91eb78eeb 100644 --- a/docs/dev/reference/apis/components/generic.md +++ b/docs/dev/reference/apis/components/generic.md @@ -16,7 +16,7 @@ The generic API allows you to give commands to your [generic components](/operat {{% alert title="Example usage" color="tip" %}} -See [Deploy control logic](/manage/software/control-logic/) for an example of how to use the generic component API, including how to call `DoCommand()` from the Viam SDKs or from the Viam app. +See [Deploy control logic](/manage/software/control-logic/) for an example of how to use the generic component API, including how to call `DoCommand()` from the SDKs or the web UI. {{% /alert %}} @@ -26,8 +26,7 @@ The generic component supports the following method: ## Establish a connection -To get started using Viam's SDKs to connect to and control your generic component and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your generic component and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/gripper.md b/docs/dev/reference/apis/components/gripper.md index 3251f9c967..d44a710497 100644 --- a/docs/dev/reference/apis/components/gripper.md +++ b/docs/dev/reference/apis/components/gripper.md @@ -20,8 +20,7 @@ The gripper component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your gripper and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your gripper and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/input-controller.md b/docs/dev/reference/apis/components/input-controller.md index 30917059d8..d2f212a88e 100644 --- a/docs/dev/reference/apis/components/input-controller.md +++ b/docs/dev/reference/apis/components/input-controller.md @@ -21,8 +21,7 @@ The input controller component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your controller and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your controller and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/motor.md b/docs/dev/reference/apis/components/motor.md index a5d6872812..2629e50a04 100644 --- a/docs/dev/reference/apis/components/motor.md +++ b/docs/dev/reference/apis/components/motor.md @@ -20,8 +20,7 @@ The motor component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your motor and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your motor and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/movement-sensor.md b/docs/dev/reference/apis/components/movement-sensor.md index 8a0fd9c79d..1b52c77563 100644 --- a/docs/dev/reference/apis/components/movement-sensor.md +++ b/docs/dev/reference/apis/components/movement-sensor.md @@ -27,8 +27,7 @@ You can run `GetProperties` on your sensor for a list of its supported methods. ## Establish a connection -To get started using Viam's SDKs to connect to and control your movement sensor and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your movement sensor and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/power-sensor.md b/docs/dev/reference/apis/components/power-sensor.md index 1f3fec1c91..ac5a48da15 100644 --- a/docs/dev/reference/apis/components/power-sensor.md +++ b/docs/dev/reference/apis/components/power-sensor.md @@ -20,8 +20,7 @@ The power sensor component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your power sensor and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your power sensor and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/sensor.md b/docs/dev/reference/apis/components/sensor.md index 918b20bde0..db62928a24 100644 --- a/docs/dev/reference/apis/components/sensor.md +++ b/docs/dev/reference/apis/components/sensor.md @@ -20,8 +20,7 @@ The sensor component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your sensor and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your sensor and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/servo.md b/docs/dev/reference/apis/components/servo.md index a4fd6fa394..c92287ec26 100644 --- a/docs/dev/reference/apis/components/servo.md +++ b/docs/dev/reference/apis/components/servo.md @@ -22,8 +22,7 @@ The servo component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your servo and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your servo and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/components/switch.md b/docs/dev/reference/apis/components/switch.md index 0fd119829e..f5409df825 100644 --- a/docs/dev/reference/apis/components/switch.md +++ b/docs/dev/reference/apis/components/switch.md @@ -19,8 +19,7 @@ The switch component supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your switch and the rest of your machine, go to your machine's page on the [Viam app](https://app.viam.com), -Navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your switch and the rest of your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/data-client.md b/docs/dev/reference/apis/data-client.md index a3715a5c91..1a47188d98 100644 --- a/docs/dev/reference/apis/data-client.md +++ b/docs/dev/reference/apis/data-client.md @@ -3,7 +3,7 @@ title: "Upload and retrieve data with Viam's data client API" linkTitle: "Data client" weight: 10 type: "docs" -description: "Use the data client API to upload and retrieve data directly to the Viam app." +description: "Use the data client API to upload and retrieve data directly." icon: true images: ["/services/icons/sdk.svg"] tags: @@ -30,7 +30,7 @@ The data client API allows you to upload and retrieve data to and from the Viam The data client API supports the following methods: -Methods to upload data like images or sensor readings directly to the [Viam app](https://app.viam.com): +Methods to upload data like images or sensor readings directly to Viam: {{< readfile "/static/include/app/apis/generated/data_sync-table.md" >}} @@ -49,7 +49,7 @@ To use the Viam data client API, you first need to instantiate a `ViamClient` an You will also need an API key and API key ID to authenticate your session. To get an API key (and corresponding ID), you have two options: -- [Create an API key using the Viam app](/operate/control/api-keys/#add-an-api-key) +- [Create an API key in the web UI](/operate/control/api-keys/#add-an-api-key) - [Create an API key using the Viam CLI](/dev/tools/cli/#create-an-organization-api-key) The following example instantiates a `ViamClient`, authenticating with an API key, and then instantiates a `DataClient`: diff --git a/docs/dev/reference/apis/fleet.md b/docs/dev/reference/apis/fleet.md index 80431cae1f..624f7dc586 100644 --- a/docs/dev/reference/apis/fleet.md +++ b/docs/dev/reference/apis/fleet.md @@ -24,7 +24,7 @@ date: "2024-09-20" # updated: "" # When the content was last entirely checked --- -The fleet management API allows you to manage your machine fleet with code instead of with the graphical interface of the [Viam app](https://app.viam.com/). +The fleet management API allows you to manage your machine fleet with code the same way you can do in the [web UI](https://app.viam.com/). With it you can - create and manage organizations, locations, and individual machines @@ -48,7 +48,7 @@ To use the Viam fleet management API, you first need to instantiate a `ViamClien You will also need an API key and API key ID to authenticate your session. To get an API key (and corresponding ID), you have two options: -- [Create an API key using the Viam app](/operate/control/api-keys/#add-an-api-key) +- [Create an API key in the web UI](/operate/control/api-keys/#add-an-api-key) - [Create an API key using the Viam CLI](/dev/tools/cli/#create-an-organization-api-key) The following example instantiates a `ViamClient`, authenticating with an API key, and then instantiates an `AppClient`: @@ -135,10 +135,10 @@ You can use the module environment variables `VIAM_API_KEY` and `VIAM_API_KEY_ID To copy the ID of your machine {{< glossary_tooltip term_id="part" text="part" >}}, select the part status dropdown to the right of your machine's location and name on the top of its page and click the copy icon next to **Part ID**: -{{}} +{{}} ## Find machine ID To copy the ID of your {{< glossary_tooltip term_id="machine" text="machine" >}}, click the **...** (Actions) button in the upper-right corner of your machine's page, then click **Copy machine ID**: -{{}} +{{}} diff --git a/docs/dev/reference/apis/ml-training-client.md b/docs/dev/reference/apis/ml-training-client.md index 25e67520bd..310d5776da 100644 --- a/docs/dev/reference/apis/ml-training-client.md +++ b/docs/dev/reference/apis/ml-training-client.md @@ -13,7 +13,7 @@ date: "2024-09-16" # updated: "" # When the content was last entirely checked --- -The ML training API allows you to get information about and cancel ML training jobs taking place on the [Viam app](https://app.viam.com). +The ML training API allows you to get information about and cancel ML training jobs running on Viam. {{% alert title="Support Notice" color="note" %}} @@ -33,7 +33,7 @@ You will also need an API key and API key ID to authenticate your session. Your API key needs to have [Org owner permissions](/manage/manage/rbac/#organization-settings-and-roles) to use the MLTraining client API. To get an API key (and corresponding ID), you have two options: -- [Create an API key using the Viam app](/operate/control/api-keys/#add-an-api-key) +- [Create an API key in the web UI](/operate/control/api-keys/#add-an-api-key) - [Create an API key using the Viam CLI](/dev/tools/cli/#create-an-organization-api-key) The following example instantiates a `ViamClient`, authenticating with an API key, and then instantiates an `MLTrainingClient`: diff --git a/docs/dev/reference/apis/robot.md b/docs/dev/reference/apis/robot.md index 92e41b3c7e..55f632f279 100644 --- a/docs/dev/reference/apis/robot.md +++ b/docs/dev/reference/apis/robot.md @@ -25,7 +25,7 @@ The machine API supports the following methods: To interact with the machine API with Viam's SDKs, instantiate a `RobotClient` ([gRPC](https://grpc.io/) client) and use that class for all interactions. -To find the API key, API key ID, and machine address, go to [Viam app](https://app.viam.com/), select the machine you wish to connect to, and go to the **CONNECT** tab. +To find the API key, API key ID, and machine address, go to [Viam](https://app.viam.com/), select the machine you wish to connect to, and go to the **CONNECT** tab. Toggle **Include API key**, and then copy and paste the API key ID and the API key into your environment variables or directly into the code: {{< tabs >}} @@ -47,7 +47,7 @@ async def connect() -> RobotClient: api_key_id='' ) return await RobotClient.at_address( - address='ADDRESS FROM CONNECT TAB OF VIAM APP', + address='MACHINE ADDRESS', options=opts ) @@ -85,7 +85,7 @@ func main() { logger := logging.NewLogger("client") machine, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(utils.WithEntityCredentials( // Replace "" (including brackets) with your machine's @@ -157,7 +157,7 @@ func main() { defer cancel() machine, err := client.New( timeoutContext, - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(rpc.WithEntityCredentials( // Replace "" (including brackets) with your machine's diff --git a/docs/dev/reference/apis/services/SLAM.md b/docs/dev/reference/apis/services/SLAM.md index a402a31aa2..388b8dd323 100644 --- a/docs/dev/reference/apis/services/SLAM.md +++ b/docs/dev/reference/apis/services/SLAM.md @@ -21,7 +21,7 @@ The [SLAM service](/operate/reference/services/slam/) supports the following met ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/base-rc.md b/docs/dev/reference/apis/services/base-rc.md index bc8554ddcf..aa681c847e 100644 --- a/docs/dev/reference/apis/services/base-rc.md +++ b/docs/dev/reference/apis/services/base-rc.md @@ -21,7 +21,7 @@ The [SLAM service](/operate/reference/services/slam/) supports the following met ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/data.md b/docs/dev/reference/apis/services/data.md index 992c044437..9feb8a32b2 100644 --- a/docs/dev/reference/apis/services/data.md +++ b/docs/dev/reference/apis/services/data.md @@ -18,12 +18,12 @@ The [data management service](/data-ai/capture-data/capture-sync/) supports the {{< readfile "/static/include/services/apis/generated/data_manager-table.md" >}} -The data client API supports a separate set of methods that allow you to upload and export data to and from the Viam app. +The data client API supports a separate set of methods that allow you to upload and export data to and from Viam. For information about that API, see [Data Client API](/dev/reference/apis/data-client/). ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/discovery.md b/docs/dev/reference/apis/services/discovery.md index a3f1463bee..b4bb12ce7f 100644 --- a/docs/dev/reference/apis/services/discovery.md +++ b/docs/dev/reference/apis/services/discovery.md @@ -18,7 +18,7 @@ The discovery service supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/generic.md b/docs/dev/reference/apis/services/generic.md index 301afb14a4..ca40234f7c 100644 --- a/docs/dev/reference/apis/services/generic.md +++ b/docs/dev/reference/apis/services/generic.md @@ -22,7 +22,7 @@ The generic service supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/ml.md b/docs/dev/reference/apis/services/ml.md index 2acfe6f081..f0c0bd3ddf 100644 --- a/docs/dev/reference/apis/services/ml.md +++ b/docs/dev/reference/apis/services/ml.md @@ -31,7 +31,7 @@ pip install 'viam-sdk[mlmodel]' {{< /alert >}} -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/motion.md b/docs/dev/reference/apis/services/motion.md index 201e259f41..d43e3060a5 100644 --- a/docs/dev/reference/apis/services/motion.md +++ b/docs/dev/reference/apis/services/motion.md @@ -20,7 +20,7 @@ The motion service supports the following methods: ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/navigation.md b/docs/dev/reference/apis/services/navigation.md index a7064e8d27..375bb09313 100644 --- a/docs/dev/reference/apis/services/navigation.md +++ b/docs/dev/reference/apis/services/navigation.md @@ -21,7 +21,7 @@ The [navigation service](/operate/reference/services/navigation/) supports the f ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/apis/services/vision.md b/docs/dev/reference/apis/services/vision.md index 25f410cde8..227688f9e2 100644 --- a/docs/dev/reference/apis/services/vision.md +++ b/docs/dev/reference/apis/services/vision.md @@ -96,7 +96,7 @@ The [vision service](/operate/reference/services/vision/) supports the following ## Establish a connection -To get started using Viam's SDKs to connect to and control your machine, go to your machine's page on the [Viam app](https://app.viam.com), navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. +To get started using Viam's SDKs to connect to and control your machine, go to your machine's page, navigate to the **CONNECT** tab's **Code sample** page, select your preferred programming language, and copy the sample code. {{% snippet "show-secret.md" %}} diff --git a/docs/dev/reference/changelog.md b/docs/dev/reference/changelog.md index cff6951e69..2608031b5c 100644 --- a/docs/dev/reference/changelog.md +++ b/docs/dev/reference/changelog.md @@ -44,7 +44,7 @@ date: "2024-09-18" {{% changelog color="removed" title="Frame tab removed, use Add Frame button" date="2025-05-15" %}} -The frame tab no longer exists in the Viam app. +The frame tab no longer exists. To add a frame to a component, click the **+ Add Frame** button on the component's configuration card. {{% /changelog %}} @@ -130,7 +130,7 @@ See [Module dependencies](/operate/get-started/other-hardware/create-module/depe {{% changelog color="added" title="System log forwarding" date="2025-05-14" %}} -You can now configure `viam-agent` to forward system logs from journald to the cloud. This allows you to view system logs from your machine alongside Viam's own logs in the Viam app. +You can now configure `viam-agent` to forward system logs from journald to the cloud. This allows you to view system logs from your machine alongside Viam's own logs. To enable system log forwarding, add the `forward_system_logs` field to the `system_configuration` object in your machine's `agent` configuration. This field accepts a comma-separated list of service identifiers to include or exclude from forwarding. @@ -208,7 +208,7 @@ It also configures timeouts to control how long `viam-agent` waits for a valid l | `offline_timeout` | boolean | Optional | Will only enter provisioning mode (hotspot) after being disconnected longer than this time. Useful on flaky connections, or when part of a system where the device may start quickly, but the wifi/router may take longer to be available. Default: `"2m"` (2 minutes). | | `user_timeout` | boolean | Optional | Amount of time before considering a user (using the captive web portal or provisioning app) idle, and resuming normal behavior. Used to avoid interrupting provisioning mode (for example for network tests/retries) when a user might be busy entering details. Default: `"5m"` (5 minutes). | | `fallback_timeout` | boolean | Optional | Provisioning mode will exit after this time, to allow other unmanaged (for example wired) or manually configured connections to be tried. Provisioning mode will restart if the connection/online status doesn't change. Default: `"10m"` (10 minutes). | -| `networks` | array | Optional | Add additional networks the machine can connect to for provisioning. We recommend that you add WiFi settings in the operating system (for example, directly in NetworkManager) rather than in this file, or in the corresponding machine config in the Viam app, if networks aren't needed until after initial provisioning. Default: `[]`. | +| `networks` | array | Optional | Add additional networks the machine can connect to for provisioning. We recommend that you add WiFi settings in the operating system (for example, directly in NetworkManager) rather than in this file, or in the corresponding machine config, if networks aren't needed until after initial provisioning. Default: `[]`. | | `wifi_power_save` | boolean | Optional | If set, will explicitly enable or disable power save for all WiFi connections managed by NetworkManager. | | `device_reboot_after_offline_minutes` | integer | Optional | If set, `viam-agent` will reboot the device after it has been offline for the specified duration. Default: `0` (disabled). | @@ -563,9 +563,9 @@ In addition to the existing returned metadata, the [`GetCloudMetadata`](/dev/ref {{% /changelog %}} -{{% changelog date="2024-04-16" color="improved" title="Viam app interface" %}} +{{% changelog date="2024-04-16" color="improved" title="Viam web UI" %}} -the [Viam app](https://app.viam.com) machine page UI has been updated significantly. +The machine page UI has been updated significantly. In addition to other improvements, your component, service, and other resource config cards are all displayed on one page instead of in separate tabs. {{% /changelog %}} @@ -613,7 +613,7 @@ You can now use the [generic service](/operate/reference/components/generic/) to {{% changelog date="2024-02-12" color="added" title="ML models in the registry" %}} You can now upload [machine learning (ML) models](/data-ai/ai/deploy/#deploy-your-ml-model-on-an-ml-model-service) to the Viam Registry, in addition to modules. -You may upload models you have trained yourself using the Viam app, or models you have trained outside of the App. +You may upload models you have trained yourself using Viam, or models you have trained outside of Viam. When uploading, you have the option to make your model available to the general public for reuse. {{% /changelog %}} @@ -627,7 +627,7 @@ Viam has added a [sensor-controlled base](/operate/reference/components/base/sen {{% changelog date="2024-01-31" color="added" title="Visualize captured data" %}} You can now [visualize your data](/data-ai/data/visualize/) using many popular third-party visualization tools, including Grafana, Tableau, Google's Looker Studio, and more. -You can visualize any data, such as sensor readings, that you have [synced](/data-ai/capture-data/capture-sync/) to the Viam app from your machine. +You can visualize any data, such as sensor readings, that you have [synced](/data-ai/capture-data/capture-sync/) to Viam from your machine. See [Visualize data with Grafana](/tutorials/services/visualize-data-grafana/) for a full walkthrough focused on Grafana specifically. @@ -670,7 +670,7 @@ Location secrets, the previous method of authentication, is deprecated and will {{% changelog date="2023-11-30" color="added" title="Queryable sensor data" %}} -Once you have added the data management service and synced data, such as sensor readings, to the Viam app, you can now run queries against both captured data as well as its metadata using either SQL or MQL. +Once you have added the data management service and synced data, such as sensor readings, to Viam, you can now run queries against both captured data as well as its metadata using either SQL or MQL. For more information, see [Query Data with SQL or MQL](/data-ai/data/query/). @@ -726,7 +726,7 @@ This enhancement allows you to: {{% changelog date="2023-09-30" color="added" title="Modular registry" %}} -The [Modular Registry](https://app.viam.com/registry/) enables you to use, create, and share custom modules, extending the capabilities of Viam beyond the components and services that are natively supported. +The [registry](https://app.viam.com/registry/) enables you to use, create, and share custom modules, extending the capabilities of Viam beyond the components and services that are natively supported. You can: @@ -807,7 +807,7 @@ Arm models now support the [`GetKinematics` method](/dev/reference/apis/componen {{% changelog date="2023-06-30" color="added" title="View sensor data within Viam" %}} -You can now [view your sensor data](https://app.viam.com/data/view?view=sensors) directly in the Viam app to verify data creation and accuracy. +You can now [view your sensor data](https://app.viam.com/data/view?view=sensors) directly in the web UI to verify data creation and accuracy. If you depend on sensor data to plan and control machine operations, this feature increases access to data and supports a more efficient workflow. {{% /changelog %}} @@ -823,7 +823,7 @@ Sessions are enabled by default, with the option to [disable sessions](/dev/refe {{% changelog date="2023-06-30" color="added" title="Connect an ODrive motor controller as a Viam module" %}} -You can integrate and control ODrive motor controllers with Viam using the [`odrive` module from the Viam Registry](https://github.com/viamrobotics/odrive). +You can integrate and control ODrive motor controllers with Viam using the [`odrive` module from the registry](https://github.com/viamrobotics/odrive). See the [Odrive module readme](https://github.com/viamrobotics/odrive) to learn how to connect and use an ODrive motor controller with Viam, and view the sample configurations. @@ -870,7 +870,7 @@ The beta release of the [TypeScript SDK](https://github.com/viamrobotics/viam-ty {{% changelog date="2023-05-31" color="added" title="Train object detection ML models" %}} -You now have the capability to directly [train a TFlite object detection models](/data-ai/ai/train-tflite/) in addition to image classification models from within the Viam app. +You now have the capability to directly [train a TFlite object detection models](/data-ai/ai/train-tflite/). This update allows you to: @@ -895,9 +895,9 @@ For more information about assigning permissions and collaborating with others o {{% changelog date="2023-05-31" color="improved" title="Control RoboClaw motor controllers with the driver" %}} -When using a RoboClaw motor controller without encoders connected to your motors, you now have more direct control over the RoboClaw’s functionality within Viam or through the motor API. +When using a RoboClaw motor controller without encoders connected to your motors, you now have more direct control over the RoboClaw’s functionality within the web UI or through the motor API. -For example, in the Viam app, you can now set **Go For** values for these motors, utilizing a time-based estimation for the number of revolutions. +For example, in the web UI, you can now set **Go For** values for these motors, utilizing a time-based estimation for the number of revolutions. {{% /changelog %}} @@ -912,7 +912,7 @@ The latest updates enable you to: {{% /changelog %}} -{{% changelog date="2023-05-31" color="improved" title="Additions to code samples in the Viam app" %}} +{{% changelog date="2023-05-31" color="improved" title="Additions to code samples" %}} The updated code samples now includes: @@ -923,7 +923,7 @@ Access these samples in the **Code sample** tab on your machine's page to connec {{% /changelog %}} -{{% changelog date="2023-05-31" color="improved" title="Delete data in bulk in the Viam app" %}} +{{% changelog date="2023-05-31" color="improved" title="Delete data in bulk" %}} You can manage the data synced to Viam's cloud with the new capability for bulk data deletion on the **Data** tab. @@ -1347,13 +1347,6 @@ You now have the option to reuse a machine config from a previous Try Viam sessi {{% /changelog %}} -{{% changelog date="2023-02-28" color="added" title="Dynamic code samples" %}} - -The Viam app **Code sample** tab now dynamically updates as you add resources to your machine's config. -The code samples instantiate each resource and include examples of how to call a `Get` method on it. - -{{% /changelog %}} - {{% changelog date="2023-02-28" color="added" title="TypeScript SDK" %}} Find more information in the [TypeScript SDK docs](https://ts.viam.dev/). @@ -1362,7 +1355,7 @@ Find more information in the [TypeScript SDK docs](https://ts.viam.dev/). {{% changelog date="2023-02-28" color="added" title="Frame system visualizer" %}} -When adding [frames](/operate/reference/services/frame-system/) to your machine's config in the Viam app, you can now use the **Frame System** subtab of the **CONFIGURE** tab to more easily visualize the relative positions of frames. +When adding [frames](/operate/reference/services/frame-system/) to your machine's config, you can now use the **Frame System** subtab of the **CONFIGURE** tab to more easily visualize the relative positions of frames. {{% /changelog %}} @@ -1375,7 +1368,7 @@ Find more information in the [`viam-micro-server` docs](/operate/reference/viam- {{% changelog date="2023-01-31" color="added" title="Remote control power input" %}} -On your machine's **CONTROL** tab on the [Viam app](https://app.viam.com/), you can now set the power of a [base](/operate/reference/components/base/). +On your machine's **CONTROL** tab, you can now set the power of a [base](/operate/reference/components/base/). The base control UI previously always sent 100% power to the base's motors. {{% /changelog %}} @@ -1402,11 +1395,11 @@ The UR5 arm model has been improved using this new geometry type. {{% changelog date="2022-12-28" color="added" title="Modular resources" %}} -You can now implement your own custom {{< glossary_tooltip term_id="resource" text="resources" >}} as [_modular resources_ in the registry](https://app.viam.com/registry/). +You can now implement your own custom {{< glossary_tooltip term_id="resource" text="resources" >}} as _modular resources_ in the [registry](https://app.viam.com/registry/). {{% alert title="Important: Breaking Change" color="note" %}} -All users need to update to the latest version of the RDK (V3.0.0) to access machines using the Viam app. +All users need to update to the latest version of the RDK (V3.0.0) to access machines using the web UI. {{% /alert %}} @@ -1482,7 +1475,7 @@ A new [servo model called `gpio`](/operate/reference/components/servo/gpio/) sup {{% changelog date="2022-11-15" color="added" title="RTT indicator in the app" %}} -A badge in the Viam app now displays RTT (round trip time) of a request from your client to the machine. +A badge in the web UI now displays RTT (round trip time) of a request from your client to the machine. Find this indicator of the time to complete one request/response cycle on your machine's **CONTROL** tab, in the **Operations & Sessions** card. {{% /changelog %}} diff --git a/docs/dev/reference/contributing.md b/docs/dev/reference/contributing.md index 2ad7972ca2..cd3b6a7b35 100644 --- a/docs/dev/reference/contributing.md +++ b/docs/dev/reference/contributing.md @@ -202,8 +202,8 @@ Additional we enforce the following substitutions: | Do not say | Instead say | | ---------- | ----------- | -| web app, cloud app | Viam app or Viam platform | -| viam app, Viam App | Viam app | +| web app, cloud app | Viam or web UI | +| viam app, Viam App | Viam or web UI | | Viam-server, Viam server, Viam-Server | viam-server | | Config Tab, Config tab, Configure Tab | CONFIGURE tab | | Vision service, Vision Service | vision service | diff --git a/docs/dev/reference/glossary/machine-id.md b/docs/dev/reference/glossary/machine-id.md index c03a287235..b89b0694a8 100644 --- a/docs/dev/reference/glossary/machine-id.md +++ b/docs/dev/reference/glossary/machine-id.md @@ -10,4 +10,5 @@ type: "page" A **Machine ID** is a unique identifier assigned to each {{< glossary_tooltip term_id="machine" text="machine" >}} in the Viam platform. This ID is used to identify and reference a specific machine within the Viam ecosystem. -Machine IDs are automatically generated when a new machine is created in the Viam app amd os accessible through the Viam app UI and the [Fleet management API](/dev/reference/apis/fleet/). +Machine IDs are automatically generated when a new machine is created on Viam. +You can get it using the web UI and the [Fleet management API](/dev/reference/apis/fleet/). diff --git a/docs/dev/reference/glossary/module.md b/docs/dev/reference/glossary/module.md index 69463ec24f..16c5dd1855 100644 --- a/docs/dev/reference/glossary/module.md +++ b/docs/dev/reference/glossary/module.md @@ -8,4 +8,4 @@ short_description: Modules are the code packages that provide functionality like A _module_ is a code package which provides one or more {{< glossary_tooltip term_id="modular-resource" text="modular resources" >}}, which add {{< glossary_tooltip term_id="resource" text="resource" >}} {{< glossary_tooltip term_id="type" text="types" >}} or {{< glossary_tooltip term_id="model" text="models" >}}, integrations, or control logic for your machines. Modules run alongside `viam-server` as separate process, communicating with `viam-server` over UNIX sockets. -You can [create your own module](/operate/get-started/other-hardware/create-module/) or [add existing modules from the Viam Registry](/operate/get-started/supported-hardware/). +You can [create your own module](/operate/get-started/other-hardware/create-module/) or [add existing modules from the registry](/operate/get-started/supported-hardware/). diff --git a/docs/dev/reference/glossary/mql.md b/docs/dev/reference/glossary/mql.md index 99c20e8f5d..fff92f987b 100644 --- a/docs/dev/reference/glossary/mql.md +++ b/docs/dev/reference/glossary/mql.md @@ -7,4 +7,4 @@ short_description: MQL is the MongoDB query language, similar to SQL but specifi MQL is the [MongoDB query language](https://www.mongodb.com/docs/manual/tutorial/query-documents/), similar to {{< glossary_tooltip term_id="sql" text="SQL" >}} but specific to the MongoDB document model. -You can use MQL to query data that you have synced to the Viam app using the [data management service](/data-ai/capture-data/capture-sync/). +You can use MQL to query data that you have synced to Viam using the [data management service](/data-ai/capture-data/capture-sync/). diff --git a/docs/dev/reference/glossary/sql.md b/docs/dev/reference/glossary/sql.md index 3615114646..a7b83bb71d 100644 --- a/docs/dev/reference/glossary/sql.md +++ b/docs/dev/reference/glossary/sql.md @@ -7,4 +7,4 @@ short_description: SQL (structured query language) is the widely-used, industry- [SQL (structured query language)](https://en.wikipedia.org/wiki/SQL) is the widely-used, industry-standard query language popular with [relational databases](https://en.wikipedia.org/wiki/Relational_database). -You can use SQL to query data that you have synced to the Viam app using the [data management service](/data-ai/capture-data/capture-sync/). +You can use SQL to query data that you have synced to Viam using the [data management service](/data-ai/capture-data/capture-sync/). diff --git a/docs/dev/reference/sdks/connectivity.md b/docs/dev/reference/sdks/connectivity.md index 7668a2760c..d28f8d060b 100644 --- a/docs/dev/reference/sdks/connectivity.md +++ b/docs/dev/reference/sdks/connectivity.md @@ -104,7 +104,7 @@ When a machine loses its connection to the internet but is still connected to a - Client sessions connected through the same LAN or WAN will function normally. - Client sessions connected through the internet will timeout and end. If the client is on the same LAN or WAN but the route it chose to connect is through the internet, the client will automatically disconnect and then reconnect over LAN. -- Cloud sync for the [data management service](/data-ai/capture-data/capture-sync/) will pause until the internet connection is re-established since the machine will be unable to connect to the [Viam app](https://app.viam.com). +- Cloud sync for the [data management service](/data-ai/capture-data/capture-sync/) will pause until the internet connection is re-established since the machine will be unable to connect to Viam. When a machine loses its connection to LAN or WAN, all client sessions will timeout and end by default. diff --git a/docs/dev/reference/sdks/docommand.md b/docs/dev/reference/sdks/docommand.md index cf7625005a..49fb435dfb 100644 --- a/docs/dev/reference/sdks/docommand.md +++ b/docs/dev/reference/sdks/docommand.md @@ -147,9 +147,9 @@ if err != nil { {{% /tab %}} {{< /tabs >}} -## Use DoCommand from the Viam app +## Use DoCommand in the web UI -You can use `DoCommand` from the Viam app: +You can use `DoCommand` in the web UI: 1. Navigate to your machine's **CONTROL** tab. 1. Find your resource and expand the **DO COMMAND** section. @@ -169,7 +169,7 @@ You can use `DoCommand` from the Viam app: For an example that implements `DoCommand` in a generic API Python module, see [Add control logic to your module](/manage/software/control-logic/#add-control-logic-to-your-module). -For additional examples, look at the GitHub repositories of [modules in the registry](https://app.viam.com/registry), especially modules that use the generic API. +For additional examples, look at the GitHub repositories of [registry](https://app.viam.com/registry), especially modules that use the generic API. Essentially all generic models implement `DoCommand` (since it is the only method of the generic API), and various other models implement it as well. {{% hiddencontent %}} diff --git a/docs/dev/reference/sdks/python/python-venv.md b/docs/dev/reference/sdks/python/python-venv.md index 34518e1a80..f317ce7675 100644 --- a/docs/dev/reference/sdks/python/python-venv.md +++ b/docs/dev/reference/sdks/python/python-venv.md @@ -14,7 +14,7 @@ date: "2022-01-01" # updated: "" # When the content was last entirely checked --- -To manage Python packages for your Viam application, it is recommended that you use a virtual environment, or `venv`. +To manage Python packages for your code, it is recommended that you use a virtual environment, or `venv`. By using a `venv`, you can install Python packages like Viam's client SDK within a virtual environment, avoiding conflicts with other projects or your system. Follow this guide to set up a fresh virtual environment on your working computer and install the Python SDK as a requirement for your Viam client application. diff --git a/docs/dev/reference/try-viam/_index.md b/docs/dev/reference/try-viam/_index.md index 514d835ffb..ed51ad2af4 100644 --- a/docs/dev/reference/try-viam/_index.md +++ b/docs/dev/reference/try-viam/_index.md @@ -32,7 +32,7 @@ The easiest way to try Viam is to [rent and remotely configure and control a Via {{}} 1. Click on TRY in Viam -

Log into the Viam app and go to the TRY tab. Don’t have a Viam account? Follow the prompts to sign up for an account.

+

Log into Viam and go to the TRY tab. Don’t have a Viam account? Follow the prompts to sign up for an account.

@@ -46,7 +46,7 @@ See detailed instructions {{}} 3. Get started with Viam -

Try a Viam Rover in our robotics lab. Drive or program the rover to see how you can build a machine with Viam.

+

Try a Viam Rover in our robotics lab. Drive or program the rover to see how you can build a machine with Viam.

diff --git a/docs/dev/reference/try-viam/reserve-a-rover.md b/docs/dev/reference/try-viam/reserve-a-rover.md index cfe4038cab..9d1fd6ae00 100644 --- a/docs/dev/reference/try-viam/reserve-a-rover.md +++ b/docs/dev/reference/try-viam/reserve-a-rover.md @@ -35,7 +35,7 @@ Once your reservation starts and the system has configured your rover, click **T {{}} -{{}} +{{}} ### Limitations diff --git a/docs/dev/reference/try-viam/rover-resources/rover-tutorial-1.md b/docs/dev/reference/try-viam/rover-resources/rover-tutorial-1.md index e8354257dd..cbf7e43616 100644 --- a/docs/dev/reference/try-viam/rover-resources/rover-tutorial-1.md +++ b/docs/dev/reference/try-viam/rover-resources/rover-tutorial-1.md @@ -163,7 +163,7 @@ This is the recommended order to assemble your rover: 2. [Unscrew the top of the rover and screw the Pi to the base.](#attach-the-raspberry-pi-to-the-rover) 3. [Connect the components.](#connect-the-wires) 4. [Screw the top of the rover back on and turn the rover on.](#turn-the-rover-on) -5. [Install `viam-server` and connect to the Viam app.](#connect-to-the-viam-app) +5. [Install `viam-server` and connect to Viam.](#connect-to-viam) ### Install Raspberry Pi OS @@ -242,9 +242,9 @@ Once you have wired up all the components, reattach the top of the rover and fas Insert the batteries and turn the rover on. If the Pi has power, the lights on the Raspberry Pi will light up. -### Connect to the Viam app +### Connect to Viam -While the Pi boots, go to the [Viam app](https://app.viam.com/robots) and add a new machine. +While the Pi boots, go to the [Viam](https://app.viam.com/robots) and add a new machine. Navigate to the **CONFIGURE** tab and find your machine's card. An alert will be present directing you to **Set up your machine part**. Click **View setup instructions** to open the setup instructions. diff --git a/docs/dev/reference/try-viam/rover-resources/rover-tutorial-fragments.md b/docs/dev/reference/try-viam/rover-resources/rover-tutorial-fragments.md index 2def39f181..527586dd5a 100644 --- a/docs/dev/reference/try-viam/rover-resources/rover-tutorial-fragments.md +++ b/docs/dev/reference/try-viam/rover-resources/rover-tutorial-fragments.md @@ -20,8 +20,8 @@ Viam provides reusable {{% glossary_tooltip term_id="fragment" text="*fragments* - An assembled Viam Rover. For assembly instructions, see [Unbox and Set Up your Viam Rover](../rover-tutorial/) -- The board is connected to the [Viam app](https://app.viam.com). - To add your Pi to the Viam app, refer to [the rover setup guide](/dev/reference/try-viam/rover-resources/rover-tutorial/#control-your-rover-on-the-viam-app). +- The board is connected to Viam. + To add your Pi to Viam, refer to [the rover setup guide](/dev/reference/try-viam/rover-resources/rover-tutorial/#control-your-rover-on-viam). ## Add the fragment @@ -30,7 +30,7 @@ Follow the appropriate instructions for the model of rover and board you have: {{< tabs >}} {{% tab name="Viam Rover 2 (RPi 5)" %}} -Navigate to your machine in the [Viam app](https://app.viam.com/robots). +Navigate to your machine's page. In the left-hand menu of the **CONFIGURE** tab, click the **+** (Create) icon next to the machine {{< glossary_tooltip term_id="part" text="part" >}} you want to add the fragment to. Select **Insert fragment**. @@ -61,7 +61,7 @@ To see the configured pin numbers and other values specific to this fragment, [v {{% /tab %}} {{% tab name="Viam Rover 2 (RPi 4)" %}} -Navigate to your machine in the [Viam app](https://app.viam.com/robots). +Navigate to your machine's page. In the left-hand menu of the **CONFIGURE** tab, click the **+** (Create) icon next to the machine {{< glossary_tooltip term_id="part" text="part" >}} you want to add the fragment to. Select **Insert fragment**. @@ -92,7 +92,7 @@ To see the configured pin numbers and other values specific to this fragment, [v {{% /tab %}} {{% tab name="Viam Rover 1 (RPi 4)" %}} -Navigate to your machine in the [Viam app](https://app.viam.com/robots). +Navigate to your machine's page. In the left-hand menu of the **CONFIGURE** tab, click the **+** (Create) icon next to the machine {{< glossary_tooltip term_id="part" text="part" >}} you want to add the fragment to. Select **Insert fragment**. @@ -130,7 +130,7 @@ To see the configured pin numbers and other values specific to this fragment, [v {{% /tab %}} {{% tab name="Viam Rover 2 (Jetson Nano)" %}} -Navigate to your machine in the [Viam app](https://app.viam.com/robots). +Navigate to your machine's page. In the left-hand menu of the **CONFIGURE** tab, click the **+** (Create) icon next to the machine {{< glossary_tooltip term_id="part" text="part" >}} you want to add the fragment to. Select **Insert fragment**. @@ -161,7 +161,7 @@ To see the configured pin numbers and other values specific to this fragment, [v {{% /tab %}} {{% tab name="Viam Rover 2 (Jetson Orin Nano)" %}} -Navigate to your machine in the [Viam app](https://app.viam.com/robots). +Navigate to your machine's page. In the left-hand menu of the **CONFIGURE** tab, click the **+** (Create) icon next to the machine {{< glossary_tooltip term_id="part" text="part" >}} you want to add the fragment to. Select **Insert fragment**. diff --git a/docs/dev/reference/try-viam/rover-resources/rover-tutorial/_index.md b/docs/dev/reference/try-viam/rover-resources/rover-tutorial/_index.md index ceceb68c63..5ee2217848 100644 --- a/docs/dev/reference/try-viam/rover-resources/rover-tutorial/_index.md +++ b/docs/dev/reference/try-viam/rover-resources/rover-tutorial/_index.md @@ -369,11 +369,11 @@ Screw the top plate back on with the biggest Allen key and use the power switch Wait a second for the low voltage cutoff relay to trip and provide power to the rover motherboard. If the Pi has power, the lights on the Raspberry Pi will light up. -### Control your rover on the Viam app +### Control your rover on Viam -If you followed the instructions in the [Pi installation guide](/operate/reference/prepare/rpi-setup/), you should have already made an account on the [Viam app](https://app.viam.com), installed `viam-server` on the board, and added a new machine. +If you followed the instructions in the [Pi installation guide](/operate/reference/prepare/rpi-setup/), you should have already made a Viam account, installed `viam-server` on the board, and added a new machine. -If not, add a new machine in the [Viam app](https://app.viam.com) and follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} until your machine is connected. +If not, add a new machine and follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} until your machine is connected. To configure your rover so you can start driving it, [add a Viam Rover 2 Fragment to your machine](/dev/reference/try-viam/rover-resources/rover-tutorial-fragments/). diff --git a/docs/dev/reference/try-viam/rover-resources/rover-tutorial/jetson-rover-setup.md b/docs/dev/reference/try-viam/rover-resources/rover-tutorial/jetson-rover-setup.md index 40b28ec879..67a9d1a8e6 100644 --- a/docs/dev/reference/try-viam/rover-resources/rover-tutorial/jetson-rover-setup.md +++ b/docs/dev/reference/try-viam/rover-resources/rover-tutorial/jetson-rover-setup.md @@ -157,9 +157,9 @@ Some states do not allow the exclusion or disclaimer of implied warranties, so t {{% /tab %}} {{< /tabs >}} -### Control your rover on the Viam app +### Control your rover on Viam -If you followed the instructions in the [Jetson installation guide](/operate/reference/prepare/jetson-nano-setup/), you should have already made an account on the [Viam app](https://app.viam.com), installed `viam-server` on the board, and added a new machine. +If you followed the instructions in the [Jetson installation guide](/operate/reference/prepare/jetson-nano-setup/), you should have already made a Viam account, installed `viam-server` on the board, and added a new machine. To configure your rover so you can start driving it, [add a Viam Rover 2 Fragment to your machine](/dev/reference/try-viam/rover-resources/rover-tutorial-fragments/). diff --git a/docs/dev/reference/try-viam/try-viam-tutorial.md b/docs/dev/reference/try-viam/try-viam-tutorial.md index 9321327649..c768de9aa4 100644 --- a/docs/dev/reference/try-viam/try-viam-tutorial.md +++ b/docs/dev/reference/try-viam/try-viam-tutorial.md @@ -61,7 +61,7 @@ We recommend enabling both cameras so you can have a better sense of what's happ ![The viam_base component panel showing both the 'cam' and 'overheadcam' camera feeds enabled.](appendix/try-viam/try-viam/enable-both-cameras.png) -You can also view and control the camera streams from the individual camera components on the [**CONTROL** page](/manage/troubleshoot/teleoperate/default-interface/#viam-app). +You can also view and control the camera streams from the individual camera components on the [**CONTROL** page](/manage/troubleshoot/teleoperate/default-interface/#web-ui). #### Movement control @@ -140,7 +140,7 @@ The [web gamepad component](/components/input-controller/webgamepad/) is disable ## Learn about machine configuration -On the Viam app, navigate to the **Components** subtab, under **CONFIGURE**. +On your machine's page, navigate to the **CONFIGURE** tab. There you can view the configuration for each component in the machine: attributes, component dependencies, pin assignments, and more. ![The CONFIG tab in Builder mode (as opposed to Raw JSON). The board component panel and right motor panel are visible.](appendix/try-viam/try-viam/config-builder.png) @@ -217,7 +217,7 @@ The names for **base** and **input_controller** correspond to the naming scheme ### Raw JSON The 'Builder' configuration mode provides a user-friendly, guided experience for you. -In the background, the Viam app translates the Viam machine configuration into JSON. +In the background, Viam translates the Viam machine configuration into JSON. You can view the complete JSON for your rover by clicking on **Raw JSON** at the top left of the **CONFIGURE** tab. ![The CONFIG tab with the mode toggled to Raw JSON. A section of the full raw JSON config is displayed but one would have to scroll to see all of it.](appendix/try-viam/try-viam/raw-json.png) diff --git a/docs/dev/tools/cli.md b/docs/dev/tools/cli.md index 968c127168..8dadda9d8c 100644 --- a/docs/dev/tools/cli.md +++ b/docs/dev/tools/cli.md @@ -21,7 +21,7 @@ The CLI lets you: - Retrieve [organization](/dev/reference/glossary/#organization) and location information - Manage fleet data and logs - Control machines by issuing component and service commands -- Upload and manage modular resources in the [Viam Registry](https://app.viam.com/registry/) +- Upload and manage modular resources in the [registry](https://app.viam.com/registry/) For example, this CLI command moves a servo to the 75 degree position: @@ -126,7 +126,7 @@ You can authenticate your CLI session using either a personal access token, or a ``` {{< alert title="Note" color="note" >}} - To use an organization, location, or machine part API key to authenticate, you can create one from the organization's settings page in the [Viam app](https://app.viam.com) or authenticate with a personal access token and then [create an organization API key](#create-an-organization-api-key), a [location](#create-a-location-api-key), or a [machine part API key](#create-a-machine-part-api-key). + To use an organization, location, or machine part API key to authenticate, you can create one from the organization's settings page or authenticate with a personal access token and then [create an organization API key](#create-an-organization-api-key), a [location](#create-a-location-api-key), or a [machine part API key](#create-a-machine-part-api-key). {{< /alert >}} An authenticated session is valid for 24 hours, unless you explicitly [log out](#logout). @@ -136,7 +136,7 @@ After the session expires or you log out, you must re-authenticate to use the CL ### Create an organization API key To use an API key to authenticate your CLI session, you must create one. -You can do this from the organization's settings page in the [Viam app](https://app.viam.com) or with the CLI. +You can do this from the organization's settings page or with the CLI. 1. First, [authenticate](#authenticate) your CLI session. @@ -158,7 +158,7 @@ You will need both to authenticate. {{% alert title="Important" color="note" %}} Keep these key values safe. By default, new organization API keys are created with **Owner** permissions, giving the key full read and write access to all machines within your organization. -You can change an API key's permissions from the Viam app on the [organizations page](/manage/reference/organize/) by clicking the **Show details** link next to your API key. +You can change an API key's permissions on the organizations page by clicking the **Show details** link next to your API key. {{% /alert %}} Once created, you can use the organization API key to authenticate future CLI sessions or to [use the SDKs](/dev/reference/sdks/). @@ -169,7 +169,7 @@ An organization can have multiple API keys. ### Create a location API key To use an location API key to authenticate your CLI session, you must first create one: -You can do this from the organization's settings page in the [Viam app](https://app.viam.com) or with the CLI. +You can do this from the organization's settings page or with the CLI. 1. First, [authenticate](#authenticate) your CLI session. If you don't already have a location API key created, authenticate using a personal access token, an [organization API key](#create-an-organization-api-key), or a [machine part API key](#create-a-machine-part-api-key). @@ -183,7 +183,7 @@ You can do this from the organization's settings page in the [Viam app](https:// Where: - `location-id` is your location ID. - You can find your location ID by running `viam locations list` or by visiting your [fleet's page](https://app.viam.com/robots) in the Viam app. + You can find your location ID by running `viam locations list` or by visiting your [fleet's page](https://app.viam.com/robots). - `org-id` is an optional organization ID to attach the key to. You can find your organization ID by running `viam organizations list` or by visiting your organization's **Settings** page in the [Viam app](https://app.viam.com/). If only one organization owns the location, you can omit the parameter. @@ -197,7 +197,7 @@ You will need both to authenticate. {{% alert title="Important" color="note" %}} Keep these key values safe. By default, new location API keys are created with **Owner** permissions, giving the key full read and write access to all machines within your location. -You can change an API key's permissions from the Viam app on the [organizations page](/manage/reference/organize/) by clicking the **Show details** link next to your API key. +You can change an API key's permissions on the organizations page by clicking the **Show details** link next to your API key. {{% /alert %}} Once created, you can use the location API key to authenticate future CLI sessions or to [connect to machines with the SDK](/dev/reference/sdks/). @@ -208,7 +208,7 @@ A location can have multiple API keys. ### Create a machine part API key To use a machine part API key to authenticate your CLI session, you must first create one: -You can do this from the organization's settings page in the [Viam app](https://app.viam.com) or with the CLI. +You can do this from the organization's settings page or with the CLI. 1. First, [authenticate](#authenticate) your CLI session. If you don't already have a machine part API key created, authenticate using a personal access token, an [organization API key](#create-an-organization-api-key), or a [location API key](#create-a-location-api-key). @@ -222,9 +222,9 @@ You can do this from the organization's settings page in the [Viam app](https:// Where: - `machine-id` is your machine's ID. - You can find your machine ID by running `viam machines list`, or by clicking the **...** button in the upper-right corner of your machine's page in the [Viam app](https://app.viam.com), and selecting **Copy machine ID**. + You can find your machine ID by running `viam machines list`, or by clicking the **...** button in the upper-right corner of your machine's page, and selecting **Copy machine ID**. - `org-id` is an optional organization ID to attach the key to. - You can find your organization ID by running `viam organizations list` or by visiting your organization's **Settings** page in the Viam app. + You can find your organization ID by running `viam organizations list` or by visiting your organization's **Settings** page. If only one organization owns the robot, you can omit the parameter. If multiple organizations own the robot, you must specify the `org-id` explicitly. - `key-name` is an optional name for your API key. @@ -359,8 +359,8 @@ viam dataset data remove ids --dataset-id=abc --binary-data-ids=aaa,bbb | Argument | Description | Applicable commands | Required? | | -------- | ----------- | ------------------- | --------- | -| `--dataset-id` | Dataset to perform an operation on. To retrieve the ID, navigate to your dataset’s page in the [Viam app](https://app.viam.com), click **…** in the left-hand menu, and click **Copy dataset ID** | `rename`, `delete`, `data add`, `data remove`, `export` | **Required** | -| `--dataset-ids` | Dataset IDs of datasets to be listed. To retrieve these IDs, navigate to your dataset’s page in the [Viam app](https://app.viam.com), click **…** in the left-hand menu, and click **Copy dataset ID** | `list` | Optional | +| `--dataset-id` | Dataset to perform an operation on. To retrieve the ID, navigate to your dataset’s page, click **…** in the left-hand menu, and click **Copy dataset ID** | `rename`, `delete`, `data add`, `data remove`, `export` | **Required** | +| `--dataset-ids` | Dataset IDs of datasets to be listed. To retrieve these IDs, navigate to your dataset’s page, click **…** in the left-hand menu, and click **Copy dataset ID** | `list` | Optional | | `--destination` | Output directory for downloaded data. | `export` | **Required** | | `--end` | ISO-8601 timestamp indicating the end of the interval. | `data add`, `data remove` | Optional | | `--binary-data-ids` | The binary data IDs of the files to perform an operation on. | `data add`, `data remove` | **Required** | @@ -389,12 +389,12 @@ viam data tag ids add --tags=new_tag_1,new_tag_2,new_tag_3 --binary-data-ids=123 To find your organization's ID, run `viam organization list` or navigate to your organization's **Settings** page in the [Viam app](https://app.viam.com/). Find **Organization ID** and click the copy icon. -To find the dataset ID of a given dataset, go to the [**DATASETS** subtab](https://app.viam.com/data/datasets) of the **DATA** tab on the Viam app and select a dataset. +To find the dataset ID of a given dataset, go to the [**DATASETS** subtab](https://app.viam.com/data/datasets) of the **DATA** tab and select a dataset. Click **...** in the left-hand menu and click **Copy dataset ID**. -To find a location ID, run `viam locations list` or visit your [fleet's page](https://app.viam.com/robots) in the Viam app and copy from **Location ID**. +To find a location ID, run `viam locations list` or visit your [fleet's page](https://app.viam.com/robots) and copy the **Location ID**. -To find the binary data ID of a given image, navigate to the [**DATA** tab in the Viam app](https://app.viam.com/data/view) and select your image. +To find the binary data ID of a given image, navigate to the [**DATA** tab](https://app.viam.com/data/view) and select your image. The **Binary Data ID** is shown under the **DETAILS** subtab that appears on the right. You cannot use filter arguments such as `--start` or `--end` with the `ids` argument. @@ -416,15 +416,15 @@ The following command adds `"new_tag_1"` and `"new_tag_2"` to all images of type viam data tag filter add --tags=new_tag_1,new_tag_2 --location-ids=012 --machine-name=cool-machine --org-ids=84842 --mime-types=image/jpeg,image/png ``` -To find the dataset ID of a given dataset, go to the [**DATASETS** subtab](https://app.viam.com/data/datasets) under the **DATA** tab on the Viam app and select a dataset. +To find the dataset ID of a given dataset, go to the [**DATASETS** subtab](https://app.viam.com/data/datasets) under the **DATA** tab and select a dataset. Click **...** in the left-hand menu and click **Copy dataset ID**. -To find a location ID, run `viam locations list` or visit your [fleet's page](https://app.viam.com/robots) in the Viam app and copy from **Location ID**. +To find a location ID, run `viam locations list` or visit your [fleet's page](https://app.viam.com/robots) and copy from **Location ID**. ###### Copy `export` command You can also have the filter parameters generated for you using the **Filters** pane of the **DATA** tab. -Navigate to the [**DATA** tab in the Viam app](https://app.viam.com/data/view), make your selections from the search parameters under the **Filters** pane (such as robot name, start and end time, or tags), and click the **Copy export command** button. +Navigate to the [**DATA** tab](https://app.viam.com/data/view), make your selections from the search parameters under the **Filters** pane (such as robot name, start and end time, or tags), and click the **Copy export command** button. A `viam data export` command string will be copied to your clipboard that includes the search parameters you selected. Removing the `viam data export` string, you can use the same filter parameters (such as `--start`, `--end`, etc) with your `viam data database add filter`, `viam data database remove filter`, or `viam data tag filter` commands, except you _must_ exclude the data type `binary` and `tabular` subcommands and `--destination` flags, which are specific to `viam data export`. @@ -827,8 +827,8 @@ This includes: - Generating stub files for a new module - Creating metadata for a {{< glossary_tooltip term_id="resource" text="modular resource" >}} -- Uploading a new module to the [Viam registry](https://app.viam.com/registry) -- Uploading a new version of your module to the [Viam registry](https://app.viam.com/registry) +- Uploading a new module to the [registry](https://app.viam.com/registry) +- Uploading a new version of your module to the [registry](https://app.viam.com/registry) - Updating an existing module in the Viam Registry - Updating a module's metadata file based on models it provides - Building your module for different architectures using cloud runners @@ -1477,7 +1477,7 @@ viam train list --org-id=123 --job-status=completed | Argument | Description | Applicable commands | Required? | | -------- | ----------- | ------------------- | --------- | -| `--dataset-id` | The ID of the dataset to train on. To find the dataset ID of a given dataset, go to the [**DATASETS** subtab](https://app.viam.com/data/datasets) of the **DATA** tab on the Viam app and select a dataset. Click **...** in the left-hand menu and click **Copy dataset ID**. | `submit managed`, `submit custom from-registry`, `submit custom with-upload` | **Required** | +| `--dataset-id` | The ID of the dataset to train on. To find the dataset ID of a given dataset, go to the [**DATASETS** subtab](https://app.viam.com/data/datasets) of the **DATA** tab and select a dataset. Click **...** in the left-hand menu and click **Copy dataset ID**. | `submit managed`, `submit custom from-registry`, `submit custom with-upload` | **Required** | | `--model-org-id` | The organization ID to train and save the ML model in. You can find your organization ID by running `viam organizations list` or by visiting your organization's **Settings** page in the [Viam app](https://app.viam.com/). | `submit managed`, `submit custom with-upload` | **Required** | | `--org-id` | The organization ID to train and save the ML model in or list training jobs from. You can find your organization ID by running `viam organizations list` or by visiting your organization's **Settings** page in the [Viam app](https://app.viam.com/). | `submit custom from-registry`, `list` | **Required** | | `--model-name` | The name of the ML model. | `submit managed`, `submit custom from-registry`, `submit custom with-upload` | **Required** | diff --git a/docs/dev/tools/common-errors.md b/docs/dev/tools/common-errors.md index 007705a277..77f53e3fc8 100644 --- a/docs/dev/tools/common-errors.md +++ b/docs/dev/tools/common-errors.md @@ -9,7 +9,7 @@ no_list: true # updated: "" # When the content was last entirely checked --- -This document lists common errors encountered when working with `viam-server` and the [Viam app](https://app.viam.com), and provides simple steps to resolve them. +This document lists common errors encountered when working with Viam, and provides steps to resolve them. While many common issues and their possible resolutions are presented here, this list is not comprehensive. To view logs or get a remote shell on a machine see [Troubleshoot](/manage/troubleshoot/troubleshoot/). @@ -119,14 +119,14 @@ sudo apt install jackd qjackctl libpulse-dev pulseaudio This error can be safely ignored if you do not intend to use audio on your machine. -## Common Viam App Errors +## Common errors using the web UI ### Failed to connect; retrying -**Description:** the [Viam app](https://app.viam.com) is unable to communicate with your machine, and will attempt to reconnect every few seconds until it is able to do so. -When a machine is disconnected, it will continue to run with its locally-cached current configuration, but will not be accessible for remote control or configuration through the Viam app. +**Description:** Viam is unable to communicate with your machine, and will attempt to reconnect every few seconds until it is able to do so. +When a machine is disconnected, it will continue to run with its locally-cached current configuration, but will not be accessible for remote control or configuration through the web UI. -**Solution:** Check the following to ensure your machine is accessible to the Viam app: +**Solution:** Check the following to ensure your machine is accessible to Viam: - Is the {{< glossary_tooltip term_id="board" text="board" >}} component connected to the internet? - Is the `ssh` service configured and running locally on the board? @@ -149,7 +149,7 @@ When a machine is disconnected, it will continue to run with its locally-cached **Description:** A [frame](/operate/reference/services/frame-system/) attribute may be malformed, and is preventing the parsing of the component's configuration. -**Solution:** Check the **CONFIGURE** tab for your machine in the [Viam app](https://app.viam.com) and look for a `frame` attribute, either in **Frame** or **JSON** mode. +**Solution:** Check the **CONFIGURE** tab for your machine and look for a `frame` attribute, either in **Frame** or **JSON** mode. If you see a `frame` attribute that you didn't create yourself, delete the whole `frame` object from the JSON config. In **JSON** mode, it will resemble the following: @@ -251,8 +251,3 @@ None at this time. ### Linux applications None at this time. - -### Browser plugins - -**Chrome plugin: Allow Right-Click** - This Chrome plugin interferes with the [Viam app](https://app.viam.com)'s ability to configure a service. -If you are experiencing issues with the **Create Service** pane in the Viam app, temporarily disable this plugin until you have saved your configuration in the Viam app. diff --git a/docs/manage/fleet/provision/end-user-setup.md b/docs/manage/fleet/provision/end-user-setup.md index ac33af742a..ad2ecc3eef 100644 --- a/docs/manage/fleet/provision/end-user-setup.md +++ b/docs/manage/fleet/provision/end-user-setup.md @@ -110,13 +110,13 @@ In the captive web portal, you will then be prompted to provide the network info **If prompted, provide a machine cloud credentials configuration** Depending on how the machine was set up so far, the captive portal may also require you to paste machine cloud credentials. -This is the JSON object which contains your machine part secret key and cloud app address, which your machine's `viam-server` instance needs to connect to the Viam app. +This is the JSON object which contains your machine part secret key and cloud app address, which your machine's `viam-server` instance needs to connect to Viam. -Navigate to the [Viam app](https://app.viam.com) and create a new machine. +On [Viam](https://app.viam.com), create a new machine. To copy your machine cloud credentials: -- Navigate to your machine's page on the [Viam app](https://app.viam.com). +- Navigate to your machine's page. - Select the part status dropdown to the right of your machine's name on the top of the page. {{}} - Click the copy icon next to **Machine cloud credentials**. @@ -142,4 +142,4 @@ You can now use your machine. If your machine needs to be able to connect to more than one WiFi network, you can add additional networks in the [`viam-agent` network configuration](/manage/reference/viam-agent/#network_configuration). You can also override other configuration details in the [`viam-agent` configuration](/manage/reference/viam-agent/#configuration). -To control your machine, you can navigate to its **CONTROL** tab in the [Viam app](https://app.viam.com). +To control your machine, you can navigate to its **CONTROL** tab. diff --git a/docs/manage/fleet/provision/setup.md b/docs/manage/fleet/provision/setup.md index edd1670f6b..8e97674856 100644 --- a/docs/manage/fleet/provision/setup.md +++ b/docs/manage/fleet/provision/setup.md @@ -537,11 +537,11 @@ For a guide you can give to end users for setting up their machine, see [Setup m 1. In the captive web portal, you will then be prompted to provide the network information for the machine. If there is no machine cloud credentials file at /etc/viam.json, the captive portal will also require you to paste a machine cloud credentials file. - This is the JSON object which contains your machine part secret key and cloud app address, which your machine's `viam-server` instance needs to connect to the Viam app. + This is the JSON object which contains your machine part secret key and cloud app address, which your machine's `viam-server` instance needs to connect to Viam. To copy a machine cloud credentials file: - - Navigate to your machine's page on the [Viam app](https://app.viam.com). + - Navigate to your machine's page. - Select the part status dropdown to the right of your machine's name on the top of the page. {{}} - Click the copy icon next to **Machine cloud credentials**. diff --git a/docs/manage/fleet/reuse-configuration.md b/docs/manage/fleet/reuse-configuration.md index ecd78e5a4d..4fa6c04b3d 100644 --- a/docs/manage/fleet/reuse-configuration.md +++ b/docs/manage/fleet/reuse-configuration.md @@ -430,11 +430,11 @@ Now, the fragment will be identical to the upstream fragment. ## Update a fragment You and your collaborators can edit a fragment at any time. -The Viam app automatically creates new versions of your fragment as you make changes. +Viam automatically creates new versions of your fragment as you make changes. Fragments can only be deleted if no machines are using them. -If you've already deployed the fragment to one or more machines, the Viam app updates the configuration on each deployed machine that uses that fragment. -You can see the number of machines using your fragment from the [fragments page](https://app.viam.com/fragments) in the Viam app. +If you've already deployed the fragment to one or more machines, Viam updates the configuration on each deployed machine that uses that fragment. +You can see the number of machines using your fragment from the [fragments page](https://app.viam.com/fragments). {{< alert title="Test updates first" color="caution" >}} We recommend testing updates to fragments on a small number of machines before deploying them to a larger fleet. diff --git a/docs/manage/fleet/system-settings.md b/docs/manage/fleet/system-settings.md index 6019961c5e..01c0d88486 100644 --- a/docs/manage/fleet/system-settings.md +++ b/docs/manage/fleet/system-settings.md @@ -49,7 +49,7 @@ This is primarily useful for a machine that moves between different networks, so To add networks, add or update the `additional_networks` field to the `agent` object and set `"turn_on_hotspot_if_wifi_has_no_internet": true`. {{< alert title="Note" color="note" >}} -If you are using the Viam app to add networks to a machine’s configuration, the machine will need to be connected to the internet to retrieve the configuration information containing the network credentials before it can use them. +If you are adding networks to a machine’s configuration, the machine will need to be connected to the internet to retrieve the configuration information containing the network credentials before it can use them. {{< /alert >}} The following configuration defines the connection information and credentials for two WiFi networks named `fallbackNetOne` and `fallbackNetTwo`. @@ -147,7 +147,7 @@ The configured values will take precedence over operating system defaults. ### Forward system logs to the cloud You can configure `viam-agent` to forward system logs from journald to the cloud for additional diagnostics information. -This allows you to view system logs from your machine alongside Viam's own logs in the Viam app. +This allows you to view system logs from your machine alongside Viam's own logs. To enable system log forwarding, add the `forward_system_logs` field to the `system_configuration` object. This field accepts a comma-separated list of service identifiers to include or exclude from forwarding. diff --git a/docs/manage/manage/access.md b/docs/manage/manage/access.md index d3506aca19..c3e94ef936 100644 --- a/docs/manage/manage/access.md +++ b/docs/manage/manage/access.md @@ -12,7 +12,7 @@ aliases: --- To collaborate with others on your machines, you can grant users permissions for individual machines or entire locations. -You can use the [Viam app](https://app.viam.com) or the [Viam mobile app](/manage/troubleshoot/teleoperate/default-interface/#viam-mobile-app) to grant or revoke organization owner or operator access to users or API keys. +You can use the [web UI](https://app.viam.com) or the [Viam mobile app](/manage/troubleshoot/teleoperate/default-interface/#viam-mobile-app) to grant or revoke organization owner or operator access to users or API keys. ## Grant access @@ -20,7 +20,7 @@ You can use the [Viam app](https://app.viam.com) or the [Viam mobile app](/manag You must have the **Owner** role to be able to grant permissions. -1. In the [Viam app](https://app.viam.com), click on the organization dropdown in the top navigation bar. +1. On Viam, click on the organization dropdown in the top navigation bar. 2. Click on **Settings**. 3. Find the **Members** section of the organization settings page. 4. Click on **Grant access**. @@ -44,7 +44,7 @@ You must have the **Owner** role to be able to grant permissions. You must have the **Owner** role to be able to share locations. -1. In the [Viam app](https://app.viam.com), click on the organization dropdown in the top navigation bar. +1. On Viam, click on the organization dropdown in the top navigation bar. 2. Select the organization that contains the location you want to share. 3. Navigate to the location you want to share. 4. Find the **Sharing** section of the location page. @@ -62,7 +62,7 @@ Once you share a _nested_ location (sub-location), its parent location cannot be You must have the **Owner** role to be able to limit permissions. -1. In the [Viam app](https://app.viam.com), click on the organization dropdown in the top navigation bar. +1. On Viam, click on the organization dropdown in the top navigation bar. 2. Click on **Settings**. 3. Find the **Members** section of the organization settings page. 4. Click on the user to open the access settings for the user. @@ -77,7 +77,7 @@ You must have the **Owner** role to be able to limit permissions. You must have the **Owner** role to be able to share locations. -1. In the [Viam app](https://app.viam.com), click on the organization dropdown in the top navigation bar. +1. On [Viam](https://app.viam.com), click on the organization dropdown in the top navigation bar. 2. Select the organization that contains the location you want to share. 3. Navigate to the location you want to share. 4. Find the **Sharing** section of the location page. @@ -86,7 +86,7 @@ You must have the **Owner** role to be able to share locations. ## Collaborate safely -When you or your collaborators change the configuration of a machine or a group of machines in the Viam app, `viam-server` automatically synchronizes the configuration and updates the running resources within 15 seconds. +When you or your collaborators change the configuration of a machine or a group of machines, `viam-server` automatically synchronizes the configuration and updates the running resources within 15 seconds. This means everyone who has access can change a fleet's configuration, even while your machines are running. You can see configuration changes made by yourself or by your collaborators by selecting **History** on the right side of your machine part's card on the **CONFIGURE** tab. diff --git a/docs/manage/manage/rbac.md b/docs/manage/manage/rbac.md index 0a53836a03..76d9b78f15 100644 --- a/docs/manage/manage/rbac.md +++ b/docs/manage/manage/rbac.md @@ -13,11 +13,11 @@ no_list: true # SME: Devin Hilly --- -Role-Based Access Control (RBAC) is a way to enforce security in the [Viam app](https://app.viam.com) by assigning organization members or API keys roles that confer permissions. +Role-Based Access Control (RBAC) is a way to enforce security by assigning organization members or API keys roles that confer permissions. You can assign an owner or an operator role for an {{< glossary_tooltip term_id="organization" text="organization" >}}, {{< glossary_tooltip term_id="location" text="location" >}}, or {{< glossary_tooltip term_id="machine" text="machine" >}}. - **Owner**: Can see and edit every tab on the machine page and perform equivalent operations from the APIs. -- **Operator**: Can see and use only the [**CONTROL**](/manage/troubleshoot/teleoperate/default-interface/#viam-app) tab and perform equivalent operations from the APIs. +- **Operator**: Can see and use only the [**CONTROL**](/manage/troubleshoot/teleoperate/default-interface/#web-ui) tab and perform equivalent operations from the APIs. Cannot see or edit the **CONFIGURE**, [**LOGS**](/manage/troubleshoot/troubleshoot/#check-logs), or **CONNECT** tabs. The following sections describe the permissions for each user role when it comes to managing machines, locations, organizations, fragments, and data. diff --git a/docs/manage/reference/accounts.md b/docs/manage/reference/accounts.md index 739c2026e4..eb54277eaa 100644 --- a/docs/manage/reference/accounts.md +++ b/docs/manage/reference/accounts.md @@ -11,13 +11,13 @@ aliases: - /cloud/account/ --- -The [Viam app](https://app.viam.com/) is a web UI for managing and building machines. -To use the app, you need a free account. +Viam has a [web UI](https://app.viam.com/) for managing and building machines. +To use Viam, you need a free account. Accounts can have [different permissions](/manage/manage/rbac/) to different groups of machines. ## Create account and log in -To get started on the Viam app, you must log in as an authorized user. +To get started, you must log in with a Viam account. Viam supports sign-up using Google, GitHub, Apple, and email. Navigate to [the main page](https://app.viam.com/). @@ -34,7 +34,7 @@ Once you have logged in, get started by [creating a machine](/operate/get-starte ## Sign out -To log out of the [Viam app](https://app.viam.com/), click on your profile icon in the upper right corner of your browser window. +To log out of [Viam](https://app.viam.com/), click on your profile icon in the upper right corner of your browser window. Click **Sign out** to sign out of accessing all organizations, locations, and machines your credentials manage. ## Delete account diff --git a/docs/manage/reference/billing.md b/docs/manage/reference/billing.md index f1c8f947cd..b495f8044f 100644 --- a/docs/manage/reference/billing.md +++ b/docs/manage/reference/billing.md @@ -83,6 +83,6 @@ You can expect a response within 1–3 business days. ## Access billing information programmatically -The [billing client API](/dev/reference/apis/billing-client/) supports the following methods to retrieve billing information from the [Viam app](https://app.viam.com): +The [billing client API](/dev/reference/apis/billing-client/) supports the following methods to retrieve billing information from [Viam](https://app.viam.com): {{< readfile "/static/include/services/apis/billing-client.md" >}} diff --git a/docs/manage/reference/organize.md b/docs/manage/reference/organize.md index 8d85499129..5b992fbbc5 100644 --- a/docs/manage/reference/organize.md +++ b/docs/manage/reference/organize.md @@ -21,9 +21,9 @@ aliases: - /fleet/organizations/ --- -Before you start connecting your devices to the Viam app, you need to decide how you want to group your machines. +Before you start connecting your devices to Viam, you need to decide how you want to group your machines. -In the Viam app, {{< glossary_tooltip term_id="machine" text="machines" >}} are grouped into _locations_, and locations are grouped into _organizations_: +On Viam, {{< glossary_tooltip term_id="machine" text="machines" >}} are grouped into _locations_, and locations are grouped into _organizations_: - Each location can represent either a physical location or some other conceptual grouping like "Production" and "Testing". - An organization is the highest level grouping, and often contains all the locations (and machines) of an entire company. @@ -42,7 +42,7 @@ You cannot move machines to other locations once created. {{% tablestep number=1 %}} **Create organizations** -1. Log into [Viam app](https://app.viam.com) in a web browser. +1. Log into [Viam](https://app.viam.com) in a web browser. 1. Click the dropdown in the upper-right corner of the **FLEET** page and use the **+** button to create a new organization. Name the organization and click **Create**. 1. Create additional organizations as needed. diff --git a/docs/manage/reference/viam-agent/_index.md b/docs/manage/reference/viam-agent/_index.md index 8f30bf5fa2..07c8113031 100644 --- a/docs/manage/reference/viam-agent/_index.md +++ b/docs/manage/reference/viam-agent/_index.md @@ -19,7 +19,7 @@ Among other things, `viam-agent`: - Installs, runs, and monitors `viam-server` or a custom build of `viam-server`. - Provides tooling for device provisioning and network management. - Provides automatic updates for `viam-server` and the agent itself. -- Allows control of deployed software versions through the Viam app. +- Allows control of deployed software versions. - Provides various operating system settings. {{< alert title="Support notice" color="note" >}} @@ -32,7 +32,7 @@ To provision machines using `viam-agent`, see [Provision Machines](/manage/fleet {{< table >}} {{% tablestep number=1 %}} -Add a new machine in the [Viam app](https://app.viam.com). +Add a new machine. {{% /tablestep %}} {{% tablestep number=2 %}} Navigate to the machine's **CONFIGURE** tab. @@ -95,7 +95,7 @@ Your machine credentials file must be at \etc\viam.json. {{< tabs >}} {{% tab name="Config Builder" %}} -1. Navigate to your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's page. 1. Navigate to the **CONFIGURE** tab. 1. Click on **machine settings**. 1. Edit and fill in the attributes as applicable. @@ -180,7 +180,7 @@ To ensure that updates only occur when your machines are ready, configure a [mai {{< alert title="Tip: Check versions of viam-agent and viam-server" color="tip" >}} -You can find the installed versions of viam-agent and viam-server on your machine's page in the [Viam app](https://app.viam.com). Click on the part status dropdown to the right of your machine's name on the top of the page. +You can find the installed versions of viam-agent and viam-server on your machine's page. Click on the part status dropdown to the right of your machine's name on the top of the page. {{< /alert >}} @@ -195,7 +195,7 @@ For more information on managing `viam-agent` see [Manage `viam-agent`](/manage/ ### Update or downgrade `viam-server` with `viam-agent` {{< alert title="Tip" color="tip" >}} -The current version of `viam-server` is displayed in the machine's part status dropdown to the right of your machine’s name on its page in the Viam app. +The current version of `viam-server` is displayed in the machine's part status dropdown to the right of your machine’s name on its page. {{< /alert >}} {{% hiddencontent %}} @@ -292,7 +292,7 @@ For more detailed instructions on what these settings do, see [Provisioning](/ma ## `additional_networks` -For an already-online device, you can configure new WiFi or wired networks in the machine's [`viam-agent` configuration](/manage/reference/viam-agent/#configuration) in the Viam app. +For an already-online device, you can configure new WiFi or wired networks in the machine's [`viam-agent` configuration](/manage/reference/viam-agent/#configuration). It's primarily useful for a machine that moves between different networks, so the machine can automatically connect when moved between locations. @@ -308,10 +308,10 @@ It's primarily useful for a machine that moves between different networks, so th | `ssid` | string | Optional | The WiFi network's SSID. Only needed for WiFi networks. Default: `""`. |

| | `type` | string | Optional | The type of the network. Required if a network is provided. Options: `"wifi"`, `"wired"`. | | -To add additional networks add them using the JSON editor for your device's config in the Viam app. +To add additional networks add them using the JSON editor for your device's config. {{< alert title="Important" color="note" >}} -Note that if you are using the Viam app to add networks to a machine's configuration, the machine will need to be connected to the internet to retrieve the configuration information containing the network credentials before it can use them. +Note that if you are adding networks to a machine's configuration, the machine will need to be connected to the internet to retrieve the configuration information containing the network credentials before it can use them. {{< /alert >}} During provisioning, `viam-agent` will try to connect to each specified network in order of `priority` from highest to lowest. @@ -336,16 +336,16 @@ These log messages include `viam-server` stops and starts, the status of `viam-a {{< tabs >}} {{% tab name="App UI" %}} -`viam-agent` writes log messages to the [Viam app](https://app.viam.com/). +`viam-agent` writes log messages to Viam. `viam-agent` only sends messages when your machine is online and connected to the internet. -If your machine is offline, log messages are queued and are sent to the Viam app once your machine reconnects to the internet. +If your machine is offline, log messages are queued and are sent to Viam once your machine reconnects to the internet. -Navigate to the **LOGS** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **LOGS** tab of your machine's page. Select from the **Levels** dropdown menu to filter the logs by severity level: -{{}} +{{}} {{% /tab %}} {{% tab name="Command line on Linux" %}} diff --git a/docs/manage/reference/viam-agent/manage-viam-agent.md b/docs/manage/reference/viam-agent/manage-viam-agent.md index 7a5ad60ed7..792b3503d5 100644 --- a/docs/manage/reference/viam-agent/manage-viam-agent.md +++ b/docs/manage/reference/viam-agent/manage-viam-agent.md @@ -55,7 +55,7 @@ aliases: {{< alert title="Caution" color="caution" >}} If you remove the machine cloud credentials file you will not be able to connect to your machine. -You can only restore this file if you have access to the machine configuration in the Viam app. +You can only restore this file if you have access to the machine configuration. {{< /alert >}} {{% /tab %}} diff --git a/docs/manage/software/control-logic.md b/docs/manage/software/control-logic.md index cf8127a98a..d59b25a01c 100644 --- a/docs/manage/software/control-logic.md +++ b/docs/manage/software/control-logic.md @@ -41,7 +41,7 @@ Then, [configure any hardware and software resources](/operate/get-started/suppo - Module name: Your choice, for example `my-control-logic` - Language: Your choice - Visibility: `Private` - - Namespace/Organization ID: In the [Viam app](https://app.viam.com), navigate to your organization settings through the menu in upper right corner of the page. + - Namespace/Organization ID: Navigate to your organization settings through the menu in upper right corner of the page. Find the **Public namespace** and copy that string. In the example snippets below, the namespace is `naomi`. - Resource to be added to the module: `Generic Component`. @@ -165,7 +165,7 @@ If you are not using GitHub or cloud build, see [Upload your module](/operate/ge ## Deploy your control logic -1. In the [Viam app](https://app.viam.com), navigate to the machine you want to deploy your control logic to. +1. Navigate to the machine you want to deploy your control logic to. 1. Go to the **CONFIGURE** tab. 1. Click the **+** button. 1. Click **Component or service** and select your control logic component. @@ -190,9 +190,9 @@ await control_logic.do_command({"action": "start"}) await control_logic.do_command({"action": "stop"}) ``` -## Start and stop your control logic with the Viam app +## Start and stop your control logic from the web UI -You can start and stop your control logic from your machine's **CONTROL** tab in the Viam app: +You can start and stop your control logic from your machine's **CONTROL** tab: {{}}
diff --git a/docs/manage/software/deploy-software.md b/docs/manage/software/deploy-software.md index 90039d1086..46b1d56a8c 100644 --- a/docs/manage/software/deploy-software.md +++ b/docs/manage/software/deploy-software.md @@ -25,7 +25,7 @@ For microcontrollers, see [Over-the-air firmware updates](/operate/get-started/s ## Prerequisites Start by [setting up one machine](/operate/get-started/setup/). -Once your machine is connected to the Viam app, return to this page. +Once your machine is connected to Viam, return to this page. ## Create a fragment diff --git a/docs/manage/troubleshoot/alert.md b/docs/manage/troubleshoot/alert.md index 984ff1d04a..5723a2eed0 100644 --- a/docs/manage/troubleshoot/alert.md +++ b/docs/manage/troubleshoot/alert.md @@ -38,7 +38,7 @@ Additionally, you can receive continuous alerts at a specified interval indicati ### Prerequisites -{{% expand "A running machine connected to the Viam app." %}} +{{% expand "A running machine connected to Viam." %}} {{% snippet "setup.md" %}} @@ -199,7 +199,7 @@ Use **Builder mode** to create a trigger: {{< table >}} {{< tablestep number=1 >}} -Go to the **CONFIGURE** tab of your machine on the [Viam app](https://app.viam.com). +Go to the **CONFIGURE** tab of your machine. Click the **+** (Create) button in the left side menu and select **Trigger**. {{}} @@ -246,14 +246,14 @@ To add a notification method, add an entry to the **Webhooks** or **Email** sub- To add an email notification: 1. Click **Add Email**. - {{}} + {{}} 1. Add the email you wish to be notified whenever this trigger is triggered. 1. Configure the time between notifications. To add a webhook notification: 1. Click **Add Webhook**. - {{}} + {{}} 1. Add the URL of your cloud function. 1. Configure the time between notifications. 1. Write your cloud function to process the [webhook](/data-ai/reference/triggers-configuration/#webhook-attributes). @@ -346,7 +346,7 @@ Click the **Save** button in the top right corner of the page to save your confi {{< tabs >}} {{% tab name="Builder mode" %}} -1. Go to the **CONFIGURE** tab of your machine on the [Viam app](https://app.viam.com). +1. Go to the **CONFIGURE** tab of your machine. Click the **+** (Create) button in the left side menu and select **Trigger**. {{}} @@ -360,14 +360,14 @@ Click the **Save** button in the top right corner of the page to save your confi To add an email notification: 1. Click **Add Email**. - {{}} + {{}} 1. Add the email you wish to be notified whenever this trigger is triggered. 1. Configure the time between notifications. To add a webhook notification: 1. Click **Add Webhook**. - {{}} + {{}} 1. Add the URL of your cloud function. 1. Configure the time between notifications. 1. Write your cloud function to process the [webhook attributes](/data-ai/reference/triggers-configuration/#webhook-attributes). @@ -406,7 +406,7 @@ For more information about triggers, see [Trigger configuration](/data-ai/refere {{< tabs >}} {{% tab name="Builder mode" %}} -1. Go to the **CONFIGURE** tab of your machine on the [Viam app](https://app.viam.com). +1. Go to the **CONFIGURE** tab of your machine. Click the **+** (Create) button in the left side menu and select **Trigger**. {{}} diff --git a/docs/manage/troubleshoot/monitor.md b/docs/manage/troubleshoot/monitor.md index 938164375e..32b4dcf533 100644 --- a/docs/manage/troubleshoot/monitor.md +++ b/docs/manage/troubleshoot/monitor.md @@ -36,7 +36,7 @@ Once you connect to the `viam-server` instance on a part, this display includes {{% tablestep number=3 %}} **Test your machines remotely** -On a machine's [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app), you can remotely operate the machine and test its resources. +On a machine's [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui), you can remotely operate the machine and test its resources. {{}} diff --git a/docs/manage/troubleshoot/teleoperate/custom-interface.md b/docs/manage/troubleshoot/teleoperate/custom-interface.md index 8a402de02a..9e72566d6d 100644 --- a/docs/manage/troubleshoot/teleoperate/custom-interface.md +++ b/docs/manage/troubleshoot/teleoperate/custom-interface.md @@ -32,9 +32,9 @@ See [configure a machine](/operate/get-started/supported-hardware/) for more inf {{< table >}} {{% tablestep number=1 %}} -**Create a workspace in the Viam app** +**Create a workspace** -Log in to the [Viam app](https://app.viam.com/). +Log into [Viam](https://app.viam.com/). Navigate to the **FLEET** page's **TELEOP** tab. Create a workspace by clicking **+ Create workspace**. diff --git a/docs/manage/troubleshoot/teleoperate/default-interface.md b/docs/manage/troubleshoot/teleoperate/default-interface.md index 03966caee1..90f300b86d 100644 --- a/docs/manage/troubleshoot/teleoperate/default-interface.md +++ b/docs/manage/troubleshoot/teleoperate/default-interface.md @@ -4,7 +4,7 @@ linkTitle: "Default interface" titleMustBeLong: true weight: 30 type: "docs" -description: "Use the Viam app control tab or the Viam mobile app to monitor and remotely operate your machines." +description: "Use the control tab or the Viam mobile app to monitor and remotely operate your machines." tags: ["teleop", "fleet management", "control", "app"] languages: [] viamresources: ["sensor", "camera", "movement sensor"] @@ -22,7 +22,7 @@ aliases: You can remotely control, test, and operate any configured machine using the default control interface -## Viam app +## Web UI The **CONTROL** tab provides a control interface for each component and service that you have configured for your machine. @@ -37,7 +37,7 @@ You can also switch between different machine parts directly from the **CONTROL* {{}} -In addition to the Viam app, the [Viam mobile app](/manage/troubleshoot/teleoperate/default-interface/#viam-mobile-app) also allows you to test, monitor and remotely operate machines in your fleet. +Like the web UI, the [Viam mobile app](/manage/troubleshoot/teleoperate/default-interface/#viam-mobile-app) also allows you to test, monitor and remotely operate machines in your fleet. For example, you can view live camera feeds, adjust components' runtime parameters, and switch between controllable components. diff --git a/docs/manage/troubleshoot/troubleshoot.md b/docs/manage/troubleshoot/troubleshoot.md index 844acf813a..e615700c36 100644 --- a/docs/manage/troubleshoot/troubleshoot.md +++ b/docs/manage/troubleshoot/troubleshoot.md @@ -21,7 +21,7 @@ For common errors see [Common Errors](/dev/tools/common-errors/). ### Machine shows as offline -If your machine shows as offline in the Viam app, restart `viam-server` by running the command to start `viam-server` and adding the `-debug` option. +If your machine shows as offline on Viam, restart `viam-server` by running the command to start `viam-server` and adding the `-debug` option. To do this, you will need to know if you installed `viam-server` with `viam-agent` (most common) or manually. You can check this by seeing if `viam-agent` is running. @@ -96,7 +96,7 @@ If not follow the steps for the standalone version. viam-server -config ~/Downloads/viam.json -debug ``` - You can check the exact command by consulting the setup instructions for your machine in the Viam app. + You can check the exact command by consulting the setup instructions for your machine. {{% /tab %}} {{< /tabs >}} @@ -105,7 +105,7 @@ If not follow the steps for the standalone version. {{< /tabs >}} {{< alert title="Note" color="note" >}} -Be aware that while your machine is not able to connect to the Viam app, any changes to the machine's configuration that you make in the Viam app will not reach your machine. +Be aware that while your machine is not able to connect to Viam, any changes to the machine's configuration that you make in the web UI will not reach your machine. {{< /alert >}} ### Check for errors on the CONFIGURE page @@ -116,7 +116,7 @@ The expanded panel shows you errors produced by that resource. ### Check logs on the LOGS tab -If your machine shows as online in the Viam app, go to the **LOGS** tab and check for errors or other information relevant to the issue. +If your machine shows as online, go to the **LOGS** tab and check for errors or other information relevant to the issue. {{}} @@ -184,7 +184,7 @@ The process will dump a stack trace, visible in the `viam-server` logs, that sho To verify if a module has successfully started, check the machine logs for specific startup messages: -1. Go to your machine's **LOGS** tab in the [Viam app](https://app.viam.com). +1. Go to your machine's **LOGS** tab. 1. Look for log messages related to your module. 1. You can filter the logs by typing the module name in the search box to focus only on messages related to your specific module. @@ -245,7 +245,7 @@ To remotely access your machine from your terminal: ## Restart your machine -1. Navigate to your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's page. 1. Select the part status dropdown to the right of your machine's name on the top of the page. {{}} 1. If you installed `viam-server` with `viam-agent` you will see a **Restart** button. Click it. @@ -256,7 +256,7 @@ It takes a few minutes for `viam-server` to shut down and restart. ## Revert to earlier configuration -The Viam app keeps a record of your configuration changes, allowing you to revert to earlier configurations if needed. +Viam keeps a record of your configuration changes, allowing you to revert to earlier configurations if needed. To see the history of the configuration of a machine part, click on **History** on the **CONFIGURE** tab. {{}} diff --git a/docs/operate/control/api-keys.md b/docs/operate/control/api-keys.md index 9d4c34f82f..d89bfc181d 100644 --- a/docs/operate/control/api-keys.md +++ b/docs/operate/control/api-keys.md @@ -42,9 +42,9 @@ Click **Choose** to confirm your selection. ## Rotate an API key Viam supports flexible key rotation with up to two keys in use at one time. -If you ever need to rotate an API key you can use the [Viam app](https://app.viam.com/): +If you ever need to rotate an API key you can use the web UI: -1. In the [Viam app](https://app.viam.com/), click on the organization dropdown in the top navigation bar. +1. On [Viam](https://app.viam.com/), click on the organization dropdown in the top navigation bar. 1. Click on **Settings and invites**. 1. Click the **Generate Key** button on the organization setting page to generate a new key. 1. Update all code and integrations that use the key. diff --git a/docs/operate/control/headless-app.md b/docs/operate/control/headless-app.md index 20280a2788..232972b816 100644 --- a/docs/operate/control/headless-app.md +++ b/docs/operate/control/headless-app.md @@ -88,7 +88,7 @@ Follow the [instructions on the GitHub repository](https://github.com/viamroboti ## Authenticate -You can find sample connection code on each [machine's](/operate/get-started/setup/) **CONNECT** tab in the [Viam app](https://app.viam.com). +You can find sample connection code on each [machine's](/operate/get-started/setup/) **CONNECT** tab. Select your preferred **Language** to display a code snippet, with connection code as well as some calls to the APIs of the resources you've configured on your machine. You can use the toggle to include the machine API key and API key ID, though we strongly recommend storing your API keys in environment variables to reduce the risk of accidentally sharing your API key and granting access to your machines. @@ -122,7 +122,7 @@ async def connect(): # API key ID api_key_id='' ) - return await RobotClient.at_address('ADDRESS FROM THE VIAM APP', opts) + return await RobotClient.at_address('MACHINE ADDRESS', opts) async def moveInSquare(base): @@ -178,7 +178,7 @@ func main() { logger := logging.NewLogger("client") machine, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(utils.WithEntityCredentials( // Replace "" (including brackets) with your machine's API key ID @@ -236,7 +236,7 @@ void move_in_square(std::shared_ptr base) { } int main() { - std::string host("ADDRESS FROM THE VIAM APP"); + std::string host("MACHINE ADDRESS"); DialOptions dial_opts; // Replace "" with your machine's api key ID dial_opts.set_entity(std::string("")); @@ -295,7 +295,7 @@ robot_api_key = os.getenv('ROBOT_API_KEY') or '' robot_api_key_id = os.getenv('ROBOT_API_KEY_ID') or '' robot_address = os.getenv('ROBOT_ADDRESS') or '' -# Define the sensor and plug names from the Viam app CONFIGURE tab +# Define the sensor and plug names on the CONFIGURE tab sensor_name = os.getenv("SENSOR_NAME", "") plug_name = os.getenv("PLUG_NAME", "") @@ -384,11 +384,11 @@ Read and filter a machine's logs to view updates from your machine's `viam-serve {{< tabs >}} {{% tab name="App UI" %}} -Navigate to the **LOGS** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **LOGS** tab of your machine's page. Select from the **Levels** dropdown menu to filter the logs by severity level: -![Filtering by log level of info in the logs tab of the Viam app.](/build/program/sdks/log-level-info.png) +![Filtering by log level of info in the logs tab.](/build/program/sdks/log-level-info.png) {{% /tab %}} {{% tab name="Command line" %}} diff --git a/docs/operate/control/mobile-app.md b/docs/operate/control/mobile-app.md index fb48c8004d..94e0b83c29 100644 --- a/docs/operate/control/mobile-app.md +++ b/docs/operate/control/mobile-app.md @@ -24,7 +24,7 @@ flutter pub add viam_sdk ## Connect to your machine -You can find sample connection code on each [machine's](/operate/get-started/setup/) **CONNECT** tab in the [Viam app](https://app.viam.com). +You can find sample connection code on each [machine's](/operate/get-started/setup/) **CONNECT** tab. Select **Flutter** to display a code snippet with connection code as well as some calls to the APIs of the resources you've configured on your machine. You can use the toggle to include the machine API key and API key ID, though we strongly recommend storing your API keys in environment variables to reduce the risk of accidentally sharing your API key and granting access to your machines. diff --git a/docs/operate/control/web-app.md b/docs/operate/control/web-app.md index 602a588420..8553d5ca3f 100644 --- a/docs/operate/control/web-app.md +++ b/docs/operate/control/web-app.md @@ -23,7 +23,7 @@ npm install @viamrobotics/sdk ## Connect to your machine -You can find sample connection code on each [machine's](/operate/get-started/setup/) **CONNECT** tab in the [Viam app](https://app.viam.com). +You can find sample connection code on each [machine's](/operate/get-started/setup/) **CONNECT** tab. Select **TypeScript** to display a code snippet, with connection code as well as some calls to the APIs of the resources you've configured on your machine. You can use the toggle to include the machine API key and API key ID, though we strongly recommend storing your API keys in environment variables to reduce the risk of accidentally sharing your API key and granting access to your machines. diff --git a/docs/operate/get-started/basics.md b/docs/operate/get-started/basics.md index e293548e98..e23d705a70 100644 --- a/docs/operate/get-started/basics.md +++ b/docs/operate/get-started/basics.md @@ -15,16 +15,16 @@ carouselscript: true Viam is a software platform for building smart applications for the physical world. -Viam consists of: +The Viam platform consists of: - An open-source binary called `viam-server` that runs on your machine, managing your local hardware, software, and data, and connecting your device to Viam's cloud. -- A cloud app called the [Viam app](https://app.viam.com) that you can use to configure and manage your machines and data. +- A [cloud app](https://app.viam.com) that you can use to configure and manage your machines and data. - Simple APIs for common types of hardware (for example, cameras, sensors, and motors), and software services (such as computer vision). - A registry of modules that implement the hardware and software APIs. This includes support for many popular hardware models. - SDKs for many programming languages that you can use to interact with your machines. -`viam-server` connects your machine to the Viam app and to SDK clients. +`viam-server` connects your machine to Viam and to SDK clients. See [Viam architecture](/operate/reference/architecture/) for details on how Viam works. @@ -34,7 +34,7 @@ A _machine_ is a computer (often a single-board computer like a Raspberry Pi or You can think of one machine as representing one device, such as an Intel RealSense camera connected to a Raspberry Pi. Each machine runs an instance of `viam-server`. -When you create a new machine in the Viam app, Viam generates a unique set of credentials for that machine that connect the physical machine to its instance in the Viam app. +When you create a new machine on Viam, Viam generates a unique set of credentials for that machine that connect the physical machine to its instance in Viam. ## What platforms does Viam run on? @@ -81,9 +81,9 @@ Any hardware that is not already supported by a Viam module can be added into Vi ## How do I get started? -1. To start, [set up a computer or SBC](/operate/get-started/setup/) or [set up an ESP32](/operate/get-started/setup-micro/) and connect it to the Viam app. +1. To start, [set up a computer or SBC](/operate/get-started/setup/) or [set up an ESP32](/operate/get-started/setup-micro/) and connect it to Viam. -1. Next, you'll configure hardware and software on your machine in the Viam app. +1. Next, you'll configure hardware and software for your machine. You can test it with the UI in the app. 1. From there, you have many options including: diff --git a/docs/operate/get-started/other-hardware/cpp-module.md b/docs/operate/get-started/other-hardware/cpp-module.md index e8b59de2fa..79b61eb7be 100644 --- a/docs/operate/get-started/other-hardware/cpp-module.md +++ b/docs/operate/get-started/other-hardware/cpp-module.md @@ -17,7 +17,7 @@ draft: true # Take out Go and Python, and check updatedness before un-drafting. --- Viam provides built-in support for a variety of different {{< glossary_tooltip term_id="component" text="components" >}} and {{< glossary_tooltip term_id="service" text="services" >}}, as well as a registry full of {{< glossary_tooltip term_id="module" text="modules" >}} created by other users. -If no [existing modules](/operate/get-started/supported-hardware/) support your specific use case, you can write your own custom modular {{< glossary_tooltip term_id="resource" text="resources" >}} by creating a module, and either upload it to the [Viam Registry](https://app.viam.com/registry) to share it publicly, or deploy it to your machine as a local module without uploading it to the registry. +If no [existing modules](/operate/get-started/supported-hardware/) support your specific use case, you can write your own custom modular {{< glossary_tooltip term_id="resource" text="resources" >}} by creating a module, and either upload it to the [registry](https://app.viam.com/registry) to share it publicly, or deploy it to your machine as a local module without uploading it to the registry. Follow the instructions below to learn how to write a new module using your preferred language and its corresponding [Viam SDK](/dev/reference/sdks/), and then deploy it to your machines. @@ -128,7 +128,7 @@ A resource model is identified by a unique name, called the {{< glossary_tooltip - `namespace` is the [namespace of your organization](/operate/reference/naming-modules/#create-a-namespace-for-your-organization). - For example, if your organization uses the `acme` namespace, your models must all begin with `acme`, like `acme:module-name:mybase`. - If you do not intend to [upload your module](#upload-your-module-to-the-modular-resource-registry) to the [Viam Registry](https://app.viam.com/registry), you do not need to use your organization's namespace as your model's namespace. + If you do not intend to [upload your module](#upload-your-module-to-the-modular-resource-registry) to the [registry](https://app.viam.com/registry), you do not need to use your organization's namespace as your model's namespace. - The `viam` namespace is reserved for models provided by Viam. - `module-name` is the name of your module. Your `module-name` should describe the common functionality provided across the model or models provided by that module. @@ -185,7 +185,7 @@ For more Python module examples: | ------ | ---------- | ----------- | | [agilex-limo](https://app.viam.com/module/viam/agilex-limo) | [viamlabs/agilex](https://github.com/viam-labs/agilex/) | Extends the built-in [base API](/dev/reference/apis/components/base/) to support the Agilex Limo base. | | [rplidar](https://app.viam.com/module/viam/rplidar) | [viamrobotics/rplidar](https://github.com/viamrobotics/rplidar) | Extends the built-in [camera API](/dev/reference/apis/components/camera/) to support several models of the SLAMTEC RPlidar. | -| [filtered-camera](https://app.viam.com/module/erh/filtered-camera) | [erh/filtered_camera](https://github.com/erh/filtered_camera) | Extends the built-in [camera API](/dev/reference/apis/components/camera/) to enable filtering captured images by comparing to a defined ML model, and only syncing matching images to the Viam app. See the [filtered-camera guide](/data-ai/capture-data/filter-before-sync/) for more information. | +| [filtered-camera](https://app.viam.com/module/erh/filtered-camera) | [erh/filtered_camera](https://github.com/erh/filtered_camera) | Extends the built-in [camera API](/dev/reference/apis/components/camera/) to enable filtering captured images by comparing to a defined ML model, and only syncing matching images to Viam. See the [filtered-camera guide](/data-ai/capture-data/filter-before-sync/) for more information. | For more Go module examples: @@ -204,7 +204,7 @@ For more Go module examples: {{% /tab %}} {{% /tabs %}} -Explore the full list of available modules in the [Viam Registry](https://app.viam.com/registry). +Explore the full list of available modules in the [registry](https://app.viam.com/registry). {{< /expand >}} Follow the instructions below to define the capabilities provided by your model, for the language you are using to write your module code: @@ -1092,12 +1092,12 @@ int main(int argc, char** argv) { #### (Optional) Configure logging -If desired, you can configure your module to output log messages to the [Viam app](https://app.viam.com/). -Log messages sent to the Viam app appear under the [**LOGS** tab](/manage/troubleshoot/troubleshoot/#check-logs) for your machine in an easily-parsable and searchable manner. +If desired, you can configure your module to output log messages. +Log messages appear on the [**LOGS** tab](/manage/troubleshoot/troubleshoot/#check-logs) for your machine in an easily-parsable and searchable manner. Log messages generated when your machine is offline are queued, and sent together when your machine connects to the internet once more. -Add the following code to your module code to enable logging to the Viam app, depending on the language you using to code your module. You can log in this fashion from the model definition file or files, the entry point (main program) file, or both, depending on your logging needs: +Add the following code to your module code to enable logging to Viam, depending on the language you using to code your module. You can log in this fashion from the model definition file or files, the entry point (main program) file, or both, depending on your logging needs: {{% alert title="Tip" color="tip" %}} The example code shown above under [Write your new resource model definition](#write-your-new-resource-model-definition) includes the requisite logging code already. @@ -1106,7 +1106,7 @@ The example code shown above under [Write your new resource model definition](#w {{< tabs name="Configure logging">}} {{% tab name="Python"%}} -To enable your Python module to write resource-level log messages to the Viam app, add the following lines to your code: +To enable your Python module to write resource-level log messages to Viam, add the following lines to your code: ```python {class="line-numbers linkable-line-numbers"} # Within some method, log information: @@ -1150,7 +1150,7 @@ LOGGER.critical("critical info") {{% /tab %}} {{% tab name="Go"%}} -To enable your Go module to write log messages to the Viam app, add the following lines to your code: +To enable your Go module to write log messages to Viam, add the following lines to your code: ```go {class="line-numbers linkable-line-numbers"} // In your import() block, import the logging package: @@ -1192,7 +1192,7 @@ fn (c *component) someFunction(ctx context.Context, a int) { {{% /tab %}} {{% tab name="C++" %}} -`viam-server` automatically gathers all output sent to the standard output (`STDOUT`) in your C++ code and forwards it to the Viam app when a network connection is available. +`viam-server` automatically gathers all output sent to the standard output (`STDOUT`) in your C++ code and forwards it to Viam when a network connection is available. We recommend that you use a C++ logging library to assist with log message format and creation, such as the [Boost trivial logger](https://www.boost.org/doc/libs/1_84_0/libs/log/doc/html/log/tutorial/trivial_filtering.html): @@ -1491,7 +1491,7 @@ _Add instructions here for any requirements._ ## Configure your -Navigate to the **CONFIGURE** tab of your [machine](https://docs.viam.com/fleet/machines/) in the [Viam app](https://app.viam.com/). +Navigate to your machine's **CONFIGURE** tab. [Add to your machine](/operate/get-started/supported-hardware/#configure-hardware-on-your-machine). On the new component panel, copy and paste the following attribute template into your ’s attributes field: @@ -1544,9 +1544,9 @@ This driver supports differential, ackermann, and omni directional steering mode ## Configure your `agilex-limo` base > [!NOTE] -> Before configuring your base, you must add a machine in the [Viam app](https://app.viam.com). +> Before configuring your base, you must add a machine on [Viam](https://app.viam.com). -Navigate to the **CONFIGURE** tab of your machine’s page in the [Viam app](https://app.viam.com/). +Navigate to the **CONFIGURE** tab of your machine’s page. [Add `base` / `agilex-limo` to your machine](/operate/get-started/supported-hardware/#configure-hardware-on-your-machine). On the new component panel, copy and paste the following attribute template into your base’s attributes field: @@ -1616,7 +1616,7 @@ If you would like to test your module locally against a target platform other th To use a local module on your machine, first make sure any physical hardware implemented in your module is connected to your machine's computer. Add the module to your machine's config, then add the component or service it implements: -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** (Create) icon next to your machine part in the left-hand menu and select **Local module**, then **Local module**. @@ -1662,9 +1662,9 @@ See [Update and manage modules you created](/operate/get-started/other-hardware/ You have now created a module, and are ready to deploy it to a fleet of machines. There are two ways to deploy a module: -- Through the Viam Registry: Once you have uploaded your new module to the Viam Registry, [add the module to one or more machines in the Viam app](/operate/get-started/supported-hardware/#configure-hardware-on-your-machine). +- Through the Viam Registry: Once you have uploaded your new module to the Viam Registry, [add the module to one or more machines](/operate/get-started/supported-hardware/#configure-hardware-on-your-machine). You can also choose to configure [automated uploads for new module versions](/operate/get-started/other-hardware/manage-modules/#update-automatically) through a continuous integration (CI) workflow, using a GitHub Action if desired, greatly simplifying how you push changes to your module to the registry as you make them. -- As a local module (without uploading it to the Viam app), as you did in the [Test your module locally step above](#test-your-module-locally). +- As a local module (without uploading it to Viam), as you did in the [Test your module locally step above](#test-your-module-locally). This is a great way to test, but if you'd like to use the module on more machines it's easiest to add it to the registry either publicly or privately. Often, developers first test their new module by deploying it as a local module to a test machine. diff --git a/docs/operate/get-started/other-hardware/create-module/_index.md b/docs/operate/get-started/other-hardware/create-module/_index.md index def0551466..458c571c82 100644 --- a/docs/operate/get-started/other-hardware/create-module/_index.md +++ b/docs/operate/get-started/other-hardware/create-module/_index.md @@ -123,11 +123,11 @@ Authenticate your CLI session with Viam using one of the following options: | Module name | The module name describes the module or the family of devices it supports. It is generally the same as the name of the GitHub repo where you will put your module code. | | Language | The language for the module. | | Visibility | Choose `Private` to share only with your organization, or `Public` to share publicly with all organizations. If you are testing, choose `Private`. | -| Namespace/Organization ID | In the [Viam app](https://app.viam.com), navigate to your organization settings through the menu in upper right corner of the page. Find the **Public namespace** (or create one if you haven't already) and copy that string. If you use the organization ID, you must still create a public namespace first. | +| Namespace/Organization ID | Navigate to your organization settings through the menu in upper right corner of the page. Find the **Public namespace** (or create one if you haven't already) and copy that string. If you use the organization ID, you must still create a public namespace first. | | Resource to add to the module (API) | The [component API](/dev/reference/apis/#component-apis) your module will implement. See [How to design your module](./#how-to-design-your-module) for more information. | | Model name | Name your component model based on what it supports, for example, if it supports a model of ultrasonic sensor called "XYZ Sensor 1234" you could call your model `xyz_1234` or similar. Must be all-lowercase and use only alphanumeric characters (`a-z` and `0-9`), hyphens (`-`), and underscores (`_`). | | Enable cloud build | If you select `Yes` (recommended) and push the generated files (including the .github folder) and create a release of the format `vX.X.X`, the module will build and upload to the Viam registry and be available for all Viam-supported architectures without you needing to build for each architecture. `Yes` also makes it easier to [upload](#upload-your-module) using PyInstaller by creating a build entrypoint script. You can select `No` if you will always build the module yourself before uploading it. | -| Register module | Select `Yes` unless you are creating a local-only module for testing purposes and do not intend to upload it. Registering a module makes its name and metadata appear in the Viam app registry page; uploading the actual code that powers the module is a separate step. If you decline to register the module at this point, you can run [`viam module create`](/dev/tools/cli/#module) to register it later. | +| Register module | Select `Yes` unless you are creating a local-only module for testing purposes and do not intend to upload it. Registering a module makes its name and metadata appear in the registry; uploading the actual code that powers the module is a separate step. If you decline to register the module at this point, you can run [`viam module create`](/dev/tools/cli/#module) to register it later. | {{< /expand >}} @@ -298,7 +298,7 @@ if __name__ == "__main__": {{< /expand >}} -You can find more examples by looking at the source code GitHub repos linked from each module in the [Viam Registry](https://app.viam.com/registry). +You can find more examples by looking at the source code GitHub repos linked from each module in the [registry](https://app.viam.com/registry). {{% /tablestep %}} {{< tablestep number=5 >}} @@ -545,7 +545,7 @@ func (s *helloWorldHelloCamera) Close(context.Context) error { {{< /expand >}} -You can find more examples by looking at the source code GitHub repos linked from each module in the [Viam Registry](https://app.viam.com/registry). +You can find more examples by looking at the source code GitHub repos linked from each module in the [registry](https://app.viam.com/registry). {{% /tablestep %}} {{< tablestep number=7 >}} **Add logging** messages as desired. @@ -577,10 +577,10 @@ In order to see debug logs when using your modular resource, you'll need to run ## Test your module locally -It's a good idea to test your module locally before uploading it to the [Viam Registry](https://app.viam.com/registry). -You'll configure it through the Viam app, but the configured module will consist of local files. +It's a good idea to test your module locally before uploading it to the [registry](https://app.viam.com/registry). +You can configure it in the web UI using the local files on your machine. -{{% expand "Prerequisite: A running machine connected to the Viam app." %}} +{{% expand "Prerequisite: A running machine connected to Viam." %}} You can write a module without a machine, but to test your module you'll need a [machine](/operate/get-started/setup/). Make sure to physically connect your sensor to your machine's computer to prepare your machine for testing. @@ -709,7 +709,7 @@ For more information, run the command with the `-h` flag or see the [CLI documen `Error: Could not connect to machine part: context deadline exceeded; context deadline exceeded; mDNS query failed to find a candidate` -- Try specifying the `--part-id`, which you can find by clicking the **Live** indicator on your machine's page in the Viam app and clicking **Part ID**. +- Try specifying the `--part-id`, which you can find by clicking the **Live** indicator on your machine's page and clicking **Part ID**. `Error: Rpc error: code = Unknown desc = stat /root/.viam/packages-local: no such file or directory` @@ -728,7 +728,7 @@ Run the following command to rebuild your module: viam module build local ``` -Then restart it in your machine's **CONFIGURE** tab in the Viam app. +Then restart it in your machine's **CONFIGURE** tab. In upper right corner of the module's card, click the **...** menu, then click **Restart**. {{}} @@ -740,7 +740,7 @@ When you run `viam module reload`, the module will be added to your device autom {{% /tab %}} {{% tab name="Python: venv" %}} -On your machine's **CONFIGURE** tab in the [Viam app](https://app.viam.com), click the **+** (create) icon in the left-hand menu. +On your machine's **CONFIGURE** tab, click the **+** (create) icon in the left-hand menu. Select **Local module**, then **Local module**. Enter the absolute path to the run.sh script, for example `/home/jessamy/my-module/run.sh` on Linux, or `/Users/jessamy/my-python-sensor-module/run.sh` on macOS. @@ -751,7 +751,7 @@ Click **Create**. {{% /tab %}} {{% tab name="Go" %}} -On your machine's **CONFIGURE** tab in the [Viam app](https://app.viam.com), click the **+** (create) icon in the left-hand menu. +On your machine's **CONFIGURE** tab, click the **+** (create) icon in the left-hand menu. Select **Local module**, then **Local module**. Enter the absolute path to the /bin/<module-name> executable, for example `/home/jessamy/my-go-module/bin/mymodule` on Linux, or `/Users/jessamy/my-go-module/bin/mymodule` on macOS. @@ -812,7 +812,7 @@ viam module reload {{% tab name="Python: venv" %}} Since you are using run.sh instead of a built executable, you do not need to rebuild anything as you iterate. -Just save your code changes, then restart the module in your machine's **CONFIGURE** tab in the Viam app: +Just save your code changes, then restart the module in your machine's **CONFIGURE** tab: In upper right corner of the module's card, click **...** menu, then click **Restart**. {{}} @@ -826,7 +826,7 @@ Run the following command to rebuild your module: viam module build local ``` -Then restart it in your machine's **CONFIGURE** tab in the Viam app. +Then restart it in your machine's **CONFIGURE** tab. In upper right corner of the module's card, click **...** menu, then click **Restart**. {{}} @@ -841,7 +841,7 @@ See [Using the `build` subcommand](/dev/tools/cli/#using-the-build-subcommand) f ## Upload your module -Once you are done testing locally, you can upload your module to the [Viam Registry](https://app.viam.com/registry) and make it available either to all machines in your organization, or to the general public. +Once you are done testing locally, you can upload your module to the [registry](https://app.viam.com/registry) and make it available either to all machines in your organization, or to the general public. {{< table >}} {{% tablestep number=1 %}} @@ -857,7 +857,7 @@ It's quite helpful to create a README to document what your module does and how This module implements the [Viam sensor API](https://docs.viam.com/dev/reference/apis/components/sensor/) in a `jessamy:weather:meteo_PM` model. With this model, you can gather [Open-Meteo](https://open-meteo.com/en/docs/air-quality-api) PM2.5 and PM10 air quality data from anywhere in the world, at the coordinates you specify. -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com/). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** button, select **Component or service**, then select the `sensor / weather:meteo_PM` model provided by the [`weather` module](https://app.viam.com/module/jessamy/weather). Click **Add module**, enter a name for your sensor, and click **Create**. @@ -1091,7 +1091,7 @@ Now, if you look at the [Viam Registry page](https://app.viam.com/registry) whil Now that your module is in the registry, you can test the registry version of your module on one machine, and then add it to more machines. Configure it just as you would [configure any other component or service in the registry](/operate/get-started/supported-hardware/#configure-hardware-on-your-machine): -1. Go to your machine's **CONFIGURE** tab in the Viam app. +1. Go to your machine's **CONFIGURE** tab. 1. Click the **+** button, select **Component or service**, and search for and select your model. diff --git a/docs/operate/get-started/other-hardware/create-module/hello-world-module.md b/docs/operate/get-started/other-hardware/create-module/hello-world-module.md index dde9c4646a..6a77c083e6 100644 --- a/docs/operate/get-started/other-hardware/create-module/hello-world-module.md +++ b/docs/operate/get-started/other-hardware/create-module/hello-world-module.md @@ -46,7 +46,7 @@ Authenticate your CLI session with Viam using one of the following options: {{< readfile "/static/include/how-to/auth-cli.md" >}} {{< /expand >}} -{{% expand "Install viam-server on your computer and connect to the Viam app" %}} +{{% expand "Install viam-server on your computer and connect to Viam" %}} {{% snippet "setup.md" %}} @@ -115,7 +115,7 @@ First let's generate the camera component files, and we'll add the sensor code l - Language: Your choice - Visibility: `Private` - Namespace/Organization ID: - - In the [Viam app](https://app.viam.com), navigate to your organization settings through the menu in upper right corner of the page. + - Navigate to your organization settings through the menu in upper right corner of the page. Find the **Public namespace** (or create one if you haven't already) and copy that string. In the example snippets below, the namespace is `jessamy`. - Resource to add to the module (API): `Camera Component`. @@ -627,12 +627,12 @@ viam module build local {{% /tablestep %}} {{% tablestep number=2 %}} -Make sure your machine's instance of `viam-server` is live and connected to the [Viam app](https://app.viam.com). +Make sure your machine's instance of `viam-server` is live and connected to Viam. {{% /tablestep %}} {{% tablestep number=3 %}} -In the Viam app, navigate to your machine's **CONFIGURE** page. +Navigate to your machine's **CONFIGURE** page. {{% /tablestep %}} {{% tablestep number=4 %}} @@ -684,7 +684,7 @@ Replace the path with the path to your image, for example `"/Users/jessamyt/Down {{% tablestep number=8 %}} Save the config, then click the **TEST** section of the camera's configuration card. -{{}} +{{}} You should see your image displayed. If not, check the **LOGS** tab for errors. @@ -713,7 +713,7 @@ If not, check the **LOGS** tab for errors. ## Package and upload the module You now have a working local module. -To make it available to deploy on more machines, you can package it and upload it to the [Viam Registry](https://app.viam.com/registry). +To make it available to deploy on more machines, you can package it and upload it to the [registry](https://app.viam.com/registry). The hello world module you created is for learning purposes, not to provide any meaningful utility, so we recommend making it available only to machines within your {{< glossary_tooltip term_id="organization" text="organization" >}} instead of making it publicly available. diff --git a/docs/operate/get-started/other-hardware/manage-modules.md b/docs/operate/get-started/other-hardware/manage-modules.md index a7863f026b..844c7416af 100644 --- a/docs/operate/get-started/other-hardware/manage-modules.md +++ b/docs/operate/get-started/other-hardware/manage-modules.md @@ -27,7 +27,7 @@ For information on pinning module deployments to versions, see [Module versionin ## Update a module -Once your module is in the [Viam Registry](https://app.viam.com/registry), there are two ways to update it: +Once your module is in the [registry](https://app.viam.com/registry), there are two ways to update it: - [Update automatically](#update-automatically) using GitHub Actions: Recommended for ongoing projects with continuous integration (CI) workflows, or if you want to build for multiple platforms. @@ -259,7 +259,7 @@ For more details, see the [`upload-module` GitHub Action documentation](https:// 1. Push a tag or create a [release](https://docs.github.com/en/repositories/releasing-projects-on-github) in GitHub to trigger the build. The build can be quick or take over 15 minutes to complete, depending on factors including the size of the module. - Once the build is complete, the module will automatically update in the [Viam Registry](https://app.viam.com/registry), and the machines set to use the latest [version](/operate/get-started/other-hardware/module-configuration/#module-versioning) of the module will automatically update to the new version. + Once the build is complete, the module will automatically update in the [registry](https://app.viam.com/registry), and the machines set to use the latest [version](/operate/get-started/other-hardware/module-configuration/#module-versioning) of the module will automatically update to the new version. #### Supported platforms for automatic updates @@ -317,7 +317,7 @@ You can change the visibility of a module from public to private if: To change the visibility: -1. Navigate to your module's page in the [**REGISTRY** section of the Viam app](https://app.viam.com/registry). +1. Navigate to your module's page in the [registry](https://app.viam.com/registry). 2. Hover to the right of the visibility indicator near the right side of the page until an **Edit** button appears, and click it to make changes. {{}} @@ -349,7 +349,7 @@ You can delete a module if: To delete a module: -1. Navigate to its page in the [**REGISTRY** section of the Viam app](https://app.viam.com/registry). +1. Navigate to its page in the [registry](https://app.viam.com/registry). 2. Click the **...** menu in the upper-right corner of the page, and click **Delete**. {{}} @@ -369,7 +369,7 @@ Other registry items such as training scripts and ML models can be deleted in th Deleting a version of a module requires the same org owner permissions as deleting the entire module, and similarly, you cannot delete a version if any machines are using it. To delete just one version of a module: -1. Navigate to its page in the [**REGISTRY** section of the Viam app](https://app.viam.com/registry). +1. Navigate to its page in the [registry](https://app.viam.com/registry). 1. Click **Show previous versions** under the **Latest version** heading. @@ -384,7 +384,7 @@ To transfer ownership of a module from one organization to another: 1. You must be an [owner](/manage/manage/rbac/) in both the current and new organizations. -1. Navigate to the module's page in the [**REGISTRY** section of the Viam app](https://app.viam.com/registry). +1. Navigate to the module's page in the [registry](https://app.viam.com/registry). 1. Make sure the visibility of the module is set to **Public**. diff --git a/docs/operate/get-started/other-hardware/module-configuration.md b/docs/operate/get-started/other-hardware/module-configuration.md index cadcda0592..2c537fa734 100644 --- a/docs/operate/get-started/other-hardware/module-configuration.md +++ b/docs/operate/get-started/other-hardware/module-configuration.md @@ -27,7 +27,7 @@ The following image shows an example of a configured modular resource, specifica This modular component is made available by the `ultrasonic` module. See [module configuration](#module-configuration-details). -{{}} +{{}} {{% /tab %}} {{% tab name="JSON" %}} @@ -90,7 +90,7 @@ The following properties are available for modular resources: The following image shows an example of a configured module in a machine's config. This ultrasonic sensor in the previous section is provided by the [`ultrasonic` module](https://app.viam.com/module/viam/ultrasonic) shown here. -{{}} +{{}} {{% /tab %}} {{% tab name="JSON" %}} @@ -199,7 +199,7 @@ You can add and edit `env` by switching from **Builder** to **JSON** mode in the | Name | Type | Required? | Description | | ---- | ---- | --------- | ----------- | -| `type` | string | **Required** | `registry` or `local`, depending on whether the module is in the [Viam Registry](https://app.viam.com/registry) or is only available [locally](/operate/get-started/other-hardware/create-module/#test-your-module-locally) on your computer. | +| `type` | string | **Required** | `registry` or `local`, depending on whether the module is in the [registry](https://app.viam.com/registry) or is only available [locally](/operate/get-started/other-hardware/create-module/#test-your-module-locally) on your computer. | | `name` | string | **Required** | A name for this instance of the module. | | `module_id` | string | **Required** | The module author's organization namespace or UUID, then a colon, then the name of the module. Identical to the first two pieces of the {{< glossary_tooltip term_id="model-namespace-triplet" text="model namespace triplet" >}}. `:`. Not applicable to local modules. | | `version` | string | **Required** |

You can specify:

  • a specific version (X.Y.Z) of the module to use
  • to pin the module version to the newest release, so your machine automatically updates to the latest version of the module that is available or to the latest patch release of a configured minor (X.Y.\_) or major (X.\_) version.
For more information, see [Module versioning](/operate/get-started/other-hardware/module-configuration/#module-versioning).

| @@ -315,7 +315,7 @@ To configure a module that is uploaded to the Viam Registry but has [visibility] 1. Copy the module configuration JSON snippet. -1. In the Viam app, navigate to the **CONFIGURE** tab of the machine you want to configure. +1. Navigate to the **CONFIGURE** tab of the machine you want to configure. 1. Switch to **JSON** mode. diff --git a/docs/operate/get-started/setup-micro/_index.md b/docs/operate/get-started/setup-micro/_index.md index 3e0e4d574c..23d72d70bf 100644 --- a/docs/operate/get-started/setup-micro/_index.md +++ b/docs/operate/get-started/setup-micro/_index.md @@ -61,16 +61,16 @@ Viam provides installers to flash an ESP32 from macOS or Linux running on the x8 To get started quickly with the pre-built `viam-micro-server` binary, follow these steps: -1. Create a [Viam app](https://app.viam.com) account. - The Viam app is the online hub for configuring and managing devices as well as viewing data. +1. Create a Viam account on [app.viam.com](https://app.viam.com). + You can configure and manage devices and data collection in the web UI. 1. Add a new _{{< glossary_tooltip term_id="machine" text="machine" >}}_ using the button in the top right corner of the **LOCATIONS** tab in the app. A machine represents your device. -1. From your machine's page in the Viam app, click **View setup instructions** and follow the steps for your operating system. +1. On your machine's page, click **View setup instructions** and follow the steps for your operating system. The app provides commands to install `viam-micro-server` and connect it to the cloud with your machine's unique credentials. -1. A secure connection is automatically established between your machine and the Viam app. +1. A secure connection is automatically established between your machine and Viam. When you update your machine's configuration, `viam-micro-server` automatically gets the updates. You are ready to [configure](#configure-and-test-your-machine) any of the components listed above on your machine. @@ -142,14 +142,14 @@ Create firmware that integrates an existing module with the Micro-RDK: 1. Create a new machine and obtain its credentials: - Navigate to the [Viam app](https://app.viam.com) and add a new machine. + Add a new machine on [Viam](https://app.viam.com). Click on the name of the machine to go to the machine's page, then select the **CONFIGURE** tab. Then select the part status dropdown to the right of your machine's name on the top of the page and copy the **Machine cloud credentials**: {{}} - The Micro-RDK needs these credentials, which contain your machine part secret key and cloud app address, to connect to the [Viam app](https://app.viam.com). + The Micro-RDK needs these credentials, which contain your machine part secret key and cloud app address, to connect to Viam. 1. Generate a new project skeleton from [this template](https://github.com/viamrobotics/micro-rdk/tree/main/templates/project): @@ -237,14 +237,14 @@ Upload the generated firmware to your ESP32: If the flash is successful, you will retain a serial connection to the board until you press `Ctrl-C`. While the serial connection is live, you can also restart the currently flashed image with `Ctrl-R`. -1. Navigate to your new machine's page on the [Viam app](https://app.viam.com). +1. Navigate to your new machine's page. If successful, the status indicator should turn green and show the **Live** status. ### Configure and test your machine You can now configure the models you included in your firmware and test them: -1. Navigate to your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's page. 1. From the **CONFIGURE** tab, click **JSON** mode. Micro-RDK components and services must be configured in JSON. @@ -288,7 +288,7 @@ The firmware hosting endpoint must use HTTP/2. To configure OTA updates: -1. On your microcontroller's page in the [Viam app](https://app.viam.com), go to the **CONFIGURE** tab and select **JSON** mode. +1. On your machine's page, go to the **CONFIGURE** tab and select **JSON** mode. 1. Paste in the template below, then configure the URL from which to fetch new firmware, and a version name of your choice. The value of the `version` field is not directly used by the OTA service, so you can use any string. @@ -381,7 +381,7 @@ To deploy the firmware: The assets include the full and OTA firmware images. Copy the URL of the OTA firmware image. -1. Navigate to your machine's **CONFIGURE** tab in the Viam app and [configure the OTA service](#configure-over-the-air-updates) with the URL of the firmware image you just copied. +1. Navigate to your machine's **CONFIGURE** tab and [configure the OTA service](#configure-over-the-air-updates) with the URL of the firmware image you just copied. {{% /tab %}} {{% tab name="Build locally and host manually" %}} diff --git a/docs/operate/get-started/setup-micro/micro-troubleshooting.md b/docs/operate/get-started/setup-micro/micro-troubleshooting.md index b52b8d3031..a6d785efde 100644 --- a/docs/operate/get-started/setup-micro/micro-troubleshooting.md +++ b/docs/operate/get-started/setup-micro/micro-troubleshooting.md @@ -55,7 +55,7 @@ espflash flash --erase-parts nvs --partition-table partitions.csv target/xtensa Try the connection command again. The baud rate on your device may not have been fast enough to connect. -If successful, the Viam app will show that your machine part's status is **Live**. +If successful, Viam will show that your machine part's status is **Live**. You can also try disconnecting and reconnecting the ESP32 to the USB port, then retrying the flash command. @@ -63,15 +63,15 @@ You can also try disconnecting and reconnecting the ESP32 to the USB port, then If you get the error `viam.json not found` try the following to manually add your machine cloud credentials as a file in your project: -1. Navigate to your machine's page on the [Viam app](https://app.viam.com) and select the **CONFIGURE** tab. +1. Navigate to your machine's page and select the **CONFIGURE** tab. 1. Select the part status dropdown to the right of your machine's name on the top of the page: {{}} 1. Click the copy icon underneath **Machine cloud credentials**. - The Micro-RDK needs this JSON object, which contains your machine part secret key and cloud app address, to connect to the [Viam app](https://app.viam.com). + The Micro-RDK needs this JSON object, which contains your machine part secret key and cloud app address, to connect to Viam. 1. Navigate to the directory of the project you just created. -1. Create a new viam.json file and paste the machine cloud credentials from the Viam app in. +1. Create a new viam.json file and paste the machine cloud credentials in. 1. Save the file. ### Error: failed to run custom build command for `esp32-explorer (/host)` diff --git a/docs/operate/get-started/setup.md b/docs/operate/get-started/setup.md index 22125feb26..d37cfefda4 100644 --- a/docs/operate/get-started/setup.md +++ b/docs/operate/get-started/setup.md @@ -93,16 +93,16 @@ Install `viam-server` on the computer or single-board computer (SBC) that is dir 1. Make sure your computer or SBC is powered on and connected to the internet. -1. Create a [Viam app](https://app.viam.com) account. - The Viam app is the online hub for configuring and managing devices and data. +1. Create a Viam account on [app.viam.com](https://app.viam.com). + You can configure and manage devices and data collection in the web UI. 1. Add a new [_{{< glossary_tooltip term_id="machine" text="machine" >}}_](/operate/get-started/basics/#what-is-a-machine) using the button in the top right corner of the **LOCATIONS** tab in the app. A machine represents your device. -1. From your machine's page in the Viam app, click **View setup instructions** and follow the steps for your operating system. +1. On your machine's page, click **View setup instructions** and follow the steps for your operating system. The app provides commands to install `viam-server` and connect it to the cloud with your machine's unique credentials. -1. A secure connection is automatically established between your machine and the Viam app. +1. A secure connection is automatically established between your machine and Viam. When you update your machine's configuration, `viam-server` automatically gets the updates. You are ready to [configure supported hardware](/operate/get-started/supported-hardware/) on your machine. @@ -113,10 +113,10 @@ Install `viam-server` on the computer or single-board computer (SBC) that is dir `viam-agent` is a service manager that automatically updates `viam-server` and includes tools for [provisioning your devices](/manage/fleet/provision/setup/), networking, and configuring operating system settings. -When you set up a Linux device in the Viam app, you'll see an option to install using `viam-agent`, or to manually install only `viam-server`. -Using `viam-agent` is generally recommended when installing `viam-server` on a single-board computer. +When you set up a Linux device with Viam, you can use `viam-agent`, or to manually install only `viam-server`. +Using `viam-agent` is generally recommended when installing `viam-server`. -When you set up a native Windows device in the Viam app, you must use the [Viam Agent installer](https://storage.googleapis.com/packages.viam.com/apps/viam-agent/viam-agent-stable.msi). +When you set up a native Windows device with Viam, you must use the [Viam Agent installer](https://storage.googleapis.com/packages.viam.com/apps/viam-agent/viam-agent-stable.msi). `viam-agent` is not available for macOS, Windows Subsystem for Linux (WSL), or microcontrollers. Use manual install for those systems. @@ -133,10 +133,10 @@ If you need to use Docker reach out to [support](mailto:support@viam.com). ### How the machine gets its configuration -The machine setup steps displayed in the Viam app copy your machine's credentials to your machine. -When you turn on your machine, `viam-server` starts up and uses the provided credentials to fetch its configuration from the Viam app. +The machine setup steps copy your machine's credentials to your machine. +When you turn on your machine, `viam-server` starts up and uses the provided credentials to fetch its configuration from Viam. Once the machine has a configuration, it caches it locally (in a file at ~/.viam/cached_cloud_config\_\.json) and can use the config for up to 60 days. -Since the configuration is cached locally, your machine does not need to stay connected to the Viam app after it has obtained its configuration file. +Since the configuration is cached locally, your machine does not need to stay connected to Viam after it has obtained its configuration file. If it is online, the machine checks for new configurations every 15 seconds and changes its config automatically when a new config is available. All communication happens securely over HTTPS using secret tokens that are in the machine's config. diff --git a/docs/operate/get-started/supported-hardware/_index.md b/docs/operate/get-started/supported-hardware/_index.md index 3654a4a232..a48d2335e5 100644 --- a/docs/operate/get-started/supported-hardware/_index.md +++ b/docs/operate/get-started/supported-hardware/_index.md @@ -31,11 +31,10 @@ next: "/operate/get-started/other-hardware/" Viam has a registry of supported hardware {{< glossary_tooltip term_id="module" text="modules" >}} that implement [standardized APIs](/dev/reference/apis/#component-apis) for each category of hardware {{< glossary_tooltip term_id="component" text="component" >}} (for example, the camera API). Any hardware that is not already supported by a Viam module can be added into Viam’s system of modular resources by [creating a new module](/operate/get-started/other-hardware/create-module/) that provides a driver for the hardware. -The Viam Registry is the storage and distribution system for not just hardware modules but also software modules (called services), ML models, and ML model training scripts. -You can browse the [Viam Registry in the Viam app](https://app.viam.com/registry?type=Module). +The [registry](https://app.viam.com/registry?type=Module) is the storage and distribution system for not just hardware modules but also software modules (called services), ML models, and ML model training scripts. Some components are supported by drivers built into `viam-server`, so you won't find them in the registry page. -You can browse all built-in and modular registry components below or on your machine's configuration page in the Viam app. +You can browse all built-in and modular registry components below or on your machine's configuration page. There are also modules in the registry that do not directly drive any physical hardware, but rather augment physical hardware with another layer of abstraction, or add software functionality such as a chatbot integration. @@ -46,10 +45,10 @@ If you are using an ESP32 microcontroller, see the [ESP32-specific instructions] **Prerequisite:** A machine with [`viam-server` installed and connected to the cloud](/operate/get-started/setup/). 1. Make sure your hardware is physically connected to your machine and powered on. -1. Navigate to your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's page. 1. Click the **+** button on your machine's **CONFIGURE** tab. - {{}} + {{}} 1. Click **Component or service**. This opens a search menu for all existing hardware and software drivers. @@ -57,7 +56,7 @@ If you are using an ESP32 microcontroller, see the [ESP32-specific instructions] Search by name, model number, or manufacturer name. Or try searching by broader category, for example "webcam" or "motor," since some components do not require drivers that are specific to their exact make and model. - {{}} + {{}} You can also browse the components in the [Browse supported hardware by component API](#browse-supported-hardware-by-component-api) section below. @@ -72,7 +71,7 @@ If you are using an ESP32 microcontroller, see the [ESP32-specific instructions] {{}} If your component is not working as expected, check the **ERROR LOGS** panel for error messages. - You can also [read more troubleshooting tips](/manage/troubleshoot/troubleshoot/) or click **ASK AI** in the top right corner of the Viam app to get help from Viam's AI assistant. + You can also [read more troubleshooting tips](/manage/troubleshoot/troubleshoot/) or get help from Viam's AI assistant by clicking on the search bar. ### How module configuration works diff --git a/docs/operate/mobility/move-arm/arm-motion.md b/docs/operate/mobility/move-arm/arm-motion.md index a93ba6371d..69d9942489 100644 --- a/docs/operate/mobility/move-arm/arm-motion.md +++ b/docs/operate/mobility/move-arm/arm-motion.md @@ -20,7 +20,7 @@ The [motion service API](/dev/reference/apis/services/motion/) allows you to pla ## Prerequisites -{{< expand "A running machine connected to the Viam app." >}} +{{< expand "A running machine connected to Viam." >}} {{% snippet "setup.md" %}} @@ -43,7 +43,7 @@ See [Configure an arm](/operate/mobility/move-arm/configure-arm/) for instructio ## Connect your code to your machine -1. From your machine's page in the Viam app, click the **CONNECT** tab. +1. From your machine's page, click the **CONNECT** tab. 1. Choose your programming language. The examples below are written in Python and Go, so choose one of those to follow along. diff --git a/docs/operate/mobility/move-arm/arm-no-code.md b/docs/operate/mobility/move-arm/arm-no-code.md index a71e52eb09..c17dcd06b6 100644 --- a/docs/operate/mobility/move-arm/arm-no-code.md +++ b/docs/operate/mobility/move-arm/arm-no-code.md @@ -4,20 +4,20 @@ linkTitle: "Move an arm with no code" weight: 30 type: "docs" layout: "docs" -description: "Move an arm without code from the Viam app interface." +description: "Move an arm without code using the web UI." date: "2025-05-21" --- {{}} -You can move an arm without code from the Viam app interface. +You can move an arm without code using the web UI. This is a good way to quickly test that your arm is working before writing code to move it. This is also a good way to confirm the directions of the x, y, and z axes of your arm. ## Prerequisites -{{< expand "A running machine connected to the Viam app." >}} +{{< expand "A running machine connected to Viam." >}} {{% snippet "setup.md" %}} @@ -41,7 +41,7 @@ See [Configure an arm](/operate/mobility/move-arm/configure-arm/) for instructio ## Move the arm -1. In the Viam app, navigate to your machine's page. +1. Navigate to your machine's page. 1. On your arm component's configuration card, select the **TEST** tab. @@ -63,7 +63,7 @@ Keep in mind: {{% alert title="Info" color="info" %}} -The Viam app control interface uses the [arm API](/dev/reference/apis/components/arm/) to move the arm. +The web UI uses the [arm API](/dev/reference/apis/components/arm/) to move the arm. You can also use the arm API to move the arm in code, though it is not recommended for complex movements because it does not take into account obstacles or allow for complex motion planning. {{% /alert %}} diff --git a/docs/operate/mobility/move-arm/configure-arm.md b/docs/operate/mobility/move-arm/configure-arm.md index d60f9d15d8..563259b96d 100644 --- a/docs/operate/mobility/move-arm/configure-arm.md +++ b/docs/operate/mobility/move-arm/configure-arm.md @@ -10,7 +10,7 @@ date: "2025-05-21" ## Prerequisites -{{< expand "A running machine connected to the Viam app." >}} +{{< expand "A running machine connected to Viam." >}} {{% snippet "setup.md" %}} @@ -28,7 +28,7 @@ date: "2025-05-21" ## Configure the arm -1. In the [Viam app](https://app.viam.com), navigate to your machine's page. +1. Navigate to your machine's page. 1. Select the **CONFIGURE** tab. @@ -104,7 +104,7 @@ Imagine you have two arms mounted on a table, some distance apart. {{}} 1. You define the frame of one arm to be at the same origin as the world frame. -1. You move the arm in each direction using the Viam app and see that positive x is to the right, positive y is forward, and positive z is up. +1. You move the arm in each direction using the web UI and see that positive x is to the right, positive y is forward, and positive z is up. You label the world frame axes on the table with tape for your reference. 1. You measure the distance between the two arms. The second arm is 200mm to the left of the first arm, so `"y": 200`. @@ -134,5 +134,5 @@ Imagine you have two arms mounted on a table, some distance apart. Because you aligned the first arm's origin frame with the world frame, the second arm's parent could be world or the first arm's origin frame (for example, `arm_1_origin`) with no difference in function. -1. You check that the second arm's frame is configured correctly by moving it in each direction using the Viam app control interface and confirming that it moves as expected. +1. You check that the second arm's frame is configured correctly by moving it in each direction using web UI and confirming that it moves as expected. When you move it in the positive x direction, it should move towards the first arm. diff --git a/docs/operate/mobility/move-base.md b/docs/operate/mobility/move-base.md index 08eacf20f4..b92b0a6c0c 100644 --- a/docs/operate/mobility/move-base.md +++ b/docs/operate/mobility/move-base.md @@ -18,7 +18,7 @@ You have three options for moving a mobile robot [base](/operate/reference/compo ## Prerequisites -{{% expand "A running machine connected to the Viam app. Click to see instructions." %}} +{{% expand "A running machine connected to Viam. Click to see instructions." %}} {{% snippet "setup.md" %}} @@ -32,7 +32,7 @@ You have three options for moving a mobile robot [base](/operate/reference/compo First, connect the base's motors to your machine. -Then, navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Then, navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Search for and select a model that supports your motor. @@ -53,7 +53,7 @@ The `wheeled-base` model supports robotic bases with motors on both sides for di {{% tablestep number=3 %}} **Connect code to your base** -Go to your machine's **CONNECT** tab in the Viam app. +Go to your machine's **CONNECT** tab. Select your preferred programming language and copy the code snippet. See [Create a web app](/operate/control/web-app/), [Create a mobile app](/operate/control/mobile-app/), or [Create a headless app](/operate/control/headless-app/) for more information, depending on your use case. @@ -85,7 +85,7 @@ async def connect(): # API key ID api_key_id='' ) - return await RobotClient.at_address('ADDRESS FROM THE VIAM APP', opts) + return await RobotClient.at_address('MACHINE ADDRESS', opts) async def moveInSquare(base): @@ -141,7 +141,7 @@ func main() { logger := logging.NewLogger("client") machine, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(utils.WithEntityCredentials( // Replace "" (including brackets) with your machine's API key ID diff --git a/docs/operate/mobility/move-gantry.md b/docs/operate/mobility/move-gantry.md index e24c798590..d965c3a991 100644 --- a/docs/operate/mobility/move-gantry.md +++ b/docs/operate/mobility/move-gantry.md @@ -14,7 +14,7 @@ You have two options for moving a [gantry](/operate/reference/components/gantry/ ## Prerequisites -{{% expand "A running machine connected to the Viam app. Click to see instructions." %}} +{{% expand "A running machine connected to Viam. Click to see instructions." %}} {{% snippet "setup.md" %}} @@ -28,7 +28,7 @@ You have two options for moving a [gantry](/operate/reference/components/gantry/ First, connect the gantry's motors to your machine. -Then, navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Then, navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Search for and select a model that supports your motor. @@ -48,7 +48,7 @@ If you have a multi-axis gantry, [configure a single-axis gantry](/operate/refer {{% tablestep number=3 %}} **Connect code to your gantry** -Go to your machine's **CONNECT** tab in the Viam app. +Go to your machine's **CONNECT** tab. Select your preferred programming language and copy the code snippet. See [Create a web app](/operate/control/web-app/), [Create a mobile app](/operate/control/mobile-app/), or [Create a headless app](/operate/control/headless-app/) for more information, depending on your use case. diff --git a/docs/operate/mobility/use-input-to-act.md b/docs/operate/mobility/use-input-to-act.md index fefa540e6f..c99ca5416f 100644 --- a/docs/operate/mobility/use-input-to-act.md +++ b/docs/operate/mobility/use-input-to-act.md @@ -13,7 +13,7 @@ You can program your machine to move based on sensor readings or other inputs. ## Prerequisites -{{% expand "A running machine connected to the Viam app. Click to see instructions." %}} +{{% expand "A running machine connected to Viam. Click to see instructions." %}} {{% snippet "setup.md" %}} diff --git a/docs/operate/reference/advanced-modules/create-subtype.md b/docs/operate/reference/advanced-modules/create-subtype.md index 1c3604fdb1..e5bd294764 100644 --- a/docs/operate/reference/advanced-modules/create-subtype.md +++ b/docs/operate/reference/advanced-modules/create-subtype.md @@ -60,7 +60,7 @@ The following steps guide you through this process in more detail: } ``` - For your custom API, your API namespace triplet might be `your-org-namespace:component:gizmo` where `your-org-namespace` is your organization namespace, found in your org settings page in the Viam app. + For your custom API, your API namespace triplet might be `your-org-namespace:component:gizmo` where `your-org-namespace` is your organization namespace, found in your org settings page. {{< /expand >}} diff --git a/docs/operate/reference/architecture/_index.md b/docs/operate/reference/architecture/_index.md index a6be6ed63b..b23e9885ae 100644 --- a/docs/operate/reference/architecture/_index.md +++ b/docs/operate/reference/architecture/_index.md @@ -38,11 +38,11 @@ This page provides an overview of how a machine is structured, including on-devi When `viam-server` can connect to the cloud, it also: -- Automatically pulls configuration updates you make in the Viam app +- Automatically pulls configuration updates you make - Gets new versions of software packages - Uploads and syncs image and sensor data - Handles requests from client code you write with [SDKs](/dev/reference/sdks/) -- Allows you to remotely monitor and control your machine from the Viam app +- Allows you to remotely monitor and control your machine `viam-server` can use the internet, wide area networks (WAN) or local networks (LAN) to establish peer-to-peer connections between two {{< glossary_tooltip term_id="machine" text="machines" >}}, or to a client application. @@ -89,7 +89,7 @@ If you want to add some other high-level software functionality beyond the built Viam uses peer-to-peer communication, where all machines running `viam-server` or [`viam-micro-server`](/operate/reference/viam-micro-server/) (the version of `viam-server` for microcontrollers) communicate directly with each other as well as with the cloud. This peer-to-peer connectivity is enabled by sending [gRPC commands over WebRTC connections](/operate/reference/architecture/machine-to-machine-comms/#low-level-inter-robotsdk-communication). -On startup, `viam-server` establishes a {{< glossary_tooltip term_id="webrtc" text="WebRTC" >}} connection with the [Viam app](https://app.viam.com). +On startup, `viam-server` establishes a {{< glossary_tooltip term_id="webrtc" text="WebRTC" >}} connection with Viam. `viam-server` pulls its configuration from the app, caches it locally, and initializes all components and services based on that configuration. If [sub-parts or remote parts](#complex-machines-with-multiple-parts) are configured, communications are established between the `viam-server` instances on each of them. @@ -98,8 +98,8 @@ If you have client code running on a separate computer, that code sends API requ If a WebRTC connection cannot be established, the request is sent directly over gRPC. When a built-in service communicates with a component, for example when the vision service requests an image from a camera, `viam-server` handles that request as well. -When you control your machine or view its camera streams or sensor outputs from the Viam app **CONTROL** tab, those connections happen over WebRTC. -The Viam app uses the same API endpoints as your SDK client code (in fact, it uses the Viam TypeScript SDK), with `viam-server` handling requests. +When you control your machine or view its camera streams or sensor outputs from the **CONTROL** tab, those connections happen over WebRTC. +The web UI uses the same API endpoints as your SDK client code (in fact, it uses the Viam TypeScript SDK), with `viam-server` handling requests. {{% alert title="Protobuf APIs" color="info" %}} All Viam APIs are defined with the [Protocol Buffers (protobuf)](https://protobuf.dev/) framework. @@ -109,26 +109,26 @@ For more details, see [Machine-to-Machine Communication](/operate/reference/arch ### Security -TLS certificates automatically provided by the Viam app ensure that all communication is authenticated and encrypted. +TLS certificates automatically provided by Viam ensure that all communication is authenticated and encrypted. Viam uses API keys with [role-based access control (RBAC)](/manage/manage/rbac/) to control access to machines from client code. ## Data management flow -{{}} +{{}}
Data is captured and synced to the Viam Cloud as follows: 1. Data collected by your resources, such as sensors and cameras, is first stored locally in a specified directory (defaults to ~/.viam/capture). - You control what data to capture, how often to capture it, and where to store it using the configuration in the Viam app. + You control what data to capture, how often to capture it, and where to store it using the configuration. - You can also sync data from other sources by putting it into folders you specify.

1. `viam-server` syncs data to the cloud at your specified interval, and deletes the data from the local directory. -1. You can view your data from the Viam app or query it using Viam SDKs, MQL, or SQL. +1. You can view your data in the web UI or query it using Viam SDKs, MQL, or SQL. If a device has intermittent internet connectivity, data is stored locally until the machine can reconnect to the cloud. @@ -137,18 +137,18 @@ For more information, see [Data management service](/data-ai/capture-data/captur ## Basic machine example

-{{}} +{{}}

Imagine you have a simple device consisting of a temperature sensor connected to the GPIO pins of a single-board computer (SBC). You want to capture sensor data at regular intervals, and sync it to the cloud. Here is how this works in Viam: -- You configure your machine in the Viam app with a sensor {{< glossary_tooltip term_id="component" text="component" >}} and the data management {{< glossary_tooltip term_id="service" text="service" >}}. +- You configure your machine in the web UI with a sensor {{< glossary_tooltip term_id="component" text="component" >}} and the data management {{< glossary_tooltip term_id="service" text="service" >}}. - `viam-server` runs on the SBC, managing all communications between hardware and the cloud using gRPC over {{< glossary_tooltip term_id="webrtc" text="WebRTC" >}}. - On startup, `viam-server` uses credentials stored locally to establish a connection with the Viam app and fetches its configuration. + On startup, `viam-server` uses credentials stored locally to establish a connection with Viam and fetches its configuration. - Sensor data is cached in a local folder, then synced to the cloud at a configurable interval. -- You can use the tools in the Viam app to remotely view sensor data as well as to change your machine's configuration, to view logs, and more. +- You can use the tools on Viam to remotely view sensor data as well as to change your machine's configuration, to view logs, and more. Now imagine you want to run code to turn on a fan when the temperature sensor reads over 100 degrees Fahrenheit: @@ -163,7 +163,7 @@ Now imagine you want to run code to turn on a fan when the temperature sensor re Now, imagine you want to change to a different model of temperature sensor from a different brand: - You power down your device, disconnect the old sensor from your SBC and connect the new one. -- You update your configuration in the Viam app to indicate what model you are using, and how it's connected (imagine this one uses USB instead of GPIO pins). +- You update your configuration in the web UI to indicate what model you are using, and how it's connected (imagine this one uses USB instead of GPIO pins). - You turn your device back on, and `viam-server` automatically fetches the config updates. - You do not need to change your control code, because the API is the same for all models of sensor. diff --git a/docs/operate/reference/architecture/machine-to-machine-comms.md b/docs/operate/reference/architecture/machine-to-machine-comms.md index 616650cf37..5d5cc3b097 100644 --- a/docs/operate/reference/architecture/machine-to-machine-comms.md +++ b/docs/operate/reference/architecture/machine-to-machine-comms.md @@ -11,8 +11,8 @@ aliases: toc_hide: true --- -When building a smart machine application in the [Viam app](https://app.viam.com), a user typically begins by configuring their machine which can consist of one or more {{< glossary_tooltip term_id="part" text="parts" >}}. -Next they will test that it is wired up properly using the Viam app's Control page. +When building a smart machine application in, a user typically begins by configuring their machine which can consist of one or more {{< glossary_tooltip term_id="part" text="parts" >}}. +Next they will test that it is wired up properly using the Control page. Once they've ensured everything is wired up properly, they will build their main application and the business logic for their machine using one of Viam's language SDKs. This SDK-based application is typically run on either the main part of the machine or a separate computer dedicated to running the business logic for the machine. @@ -114,5 +114,5 @@ That means if there are two arms in a machine configuration, there is only one A In addition to gRPC, the RDK uses [WebRTC](https://webrtcforthecurious.com/) video and audio streams and data channels to enable peer to peer (P2P) communication between machine parts as well as SDKs and the Remote Control interface. -An outline of how WebRTC is used lives on [Go.dev](https://pkg.go.dev/go.viam.com/utils@v0.0.3/rpc#hdr-Connection), but in short, an RDK is always waiting on the Viam app ([app.viam.com](https://app.viam.com)) to inform it of a connection requesting to be made to it whereby it sends details about itself and how to connect on a per connection basis. -Once a connection is made, the Viam app is no longer involved in any packet transport and leaves it up to the two peers to communicate with each other. +An outline of how WebRTC is used lives on [Go.dev](https://pkg.go.dev/go.viam.com/utils@v0.0.3/rpc#hdr-Connection), but in short, an RDK is always waiting on [app.viam.com](https://app.viam.com) to inform it of a connection requesting to be made to it whereby it sends details about itself and how to connect on a per connection basis. +Once a connection is made, [app.viam.com](https://app.viam.com) is no longer involved in any packet transport and leaves it up to the two peers to communicate with each other. diff --git a/docs/operate/reference/architecture/parts.md b/docs/operate/reference/architecture/parts.md index 088952502f..0a078abd7d 100644 --- a/docs/operate/reference/architecture/parts.md +++ b/docs/operate/reference/architecture/parts.md @@ -37,7 +37,7 @@ There are two ways to link machine parts: You set up each of the single-board computers as a sub-part. This allows the main part to access all the camera streams and run object detection on all of them.

You could also set this up with each single-board computer being a remote part instead of a sub-part, but it is slightly easier to configure sub-parts because you do not need to add the address of each part to your machine's config. - Additionally, configuring a discrete system of parts as one multi-part machine helps keep your fleet more clearly organized in the Viam app. + Additionally, configuring a discrete system of parts as one multi-part machine helps keep your fleet more clearly organized.
- **Remote part**: To connect multiple computers that are parts of _different machines_ in the same or different organizations, [add one machine part as a remote part of the other machine or machines](#configure-a-remote-part). @@ -64,7 +64,7 @@ To copy the ID of your machine part, select the part status dropdown to the righ For example: -{{}} +{{}} ## Configuration @@ -74,13 +74,13 @@ You can make a multi-part machine by first configuring one part which is the "ma The main part will be able to access the resources of its sub-parts. Sub-parts will _not_ have access to the resources of the main part. -The Viam app automatically creates the main part for you when you create a new {{< glossary_tooltip term_id="machine" text="machine" >}}. +Viam automatically creates the main part for you when you create a new {{< glossary_tooltip term_id="machine" text="machine" >}}. To add a new sub-part: -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 2. Click the **+** (Create) icon next to the name of your main part, then click **Sub-part** from the menu: - {{}} + {{}} 3. Save the config. @@ -90,7 +90,7 @@ The sub-part will not be visible as a `remote` in the debug config until after y To rename or delete a sub-part, or to make it the main part, click the **...** menu: -{{}} +{{}} By default, all sub-parts appear in the [frame system](/operate/reference/services/frame-system/) at the world origin. You can specify translations for sub-parts by configuring their frames with appropriate translation values relative to their parent frame. @@ -100,7 +100,7 @@ You can view the `frame` of each sub-part in the `remotes` section of the debug To establish a connection between a part of one machine and a part of a second machine, add one as a remote part in the other machine part's config: -1. Go to the Viam app machine page of the smart machine part to which you wish to establish the remote connection. +1. Go to the machine page of the smart machine part to which you wish to establish the remote connection. This is the machine part whose resources will be accessible to the other machine part. 2. Navigate to the **CONNECT** tab. 3. Click **Configure as a remote part** in the left-hand menu. @@ -108,7 +108,7 @@ To establish a connection between a part of one machine and a part of a second m {{% snippet "show-secret.md" %}} -5. Go to the Viam app machine page of the machine part from which you want to establish a remote connection. +5. Go to the machine page of the machine part from which you want to establish a remote connection. This is the machine part that will be able to access the resources of the other machine part. 6. Navigate to the **CONFIGURE** tab, click the **+** (Create) icon next to the machine part's name in the left side menu. diff --git a/docs/operate/reference/components/arm/fake.md b/docs/operate/reference/components/arm/fake.md index 8b52dc45e0..6ab0de1779 100644 --- a/docs/operate/reference/components/arm/fake.md +++ b/docs/operate/reference/components/arm/fake.md @@ -17,12 +17,12 @@ Configure a `fake` arm to test different models of robotic arms without any phys {{< tabs name="Configure a Fake Arm" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `arm` type, then select the `fake` model. Enter a name or use the suggested name for your arm and click **Create**. -![An example configuration for a fake ur5e arm in the Viam app Config Builder.](/components/arm/fake-arm-ui-config.png) +![An example configuration for a fake ur5e arm.](/components/arm/fake-arm-ui-config.png) Fill in the attributes as applicable to your arm, according to the table below. diff --git a/docs/operate/reference/components/arm/ur5e.md b/docs/operate/reference/components/arm/ur5e.md index 2337f2506a..24255828ba 100644 --- a/docs/operate/reference/components/arm/ur5e.md +++ b/docs/operate/reference/components/arm/ur5e.md @@ -19,12 +19,12 @@ Then, configure the arm: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `arm` type, then select the `ur5e` model. Enter a name or use the suggested name for your arm and click **Create**. -{{}} +{{}} Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/arm/yahboom-dofbot.md b/docs/operate/reference/components/arm/yahboom-dofbot.md index 40e0a9128e..2cf9ef0ebf 100644 --- a/docs/operate/reference/components/arm/yahboom-dofbot.md +++ b/docs/operate/reference/components/arm/yahboom-dofbot.md @@ -22,14 +22,14 @@ Then, configure the arm: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `arm` type, then select the `rand:yahboom:dofbot` modular resource. Enter a name or use the suggested name for your arm and click **Create**. There are no attributes available for this modular arm. - + Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/base/boat.md b/docs/operate/reference/components/base/boat.md index 67bda98432..32bac58975 100644 --- a/docs/operate/reference/components/base/boat.md +++ b/docs/operate/reference/components/base/boat.md @@ -18,7 +18,7 @@ To configure a `boat` base as a component of your machine, first configure the [ {{< tabs name="Configure a Boat Base" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `base` type, then select the `boat` model. Enter a name or use the suggested name for your base and click **Create**. diff --git a/docs/operate/reference/components/base/fake.md b/docs/operate/reference/components/base/fake.md index b9e760cea6..b4b6941160 100644 --- a/docs/operate/reference/components/base/fake.md +++ b/docs/operate/reference/components/base/fake.md @@ -17,12 +17,12 @@ Configure a `fake` base to test implementing a base component on your machine wi {{< tabs name="Configure a Fake Base" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `base` type, then select the `fake` model. Enter a name or use the suggested name for your base and click **Create**. -{{< imgproc src="/components/base/fake-base-ui-config.png" alt="An example configuration for a fake base in the Viam app Config Builder." resize="1200x" style="width: 900px" class="shadow" >}} +{{< imgproc src="/components/base/fake-base-ui-config.png" alt="An example configuration for a fake base." resize="1200x" style="width: 900px" class="shadow" >}} {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/base/sensor-controlled.md b/docs/operate/reference/components/base/sensor-controlled.md index 4fbf8dbd2c..056c194d70 100644 --- a/docs/operate/reference/components/base/sensor-controlled.md +++ b/docs/operate/reference/components/base/sensor-controlled.md @@ -31,12 +31,12 @@ Configure a `sensor-controlled` base as follows: {{< tabs name="Configure a Sensor-Controlled Base" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `base` type, then select the `sensor-controlled` model. Enter a name or use the suggested name for your base and click **Create**. -{{< imgproc src="/components/base/sensor-controlled-base-ui-config.png" alt="An example configuration for a sensor-controlled base in the Viam app config builder" resize="1200x" style="width: 600x" class="shadow" >}} +{{< imgproc src="/components/base/sensor-controlled-base-ui-config.png" alt="An example configuration for a sensor-controlled base" resize="1200x" style="width: 600x" class="shadow" >}} Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/base/two_wheeled_base.md b/docs/operate/reference/components/base/two_wheeled_base.md index 43707f7f27..6f55e3115b 100644 --- a/docs/operate/reference/components/base/two_wheeled_base.md +++ b/docs/operate/reference/components/base/two_wheeled_base.md @@ -20,7 +20,7 @@ Only bases with two drive wheels are supported by this `viam-micro-server` model {{< alert title="Info" color="info" >}} -The`two_wheeled_base` base model is not currently available as a built-in option in the [Viam app](https://app.viam.com), so you cannot use **Builder** mode to configure this board. +The`two_wheeled_base` base model is not currently available when configuring your machine using **Builder** mode. {{< /alert >}} diff --git a/docs/operate/reference/components/base/wheeled.md b/docs/operate/reference/components/base/wheeled.md index fa9f35cce9..09d38312b0 100644 --- a/docs/operate/reference/components/base/wheeled.md +++ b/docs/operate/reference/components/base/wheeled.md @@ -21,12 +21,12 @@ Then, configure a `wheeled` base as follows: {{< tabs name="Configure a Wheeled Base" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `base` type, then select the `wheeled` model. Enter a name or use the suggested name for your base and click **Create**. -{{< imgproc src="/components/base/wheeled-base-ui-config.png" alt="An example configuration for a wheeled base in the Viam app config builder, with Attributes & Depends On dropdowns and the option to add a frame." resize="1200x" style="width: 900px" class="shadow" >}} +{{< imgproc src="/components/base/wheeled-base-ui-config.png" alt="An example configuration for a wheeled base, with Attributes & Depends On dropdowns and the option to add a frame." resize="1200x" style="width: 900px" class="shadow" >}} Select the motors attached to the base as your **right** and **left** motors. Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/board/esp32.md b/docs/operate/reference/components/board/esp32.md index 9b54afa822..fad424a5f5 100644 --- a/docs/operate/reference/components/board/esp32.md +++ b/docs/operate/reference/components/board/esp32.md @@ -32,11 +32,11 @@ Your microcontroller should have at least the following resources available to w To test your board as you configure it, power it on. If you plan to connect hardware to the board's pins, connect the hardware while it's powered off. -To configure an `esp32` board, navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com) and select **JSON** mode. +To configure an `esp32` board, navigate to the **CONFIGURE** tab of your machine's page and select **JSON** mode. {{< alert title="Info" color="info" >}} -The`esp32` [board](/operate/reference/components/board/) model is not currently available as a built-in option in the [Viam app](https://app.viam.com), so you cannot use **Builder** mode to configure this board. +The`esp32` [board](/operate/reference/components/board/) model is not currently available when configuring your machine using **Builder** mode. {{< /alert >}} diff --git a/docs/operate/reference/components/board/fake.md b/docs/operate/reference/components/board/fake.md index 928cdee50e..691b1ad576 100644 --- a/docs/operate/reference/components/board/fake.md +++ b/docs/operate/reference/components/board/fake.md @@ -19,12 +19,12 @@ Configure a `fake` board to test integrating a board into your machine without p {{< tabs name="Configure an fake Board" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `board` type, then select the `fake` model. Enter a name or use the suggested name for your board and click **Create**. -![An example configuration for a fake board in the Viam app Config Builder.](/components/board/fake-ui-config.png) +![An example configuration for a fake board.](/components/board/fake-ui-config.png) Edit the attributes as applicable to your board, according to the table below. diff --git a/docs/operate/reference/components/camera/_index.md b/docs/operate/reference/components/camera/_index.md index 27412314d5..95e651cfa7 100644 --- a/docs/operate/reference/components/camera/_index.md +++ b/docs/operate/reference/components/camera/_index.md @@ -79,7 +79,7 @@ If none of these steps work, reach out to us on the [Community Discord](https:// When working with a [camera](/operate/reference/components/camera/) component, depending on the camera, you may need to explicitly provide some camera-specific configuration parameters. -Check the specifications for your camera, and manually provide configuration parameters such as width and height to the camera component configuration page on the [Viam app](https://app.viam.com). +Check the specifications for your camera, and manually provide configuration parameters such as width and height to the camera component configuration panel. On the **CONFIGURE** page, find your camera, then fill in your camera's specific configuration either using the **Show more** button to show the relevant configuration options, or the **{}** (Switch to Advanced) button in the top right of the component panel to enter these attributes manually. Provide at least the width and height values to start. diff --git a/docs/operate/reference/components/camera/calibrate.md b/docs/operate/reference/components/camera/calibrate.md index 0eed6982bf..2249cc79db 100644 --- a/docs/operate/reference/components/camera/calibrate.md +++ b/docs/operate/reference/components/camera/calibrate.md @@ -33,7 +33,7 @@ pip3 install opencv-python Do not hold the image in the air with your hands or tape it to a textured surface such as a textured wall, cardboard, or folder. 2. Take images of the checkerboard with your camera from various angles and distances that show the entire image, including the edges. Ensure the image is well and thoroughly lit to avoid distortions affecting the vision algorithms. - You can use the **Export screenshot** button on the camera panel of your machine's **CONTROL** tab in the [Viam app](https://app.viam.com). + You can use the **Export screenshot** button on the camera panel of your machine's **CONTROL** tab. Save between 10 - 15 images (see [examples](https://github.com/viam-labs/camera-calibration#example-images)). {{< alert title="Important" color="note" >}} diff --git a/docs/operate/reference/components/camera/esp32-camera.md b/docs/operate/reference/components/camera/esp32-camera.md index 6e4ba36c25..aca361786e 100644 --- a/docs/operate/reference/components/camera/esp32-camera.md +++ b/docs/operate/reference/components/camera/esp32-camera.md @@ -50,7 +50,7 @@ Then, configure your camera: {{< tabs name="Configure a esp32-camera" >}} {{% tab name="JSON Template" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Select **JSON** mode. Copy and paste the following JSON into your existing machine configuration into the `"components"` array: diff --git a/docs/operate/reference/components/camera/fake-micro-server.md b/docs/operate/reference/components/camera/fake-micro-server.md index de4f755d81..f395297534 100644 --- a/docs/operate/reference/components/camera/fake-micro-server.md +++ b/docs/operate/reference/components/camera/fake-micro-server.md @@ -26,12 +26,12 @@ Finish building and flashing custom firmware, then return to this guide. {{< tabs name="Configure a Fake Camera" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `camera` type, then select the `fake` model. Enter a name or use the suggested name for your camera and click **Create**. -![Configuration of a fake camera in the Viam app config builder.](/components/camera/configure-fake.png) +![Configuration of a fake camera.](/components/camera/configure-fake.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/camera/fake.md b/docs/operate/reference/components/camera/fake.md index 9d9e10ee27..302ec73edd 100644 --- a/docs/operate/reference/components/camera/fake.md +++ b/docs/operate/reference/components/camera/fake.md @@ -22,12 +22,12 @@ You can optionally specify a height and width. {{< tabs name="Configure a Fake Camera" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `camera` type, then select the `fake` model. Enter a name or use the suggested name for your camera and click **Create**. -![Configuration of a fake camera in the Viam app config builder.](/components/camera/configure-fake.png) +![Configuration of a fake camera.](/components/camera/configure-fake.png) Edit the attributes as applicable to your camera, according to the table below. diff --git a/docs/operate/reference/components/camera/ffmpeg.md b/docs/operate/reference/components/camera/ffmpeg.md index ee39b8b973..5e72bff0ae 100644 --- a/docs/operate/reference/components/camera/ffmpeg.md +++ b/docs/operate/reference/components/camera/ffmpeg.md @@ -27,12 +27,12 @@ Then, configure your camera: {{< tabs name="Configure a ffmpeg camera" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `camera` type, then select the `ffmpeg` model. Enter a name or use the suggested name for your camera and click **Create**. -![Configuration of a ffmpeg camera in the Viam app config builder.](/components/camera/configure-ffmpeg.png) +![Configuration of a ffmpeg camera.](/components/camera/configure-ffmpeg.png) Edit the attributes as applicable to your camera, according to the table below. diff --git a/docs/operate/reference/components/camera/image-file.md b/docs/operate/reference/components/camera/image-file.md index fba18d9b9d..b273df82dd 100644 --- a/docs/operate/reference/components/camera/image-file.md +++ b/docs/operate/reference/components/camera/image-file.md @@ -18,12 +18,12 @@ An `image_file` camera gets color and depth image frames or point clouds from a {{< tabs name="Configure an Image File Camera" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `camera` type, then select the `image_file` model. Enter a name or use the suggested name for your camera and click **Create**. -![Configuration of an image file camera in the Viam app config builder.](/components/camera/configure-image-file.png) +![Configuration of an image file camera.](/components/camera/configure-image-file.png) Edit the attributes as applicable to your camera, according to the table below. Note that you _must_ specify at least one of `color_image_file_path`, `depth_image_file_path`, and `pointcloud_file_path`. diff --git a/docs/operate/reference/components/camera/transform.md b/docs/operate/reference/components/camera/transform.md index 1596e48423..c2002f74e1 100644 --- a/docs/operate/reference/components/camera/transform.md +++ b/docs/operate/reference/components/camera/transform.md @@ -19,12 +19,12 @@ The transformations are applied in the order they are written in the `pipeline`. {{< tabs name="Example transform view" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `camera` type, then select the `transform` model. Enter a name or use the suggested name for your camera and click **Create**. -![Configuration of an transform view in the Viam app config builder.](/components/camera/configure-transform.png) +![Configuration of an transform view.](/components/camera/configure-transform.png) Click the **{}** (Switch to Advanced) button in the top right of the component panel to edit the component's attributes directly with JSON. Copy and paste the following attribute template into the attributes field. diff --git a/docs/operate/reference/components/camera/webcam.md b/docs/operate/reference/components/camera/webcam.md index 9a50762d72..df9515df03 100644 --- a/docs/operate/reference/components/camera/webcam.md +++ b/docs/operate/reference/components/camera/webcam.md @@ -23,12 +23,12 @@ Then, configure your camera: {{< tabs name="Configure a Webcam" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `camera` type, then select the `webcam` model. Enter a name or use the suggested name for your camera and click **Create**. -{{< imgproc src="/components/camera/configure-webcam.png" alt="Configuration of a webcam camera in the Viam app config builder." resize="1200x" style="width=600x" class="shadow" >}} +{{< imgproc src="/components/camera/configure-webcam.png" alt="Configuration of a webcam camera." resize="1200x" style="width=600x" class="shadow" >}} Edit and fill in the attributes as applicable. Leave the **video_path** blank and the camera will use the default video path for your machine. @@ -99,12 +99,12 @@ The following attributes are available for `webcam` cameras: ## Using `video_path` -### Find a video path using a discovery service in the Viam app +### Find a video path using a discovery service The [`rand:find-webcams:webcam-discovery`](https://github.com/randhid/find-webcams) service helps you identify path options. To add and use the service: -1. In the Viam app, navigate to the **CONFIGURE** tab of your machine's page. +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Service**. 1. Search for `find-webcams` and select the `discovery / find-webcams:webcam-discovery` service. 1. Click **Add module**. @@ -117,7 +117,7 @@ To add and use the service: 1. Click the **Copy attributes** button for the camera you want to use. 1. Click the **{}** icon in the upper right corner of the camera component configuration. - {{}} + {{}} 1. Paste the copied attributes. 1. Click **Save**. @@ -173,7 +173,7 @@ Viam supports the following pixel formats: - YUY2 / YUYV / V422 - Z16 -If your machine is connected to the Viam app, the available pixel formats supported by your camera automatically appear in the **Format** dropdown menu, which is visible when you click the **Show more** button. +If your machine is connected to Viam, the available pixel formats supported by your camera automatically appear in the **Format** dropdown menu, which is visible when you click the **Show more** button. On Linux, you can also manually determine which pixel formats your camera supports by running the following command on the machine your camera is connected to. Replace `/dev/video0` with the video path you [determined for your video device above](#using-video_path), if different: diff --git a/docs/operate/reference/components/component/board1.md b/docs/operate/reference/components/component/board1.md index 0e037f9d11..9074475c3c 100644 --- a/docs/operate/reference/components/component/board1.md +++ b/docs/operate/reference/components/component/board1.md @@ -27,12 +27,12 @@ Then, configure the board: {{< tabs name="Configure a Board" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `board` type, then select the `` model. Enter a name or use the suggested name for your board and click **Create**. -![An example configuration for a board in the Viam app Config Builder.](/components/board/pi-ui-config.png) +![An example configuration for a board.](/components/board/pi-ui-config.png) Click the **{}** (Switch to Advanced) button in the top right of the component panel to edit your board's attributes with JSON, according to the following table. diff --git a/docs/operate/reference/components/component/model1.md b/docs/operate/reference/components/component/model1.md index 9be9325217..a6670697b9 100644 --- a/docs/operate/reference/components/component/model1.md +++ b/docs/operate/reference/components/component/model1.md @@ -19,12 +19,12 @@ Then, configure the component: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `arm` type, then select the `model1` model. Enter a name or use the suggested name for your arm and click **Create**. -{{< imgproc src="/components/component/model1-builder.png" alt="Creation of a `model1` arm in the Viam app config builder." resize="600x" class="shadow" >}} +{{< imgproc src="/components/component/model1-builder.png" alt="Creation of a `model1` arm" >}} Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/encoder/arduino.md b/docs/operate/reference/components/encoder/arduino.md index 89c0d2a25f..ed31589979 100644 --- a/docs/operate/reference/components/encoder/arduino.md +++ b/docs/operate/reference/components/encoder/arduino.md @@ -14,12 +14,12 @@ aliases: {{< tabs name="Configure an arduino Encoder" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `encoder` type, then select the `arduino` model. Enter a name or use the suggested name for your encoder and click **Create**. -![Configuration of an Arduino encoder in the Viam app config builder.](/components/encoder/configure-arduino.png) +![Configuration of an Arduino encoder.](/components/encoder/configure-arduino.png) Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/encoder/fake.md b/docs/operate/reference/components/encoder/fake.md index 29f2f1355e..b2da1c91d1 100644 --- a/docs/operate/reference/components/encoder/fake.md +++ b/docs/operate/reference/components/encoder/fake.md @@ -17,12 +17,12 @@ The `fake` encoder is an encoder model for testing code without any hardware. {{< tabs name="Configure an fake encoder" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `encoder` type, then select the `fake` model. Enter a name or use the suggested name for your encoder and click **Create**. -![Configuration of a fake encoder in the Viam app config builder.](/components/encoder/configure-fake.png) +![Configuration of a fake encoder.](/components/encoder/configure-fake.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/encoder/incremental-micro-rdk.md b/docs/operate/reference/components/encoder/incremental-micro-rdk.md index dec3bbb811..93cf3d7cff 100644 --- a/docs/operate/reference/components/encoder/incremental-micro-rdk.md +++ b/docs/operate/reference/components/encoder/incremental-micro-rdk.md @@ -25,12 +25,12 @@ Then, configure the encoder: {{< tabs name="Configure an incremental encoder" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `encoder` type, then select the `incremental` model. Enter a name or use the suggested name for your encoder and click **Create**. -![Configuration of an incremental encoder in the Viam app config builder.](/components/encoder/configure-incremental.png) +![Configuration of an incremental encoder.](/components/encoder/configure-incremental.png) Fill in and edit the attributes as applicable. diff --git a/docs/operate/reference/components/encoder/incremental.md b/docs/operate/reference/components/encoder/incremental.md index 7aa88bbaa7..71b1ed3871 100644 --- a/docs/operate/reference/components/encoder/incremental.md +++ b/docs/operate/reference/components/encoder/incremental.md @@ -22,12 +22,12 @@ Then, configure the encoder: {{< tabs name="Configure an incremental encoder" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `encoder` type, then select the `incremental` model. Enter a name or use the suggested name for your encoder and click **Create**. -![Configuration of an incremental encoder in the Viam app config builder.](/components/encoder/configure-incremental.png) +![Configuration of an incremental encoder.](/components/encoder/configure-incremental.png) Fill in and edit the attributes as applicable. diff --git a/docs/operate/reference/components/encoder/single.md b/docs/operate/reference/components/encoder/single.md index 277daaa1c0..f17d022031 100644 --- a/docs/operate/reference/components/encoder/single.md +++ b/docs/operate/reference/components/encoder/single.md @@ -20,12 +20,12 @@ Then, configure the encoder: {{< tabs name="Configure an single encoder" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `encoder` type, then select the `single` model. Enter a name or use the suggested name for your encoder and click **Create**. -![Configuration of a single encoder in the Viam app config builder.](/components/encoder/configure-single.png) +![Configuration of a single encoder.](/components/encoder/configure-single.png) Fill in and edit the attributes as applicable. diff --git a/docs/operate/reference/components/gantry/fake.md b/docs/operate/reference/components/gantry/fake.md index c4d2ef6d73..4160e7bce3 100644 --- a/docs/operate/reference/components/gantry/fake.md +++ b/docs/operate/reference/components/gantry/fake.md @@ -18,12 +18,12 @@ Configure a `fake` gantry to test implementing a gantry component on your machin {{< tabs name="Configure a Fake Gantry" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `gantry` type, then select the `fake` model. Enter a name or use the suggested name for your gantry and click **Create**. -![An example configuration for a fake gantry in the Viam app Config Builder.](/components/gantry/fake-gantry-ui-config.png) +![An example configuration for a fake gantry.](/components/gantry/fake-gantry-ui-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/gantry/multi-axis.md b/docs/operate/reference/components/gantry/multi-axis.md index 8fac808f5f..b441868a75 100644 --- a/docs/operate/reference/components/gantry/multi-axis.md +++ b/docs/operate/reference/components/gantry/multi-axis.md @@ -23,12 +23,12 @@ Then, configure the multi-axis gantry: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `gantry` type, then select the `multi-axis` model. Enter a name or use the suggested name for your gantry and click **Create**. -![Creation of a multi-axis gantry component in the Viam app config builder.](/components/gantry/multi-axis-ui-config.png) +![Creation of a multi-axis gantry component.](/components/gantry/multi-axis-ui-config.png) Fill in the attributes as applicable to your gantry, according to the table below. diff --git a/docs/operate/reference/components/gantry/single-axis.md b/docs/operate/reference/components/gantry/single-axis.md index 7f0345431a..9c3db120a6 100644 --- a/docs/operate/reference/components/gantry/single-axis.md +++ b/docs/operate/reference/components/gantry/single-axis.md @@ -22,12 +22,12 @@ Then, configure the gantry: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `gantry` type, then select the `single-axis` model. Enter a name or use the suggested name for your sensor and click **Create**. -![Creation of a single-axis gantry component in the Viam app config builder.](/components/gantry/single-axis-ui-config.png) +![Creation of a single-axis gantry component.](/components/gantry/single-axis-ui-config.png) Fill in the attributes as applicable to your gantry, according to the table below. diff --git a/docs/operate/reference/components/generic/_index.md b/docs/operate/reference/components/generic/_index.md index 9c9f5c8737..41cace8387 100644 --- a/docs/operate/reference/components/generic/_index.md +++ b/docs/operate/reference/components/generic/_index.md @@ -41,7 +41,7 @@ If you want to use most of an existing API but need just a few other functions, {{% alert title="Example usage" color="tip" %}} -See [Deploy control logic](/manage/software/control-logic/) for an example of how to use the generic component API, including how to call `DoCommand()` from the Viam SDKs or from the Viam app. +See [Deploy control logic](/manage/software/control-logic/) for an example of how to use the generic component API, including how to call `DoCommand()` from the SDKs or the web UI. {{% /alert %}} diff --git a/docs/operate/reference/components/generic/fake.md b/docs/operate/reference/components/generic/fake.md index 4754bee205..4921b3242b 100644 --- a/docs/operate/reference/components/generic/fake.md +++ b/docs/operate/reference/components/generic/fake.md @@ -15,12 +15,12 @@ Configure a `fake` generic component to test implementing a generic component on {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `generic` type, then select the `fake` model. Enter a name or use the suggested name for your generic component and click **Create**. -![An example configuration for a fake generic component in the Viam app Config Builder.](/components/generic/fake-generic-ui-config.png) +![An example configuration for a fake generic component.](/components/generic/fake-generic-ui-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/gripper/fake.md b/docs/operate/reference/components/gripper/fake.md index 6f35a01ded..37b9ffbc2c 100644 --- a/docs/operate/reference/components/gripper/fake.md +++ b/docs/operate/reference/components/gripper/fake.md @@ -18,12 +18,12 @@ Configure a `fake` gripper to test implementing a gripper on your machine withou {{< tabs name="Configure a Fake Gripper" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `gripper` type, then select the `fake` model. Enter a name or use the suggested name for your gripper and click **Create**. -![An example configuration for a fake gripper in the Viam app Config Builder.](/components/gripper/fake-gripper-ui-config.png) +![An example configuration for a fake gripper.](/components/gripper/fake-gripper-ui-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/input-controller/fake.md b/docs/operate/reference/components/input-controller/fake.md index 7908777b21..01599a083d 100644 --- a/docs/operate/reference/components/input-controller/fake.md +++ b/docs/operate/reference/components/input-controller/fake.md @@ -20,12 +20,12 @@ However, these Controls only ever return a single `PositionChangeAbs` event on t {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `input_controller` type, then select the `fake` model. Enter a name or use the suggested name for your input controller and click **Create**. -![An example configuration for a fake input controller component in the Viam App config builder.](/components/input-controller/fake-input-controller-ui-config.png) +![An example configuration for a fake input controller component.](/components/input-controller/fake-input-controller-ui-config.png) Edit the attributes as applicable. diff --git a/docs/operate/reference/components/input-controller/gamepad.md b/docs/operate/reference/components/input-controller/gamepad.md index 281cb243ea..d4cdd99f33 100644 --- a/docs/operate/reference/components/input-controller/gamepad.md +++ b/docs/operate/reference/components/input-controller/gamepad.md @@ -21,12 +21,12 @@ Then, configure the controller: {{< tabs name="Configure a `gamepad` input controller" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `input_controller` type, then select the `gamepad` model. Enter a name or use the suggested name for your input controller and click **Create**. -![An example configuration for a linux-based gamepad input controller component in the Viam App config builder](/components/input-controller/gamepad-input-controller-ui-config.png) +![An example configuration for a linux-based gamepad input controller component](/components/input-controller/gamepad-input-controller-ui-config.png) Edit the attributes as applicable to your input controller, according to the table below. diff --git a/docs/operate/reference/components/input-controller/gpio.md b/docs/operate/reference/components/input-controller/gpio.md index 63a6452009..1d782b5200 100644 --- a/docs/operate/reference/components/input-controller/gpio.md +++ b/docs/operate/reference/components/input-controller/gpio.md @@ -20,12 +20,12 @@ Then, configure the controller: {{< tabs name="Configure a `gpio` input controller" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `input_controller` type, then select the `gpio` model. Enter a name or use the suggested name for your input controller and click **Create**. -![An example configuration for a GPIO input controller component in the Viam App config builder](/components/input-controller/gpio-input-controller-ui-config.png) +![An example configuration for a GPIO input controller component](/components/input-controller/gpio-input-controller-ui-config.png) Click **{}** (Switch to advanced) to edit buttons and axes. Copy and paste the following attribute template into your input controller's **Attributes** box. diff --git a/docs/operate/reference/components/input-controller/mux.md b/docs/operate/reference/components/input-controller/mux.md index 230a837a15..59cf2b9261 100644 --- a/docs/operate/reference/components/input-controller/mux.md +++ b/docs/operate/reference/components/input-controller/mux.md @@ -25,12 +25,12 @@ To combine multiple controllers into a `mux` controller, you must first configur {{< tabs name="Configure a `mux` input controller" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `input_controller` type, then select the `mux` model. Enter a name or use the suggested name for your input controller and click **Create**. -![An example configuration for a multiplexed input controller component in the Viam App config builder](/components/input-controller/mux-input-controller-ui-config.png) +![An example configuration for a multiplexed input controller component](/components/input-controller/mux-input-controller-ui-config.png) Enter the name of each source input controller in `sources`. diff --git a/docs/operate/reference/components/input-controller/webgamepad.md b/docs/operate/reference/components/input-controller/webgamepad.md index 66b4b7a7bd..0171a8695a 100644 --- a/docs/operate/reference/components/input-controller/webgamepad.md +++ b/docs/operate/reference/components/input-controller/webgamepad.md @@ -29,12 +29,12 @@ Use the following configuration for an input controller of model `webgamepad`: {{< tabs name="Configure a `webgamepad` input controller" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `input_controller` type, then select the `webgamepad` model. Enter the name `WebGamepad` and click **Create**. -![An example configuration for a web-based gamepad input controller component in the Viam App config builder](/components/input-controller/webgamepad-input-controller-ui-config.png) +![An example configuration for a web-based gamepad input controller component](/components/input-controller/webgamepad-input-controller-ui-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/motor/dmc4000.md b/docs/operate/reference/components/motor/dmc4000.md index 46a293ea0b..e9c33033de 100644 --- a/docs/operate/reference/components/motor/dmc4000.md +++ b/docs/operate/reference/components/motor/dmc4000.md @@ -32,7 +32,7 @@ Then, configure the motor: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `motor` type, then select the `DMC4000` model. Enter a name or use the suggested name for your motor and click **Create**. diff --git a/docs/operate/reference/components/motor/fake.md b/docs/operate/reference/components/motor/fake.md index 6773efc8cf..327a64c593 100644 --- a/docs/operate/reference/components/motor/fake.md +++ b/docs/operate/reference/components/motor/fake.md @@ -17,7 +17,7 @@ For example, you can use a `fake` component as a placeholder while waiting on a {{< tabs name="fake-config">}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `motor` type, then select the `fake` model. Enter a name or use the suggested name for your motor and click **Create**. diff --git a/docs/operate/reference/components/motor/gpio-micro-rdk.md b/docs/operate/reference/components/motor/gpio-micro-rdk.md index 9b9035e495..d9a7d91366 100644 --- a/docs/operate/reference/components/motor/gpio-micro-rdk.md +++ b/docs/operate/reference/components/motor/gpio-micro-rdk.md @@ -26,7 +26,7 @@ Then add your motor: {{< tabs name="gpio-config">}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `motor` type, then select the `gpio` model. Enter a name or use the suggested name for your motor and click **Create**. diff --git a/docs/operate/reference/components/motor/gpio.md b/docs/operate/reference/components/motor/gpio.md index 2cdaa42e43..5e24bcc4b8 100644 --- a/docs/operate/reference/components/motor/gpio.md +++ b/docs/operate/reference/components/motor/gpio.md @@ -33,7 +33,7 @@ Then configure your motor: {{< tabs name="gpio-config">}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `motor` type, then select the `gpio` model. Enter a name or use the suggested name for your motor and click **Create**. diff --git a/docs/operate/reference/components/motor/gpiostepper.md b/docs/operate/reference/components/motor/gpiostepper.md index 64ce8c8f9a..2a376f5e12 100644 --- a/docs/operate/reference/components/motor/gpiostepper.md +++ b/docs/operate/reference/components/motor/gpiostepper.md @@ -25,7 +25,7 @@ Then configure the motor: {{< tabs name="gpiostepper-config">}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `motor` type, then select the `gpiostepper` model. Enter a name or use the suggested name for your motor and click **Create**. diff --git a/docs/operate/reference/components/movement-sensor/accel-adxl345-micro-rdk.md b/docs/operate/reference/components/movement-sensor/accel-adxl345-micro-rdk.md index dbbcd26871..9f06129be0 100644 --- a/docs/operate/reference/components/movement-sensor/accel-adxl345-micro-rdk.md +++ b/docs/operate/reference/components/movement-sensor/accel-adxl345-micro-rdk.md @@ -23,12 +23,12 @@ Then, configure the movement sensor: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `movement-sensor` type, then select the `accel-adxl345` model. Enter a name or use the suggested name for your movement sensor and click **Create**. -{{< imgproc src="/components/movement-sensor/adxl345-builder.png" alt="Creation of an `accel-adxl345` movement sensor in the Viam app config builder." resize="600x" class="shadow" >}} +{{< imgproc src="/components/movement-sensor/adxl345-builder.png" alt="Creation of an `accel-adxl345` movement sensor." resize="600x" class="shadow" >}} Copy and paste the following attribute template into your movement sensor's attributes field. Then remove and fill in the attributes as applicable to your movement sensor, according to the table below. diff --git a/docs/operate/reference/components/movement-sensor/fake.md b/docs/operate/reference/components/movement-sensor/fake.md index cd2a519881..ecb6d3d8aa 100644 --- a/docs/operate/reference/components/movement-sensor/fake.md +++ b/docs/operate/reference/components/movement-sensor/fake.md @@ -20,12 +20,12 @@ Note that this model does not get any actual readings, so it supports these meth {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `movement-sensor` type, then select the `fake` model. Enter a name or use the suggested name for your movement sensor and click **Create**. -{{< imgproc src="/components/movement-sensor/fake-builder.png" alt="Creation of an `fake` movement sensor in the Viam app config builder." resize="1200x" style="width:650px" class="shadow" >}} +{{< imgproc src="/components/movement-sensor/fake-builder.png" alt="Creation of an `fake` movement sensor." resize="1200x" style="width:650px" class="shadow" >}} Edit and fill in the attributes as applicable. diff --git a/docs/operate/reference/components/movement-sensor/gyro-mpu6050-micro-rdk.md b/docs/operate/reference/components/movement-sensor/gyro-mpu6050-micro-rdk.md index 7325fb3766..543a4c6116 100644 --- a/docs/operate/reference/components/movement-sensor/gyro-mpu6050-micro-rdk.md +++ b/docs/operate/reference/components/movement-sensor/gyro-mpu6050-micro-rdk.md @@ -22,12 +22,12 @@ Then, configure the movement sensor: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `movement-sensor` type, then select the `gyro-mpu6050` model. Enter a name or use the suggested name for your movement sensor and click **Create**. -{{< imgproc src="/components/movement-sensor/mpu6050-builder.png" alt="Creation of an `gyro-mpu6050` movement sensor in the Viam app config builder." resize="600x" class="shadow" >}} +{{< imgproc src="/components/movement-sensor/mpu6050-builder.png" alt="Creation of an `gyro-mpu6050` movement sensor." resize="600x" class="shadow" >}} Copy and paste the following attribute template into your movement sensor's attributes field. Then remove and fill in the attributes as applicable to your movement sensor, according to the table below. diff --git a/docs/operate/reference/components/movement-sensor/merged.md b/docs/operate/reference/components/movement-sensor/merged.md index f61c5366a3..5a8119b502 100644 --- a/docs/operate/reference/components/movement-sensor/merged.md +++ b/docs/operate/reference/components/movement-sensor/merged.md @@ -27,17 +27,17 @@ Reference the `name` you configure for each individual component in the `merged` {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `movement-sensor` type, then select the `merged` model. Enter a name or use the suggested name for your movement sensor and click **Create**. -{{< imgproc src="/components/movement-sensor/merged-config-builder.png" alt="Creation of an `merged` movement sensor in the Viam app config builder." resize="1200x" style="width:650px" class="shadow" >}} +{{< imgproc src="/components/movement-sensor/merged-config-builder.png" alt="Creation of an `merged` movement sensor." resize="1200x" style="width:650px" class="shadow" >}} Fill in the attributes as applicable to your movement sensor, according to the table below. For example: -{{< imgproc src="/components/movement-sensor/merged-config-builder-attributes.png" alt="Creation of an `merged` movement sensor with attributes filled in in the Viam app config builder." resize="1200x" style="width:650px" >}} +{{< imgproc src="/components/movement-sensor/merged-config-builder-attributes.png" alt="Creation of an `merged` movement sensor with attributes filled in." resize="1200x" style="width:650px" >}} {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/movement-sensor/wheeled-odometry.md b/docs/operate/reference/components/movement-sensor/wheeled-odometry.md index 1c6fd26d8e..fb7dcfe44b 100644 --- a/docs/operate/reference/components/movement-sensor/wheeled-odometry.md +++ b/docs/operate/reference/components/movement-sensor/wheeled-odometry.md @@ -50,12 +50,12 @@ To prepare your machine, attach [encoders](/operate/reference/components/encoder {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `movement-sensor` type, then select the `wheeled-odometry` model. Enter a name or use the suggested name for your movement sensor and click **Create**. -{{< imgproc src="/components/movement-sensor/wheeled-odometry-builder.png" alt="Creation of an `wheeled-odometry` movement sensor in the Viam app config builder." resize="1200x" style="width:650px" class="shadow" >}} +{{< imgproc src="/components/movement-sensor/wheeled-odometry-builder.png" alt="Creation of an `wheeled-odometry` movement sensor." resize="1200x" style="width:650px" class="shadow" >}} Fill in the attributes as applicable to your movement sensor, according to the table below. diff --git a/docs/operate/reference/components/power-sensor/fake.md b/docs/operate/reference/components/power-sensor/fake.md index 1926e2c91b..fe5857e5dd 100644 --- a/docs/operate/reference/components/power-sensor/fake.md +++ b/docs/operate/reference/components/power-sensor/fake.md @@ -18,12 +18,12 @@ Configure a `fake` power sensor to test implementing a power sensor component on {{< tabs name="Configure a Fake Power Sensor" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `power_sensor` type, then select the `fake` model. Enter a name or use the suggested name for your power sensor and click **Create**. -![Fake power sensor configuration panel in the Viam app. No attributes are configured.](/components/power-sensor/fake-config-builder.png) +![Fake power sensor configuration panel. No attributes are configured.](/components/power-sensor/fake-config-builder.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/sensor/fake.md b/docs/operate/reference/components/sensor/fake.md index 7a25f6016d..783350ba58 100644 --- a/docs/operate/reference/components/sensor/fake.md +++ b/docs/operate/reference/components/sensor/fake.md @@ -18,12 +18,12 @@ Configure a `fake` sensor to test implementing a sensor component on your machin {{< tabs name="Configure a Fake Sensor" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. Select the `sensor` type, then select the `fake` model. Enter a name or use the suggested name for your sensor and click **Create**. -![An example configuration for a fake sensor in the Viam app Config Builder. Attributes are left blank.](/components/sensor/fake-sensor-ui-config.png) +![An example configuration for a fake sensor. Attributes are left blank.](/components/sensor/fake-sensor-ui-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/sensor/ultrasonic-micro-rdk.md b/docs/operate/reference/components/sensor/ultrasonic-micro-rdk.md index 14b15126c5..e9347a0717 100644 --- a/docs/operate/reference/components/sensor/ultrasonic-micro-rdk.md +++ b/docs/operate/reference/components/sensor/ultrasonic-micro-rdk.md @@ -21,12 +21,12 @@ Then, configure the sensor: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `sensor` type, then select the `ultrasonic` model. Enter a name or use the suggested name for your sensor and click **Create**. -![Creation of a ultrasonic sensor in the Viam app config builder.](/build/micro-rdk/ultrasonic/ultrasonic-sensor-ui-config.png) +![Creation of a ultrasonic sensor.](/build/micro-rdk/ultrasonic/ultrasonic-sensor-ui-config.png) Edit and fill in the attributes as applicable to your sensor, according to the table below. Although `"board"` is marked as required in `viam-server`, it is not required for `viam-micro-server` usage. diff --git a/docs/operate/reference/components/servo/fake.md b/docs/operate/reference/components/servo/fake.md index e0375d8c7f..1272c0af35 100644 --- a/docs/operate/reference/components/servo/fake.md +++ b/docs/operate/reference/components/servo/fake.md @@ -18,12 +18,12 @@ Configure a `fake` servo to test implementing a servo component on your machine {{< tabs name="Configure a Fake Servo" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `servo` type, then select the `fake` model. Enter a name or use the suggested name for your servo and click **Create**. -{{< imgproc src="/components/servo/fake-servo-ui-config.png" alt="An example configuration for a fake servo in the Viam app Config Builder." resize="1200x" style="width:650px" class="shadow" >}} +{{< imgproc src="/components/servo/fake-servo-ui-config.png" alt="An example configuration for a fake servo." resize="1200x" style="width:650px" class="shadow" >}} {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/components/servo/gpio-micro-rdk.md b/docs/operate/reference/components/servo/gpio-micro-rdk.md index b65fc0db98..06ad576fc2 100644 --- a/docs/operate/reference/components/servo/gpio-micro-rdk.md +++ b/docs/operate/reference/components/servo/gpio-micro-rdk.md @@ -22,12 +22,12 @@ Then, configure the servo: {{< tabs name="Configure a gpio Servo" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `servo` type, then select the `gpio` model. Enter a name or use the suggested name for your servo and click **Create**. -![An example configuration for a gpio servo in the Viam app Config Builder.](/components/servo/gpio-servo-ui-config.png) +![An example configuration for a gpio servo.](/components/servo/gpio-servo-ui-config.png) Copy and paste the following attribute template into your servo's attributes field. Then remove and fill in the attributes as applicable to your servo, according to the table below. diff --git a/docs/operate/reference/components/servo/gpio.md b/docs/operate/reference/components/servo/gpio.md index f98bd0f62e..3b1c007b23 100644 --- a/docs/operate/reference/components/servo/gpio.md +++ b/docs/operate/reference/components/servo/gpio.md @@ -20,12 +20,12 @@ Then, configure the servo: {{< tabs name="Configure a gpio Servo" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `servo` type, then select the `gpio` model. Enter a name or use the suggested name for your servo and click **Create**. -{{< imgproc src="/components/servo/gpio-servo-ui-config.png" alt="An example configuration for a gpio servo in the Viam app Config Builder." resize="1200x" style="width:650px" class="shadow" >}} +{{< imgproc src="/components/servo/gpio-servo-ui-config.png" alt="An example configuration for a gpio servo." resize="1200x" style="width:650px" class="shadow" >}} Fill in the attributes as applicable to your servo, according to the table below. diff --git a/docs/operate/reference/naming-modules.md b/docs/operate/reference/naming-modules.md index f70699a55a..c56a3eff74 100644 --- a/docs/operate/reference/naming-modules.md +++ b/docs/operate/reference/naming-modules.md @@ -77,9 +77,9 @@ The `viam` namespace is reserved for models provided by Viam. A resource model is identified by a unique name, called the {{< glossary_tooltip term_id="model-namespace-triplet" text="model namespace triplet" >}}, using the format: `namespace:module-name:model-name`, where: -- `namespace` is the namespace of your organization, which you can find or [create](#create-a-namespace-for-your-organization) in your organization settings page in the [Viam app](https://app.viam.com). +- `namespace` is the namespace of your organization, which you can find or [create](#create-a-namespace-for-your-organization) in your organization settings page. - For example, if your organization uses the `acme` namespace, your models must all begin with `acme`, like `acme:module-name:mybase`. - If you do not intend to [upload your module](/operate/get-started/other-hardware/create-module/#upload-your-module) to the [Viam Registry](https://app.viam.com/registry), you do not need to use your organization's namespace as your model's namespace. + If you do not intend to [upload your module](/operate/get-started/other-hardware/create-module/#upload-your-module) to the [registry](https://app.viam.com/registry), you do not need to use your organization's namespace as your model's namespace. - The `viam` namespace is reserved for models provided by Viam. - `module-name` is the name of your module. Your `module-name` should describe the common functionality provided across the model or models provided by that module. diff --git a/docs/operate/reference/prepare/pumpkin.md b/docs/operate/reference/prepare/pumpkin.md index 46242204d8..1c2d337217 100644 --- a/docs/operate/reference/prepare/pumpkin.md +++ b/docs/operate/reference/prepare/pumpkin.md @@ -214,12 +214,12 @@ Configure your board as a [`customlinux`](https://github.com/viam-modules/custom {{< tabs name="Configure a customlinux board" >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `board` type, then select the `customlinux` model. Enter a name or use the suggested name for your `customlinux` board and click **Create**. -[See an example configuration for a pumpkin board using customlinux in the Viam app Config.](https://github.com/viam-modules/customlinux/blob/main/README.md#example-configuration-for-a-pumpkin-board) +[Example configuration for a pumpkin board using customlinux](https://github.com/viam-modules/customlinux/blob/main/README.md#example-configuration-for-a-pumpkin-board) Copy and paste the following json object into your board's attributes field. diff --git a/docs/operate/reference/services/base-rc/_index.md b/docs/operate/reference/services/base-rc/_index.md index 4b90b48223..935ff8da06 100644 --- a/docs/operate/reference/services/base-rc/_index.md +++ b/docs/operate/reference/services/base-rc/_index.md @@ -29,7 +29,7 @@ Control mode is determined by the configuration attribute `"control_mode"`, for 4. `"joystickControl"`: One joystick controls speed and angle 5. `"droneControl"`: Two joysticks control speed and angle -You can monitor the input from these controls in the **CONTROL** tab of the [Viam app](https://app.viam.com). +You can monitor the input from these controls in the **CONTROL** tab. ## Used with @@ -51,7 +51,7 @@ Then, configure the service: {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `base remote control` type. Enter a name or use the suggested name for your service and click **Create**. @@ -69,7 +69,7 @@ Edit the attributes as applicable to your machine, according to the table below. For example: -![An example configuration for a base remote control service in the Viam app Config Builder.](/services/base-rc/base-rc-ui-config.png) +![An example configuration for a base remote control service.](/services/base-rc/base-rc-ui-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} @@ -125,7 +125,7 @@ The base remote control service supports the following methods: The following code examples assume that you have a machine configured with a [base](/operate/reference/components/base/) named `"my_base"`, [input controller](/operate/reference/components/input-controller/) named `"my_controller"`, and base remote control service named `"my_base_rc_service"`. Make sure to add the required code to connect to your machine and import any required packages at the top of your code file. -Go to your machine's **CONNECT** tab on the [Viam app](https://app.viam.com) and select the **Code sample** page for sample code to connect to your machine. +Go to your machine's **CONNECT** tab and select the **Code sample** page for sample code to connect to your machine. {{% /alert %}} diff --git a/docs/operate/reference/services/discovery/_index.md b/docs/operate/reference/services/discovery/_index.md index d3f2f2863c..069badafb1 100644 --- a/docs/operate/reference/services/discovery/_index.md +++ b/docs/operate/reference/services/discovery/_index.md @@ -30,7 +30,7 @@ Users of your module can then: 1. Create a camera with the copy-pasteable configuration snippet for the camera they want to use, with the camera path already filled in. 1. Use the configured camera in their vision service configuration. -To see this in action, see [webcam discovery](/operate/reference/components/camera/webcam/#find-a-video-path-using-a-discovery-service-in-the-viam-app) as an example. +To see this in action, see [webcam discovery](/operate/reference/components/camera/webcam/#find-a-video-path-using-a-discovery-service) as an example. To interact with a discovery service programmatically, use the [discovery service API](/dev/reference/apis/services/discovery/). diff --git a/docs/operate/reference/services/frame-system/_index.md b/docs/operate/reference/services/frame-system/_index.md index 04c1754c40..000f77bcd2 100644 --- a/docs/operate/reference/services/frame-system/_index.md +++ b/docs/operate/reference/services/frame-system/_index.md @@ -39,7 +39,7 @@ It is a mostly static system for storing the "reference frame" of each component You can configure a reference frame within the frame system for each of your machine's components: -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Select **Builder** mode and [configure your arm](/operate/reference/components/arm/#configuration). If you don't have a physical arm, you can use a `fake` model. diff --git a/docs/operate/reference/services/generic/fake.md b/docs/operate/reference/services/generic/fake.md index 189148bb8a..e8b15c9fcc 100644 --- a/docs/operate/reference/services/generic/fake.md +++ b/docs/operate/reference/services/generic/fake.md @@ -16,12 +16,12 @@ Configure a `fake` generic service to test implementing a generic service on you {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** button and select **Component or service**. Select the `generic` type, then select the `fake` model. Enter a name or use the suggested name for your generic service and click **Create**. -![An example configuration for a fake generic service in the Viam app Config Builder.](/services/fake-generic-service-config.png) +![An example configuration for a fake generic service.](/services/fake-generic-service-config.png) {{% /tab %}} {{% tab name="JSON Template" %}} diff --git a/docs/operate/reference/services/motion/_index.md b/docs/operate/reference/services/motion/_index.md index 231ce59b2e..7ff3a4d3c0 100644 --- a/docs/operate/reference/services/motion/_index.md +++ b/docs/operate/reference/services/motion/_index.md @@ -33,7 +33,7 @@ The motion service can: You need to configure frames for your machine's components with the [frame system](/operate/reference/services/frame-system/). This defines the spatial context within which the motion service operates. -The motion service itself is enabled on the machine by default, so you do not need to do any extra configuration in the [Viam app](https://app.viam.com/) to enable it. +The motion service itself is enabled on the machine by default, so you do not need to add any extra configuration to enable it. ## API diff --git a/docs/operate/reference/services/navigation/_index.md b/docs/operate/reference/services/navigation/_index.md index 0f072dfa0d..c43aa7d57c 100644 --- a/docs/operate/reference/services/navigation/_index.md +++ b/docs/operate/reference/services/navigation/_index.md @@ -48,12 +48,12 @@ Then, configure the service: {{< tabs >}} {{% tab name="Config Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `navigation` type. Enter a name or use the suggested name for your service and click **Create**. -{{}} +{{}} Edit the attributes as applicable to your machine, according to the table below. @@ -177,7 +177,7 @@ To make sure your rover base's autonomous GPS navigation with the navigation ser Add [reference frames](/operate/reference/services/frame-system/#configuration) to your rover [base](/operate/reference/components/base/) and [movement sensor](/operate/reference/components/movement-sensor/) configurations: -- Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +- Navigate to the **CONFIGURE** tab of your machine's page. - Find your base configuration card and click **+ Add Frame**. - Since you haven't adjusted any parameters yet, the default reference frame will be shown for your base: @@ -190,7 +190,7 @@ Add [reference frames](/operate/reference/services/frame-system/#configuration) For example, you would configure a box-shaped base with dimensions of 100mm x 100mm x 100mm (l x h x w) as follows: - {{}} + {{}} - Add a frame to your movement sensor configuration by clicking **+ Add Frame**. - Set the `parent` within the frame card to the name of your base. @@ -199,7 +199,7 @@ Add [reference frames](/operate/reference/services/frame-system/#configuration) For example, you would configure a movement sensor mounted 200mm on top of your base as follows: - {{}} + {{}} You can also adjust the `orientation` and `geometry` of your movement sensor or base, if necessary. See [the frame system service](/operate/reference/services/frame-system/) for instructions. @@ -225,11 +225,11 @@ The [navigation service API](/dev/reference/apis/services/navigation/) supports ## Control tab usage -After configuring the navigation service for your machine, navigate to the **CONTROL** tab of the machine's page in the [Viam app](https://app.viam.com) and expand the card matching the name of your service to use an interface for rover navigation. +After configuring the navigation service for your machine, navigate to the **CONTROL** tab of the machine's page and expand the card matching the name of your service to use an interface for rover navigation. Here, you can add waypoints and obstacles and view the position of your rover base on a map: -{{}} +{{}} ## Navigation concepts diff --git a/docs/operate/reference/services/slam/_index.md b/docs/operate/reference/services/slam/_index.md index 26a37d2fcc..ff85464c65 100644 --- a/docs/operate/reference/services/slam/_index.md +++ b/docs/operate/reference/services/slam/_index.md @@ -26,7 +26,7 @@ Breaking changes are likely to occur, and occur often. SLAM is an important area of ongoing research in robotics, particularly for mobile applications such as drones, boats, and rovers. The Viam SLAM service supports the integration of SLAM as a service on your machine. -You can conduct SLAM with data collected live by a [RPlidar](https://github.com/viamrobotics/rplidar) or with LIDAR data you provide in configuration, and easily view the map you build by clicking on **View SLAM library** on your location's page in the [Viam app](https://app.viam.com): +You can conduct SLAM with data collected live by a [RPlidar](https://github.com/viamrobotics/rplidar) or with LIDAR data you provide in configuration, and easily view the map you build by clicking on **View SLAM library** on your location's page: ![Completed SLAM maps in the SLAM library tab](/services/slam/view-map-page.png) diff --git a/docs/operate/reference/services/slam/cartographer/_index.md b/docs/operate/reference/services/slam/cartographer/_index.md index 4c7aed0c1d..be0fbd5e3d 100644 --- a/docs/operate/reference/services/slam/cartographer/_index.md +++ b/docs/operate/reference/services/slam/cartographer/_index.md @@ -96,7 +96,7 @@ To create a new map, follow the instructions below. 2. Set up the `cartographer` module on your machine: - Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). + Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Service**. Select **SLAM**, then select `cartographer`. @@ -121,7 +121,7 @@ To create a new map, follow the instructions below. To save your changes, click the **Save** button in the top right corner of the page. - Check the **LOGS** tab of your machine in the Viam app to make sure your RPlidar has connected and no errors are being raised. + Check the **LOGS** tab of your machine to make sure your RPlidar has connected and no errors are being raised. 3. (Optional) Configure cartographer to use cloudSLAM: diff --git a/docs/operate/reference/services/slam/cloudslam/_index.md b/docs/operate/reference/services/slam/cloudslam/_index.md index b3d89f55fa..3ed29c8d82 100644 --- a/docs/operate/reference/services/slam/cloudslam/_index.md +++ b/docs/operate/reference/services/slam/cloudslam/_index.md @@ -85,7 +85,7 @@ To avoid incurring charges while not in use, [turn off data capture for your sen 1. Add the data management service to your machine: - Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). + Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Choose **Data Management** as the type and either use the suggested name or specify a name for your data management service, for example `data_manager-1`. Click **Create**. @@ -103,7 +103,7 @@ To avoid incurring charges while not in use, [turn off data capture for your sen Then set the capture frequency. `5 Hz` is a good starting place for most applications. - {{}} + {{}} - To capture data from one or more movement sensors: @@ -113,7 +113,7 @@ To avoid incurring charges while not in use, [turn off data capture for your sen For an IMU, choose the `AngularVelocity` and `LinearAcceleration` methods and set the capture frequency. `20 Hz` is a good starting place for most applications. -{{}} +{{}} {{% /tab %}} {{% tab name="Odometry only" %}} @@ -121,7 +121,7 @@ For an IMU, choose the `AngularVelocity` and `LinearAcceleration` methods and se For a movement sensor that supports odometry, choose the `Position` and `Orientation` methods and set the capture frequency. `20 Hz` is a good starting place for most applications. -{{}} +{{}} {{% /tab %}} {{% tab name="Both (merged)" %}} @@ -130,7 +130,7 @@ For a `merged` movement sensor, choose all four methods (`AngularVelocity`, `Lin `20 Hz` is a good starting place for most applications. You _do not_ need to configure data capture on the individual IMU and odometer. -{{}} +{{}} {{% /tab %}} {{< /tabs >}} @@ -138,7 +138,7 @@ You _do not_ need to configure data capture on the individual IMU and odometer. 3. Set up the `cloudslam-wrapper` module on your machine: - Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). + Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select **SLAM**, then select `cloudslam-wrapper`. diff --git a/docs/operate/reference/services/slam/orbslamv3/_index.md b/docs/operate/reference/services/slam/orbslamv3/_index.md index d7eba2f283..9ac1ee1eb0 100644 --- a/docs/operate/reference/services/slam/orbslamv3/_index.md +++ b/docs/operate/reference/services/slam/orbslamv3/_index.md @@ -69,7 +69,7 @@ Now, add the `orbslamv3` service: {{< tabs name="Add the ORBSLAM3 Service Live">}} {{% tab name="Config Builder" %}} -Go to your machine's page on the [Viam app](https://app.viam.com/). +Go to your machine's page. Navigate to the **CONFIGURE** tab on your machine's page, and click the **+** button. Click **Component or service** and add a service with type `slam`, model `orbslamv3`, and a name of your choice. @@ -95,8 +95,7 @@ Paste the following into the attributes field of your new service: {{% /tab %}} {{% tab name="JSON Template" %}} -Go to your machine's page on the [Viam app](https://app.viam.com/). -Navigate to the **CONFIGURE** tab . +Go to your machine's page and navigate to the **CONFIGURE** tab. Select the **JSON** mode, then copy/paste the following `"services"` JSON to add to your existing camera configuration: ```json @@ -178,8 +177,8 @@ If this directory structure is not present at runtime, the SLAM service creates {{< tabs name="Add the ORBSLAM3 Service with Dataset">}} {{% tab name="Config Builder" %}} -Go to your machine's page on the [Viam app](https://app.viam.com/). -Navigate to the **CONFIGURE** tab on your machine's page, and click the **+** button. +Go to your machine's page and navigate to the **CONFIGURE**. +Then click the **+** button. Click **Component or service** and add a service with type `slam`, model `orbslamv3`, and a name of your choice: @@ -203,8 +202,7 @@ Paste the following into the attributes field of your new service: {{% /tab %}} {{% tab name="JSON Template" %}} -Go to your machine's page on the [Viam app](https://app.viam.com/). -Navigate to the **CONFIGURE** tab . +Go to your machine's page and navigate to the **CONFIGURE** tab. Select the **JSON** mode, then copy/paste the following `"services"` JSON to add to your existing camera configuration: ```json diff --git a/docs/operate/reference/services/vision/color_detector.md b/docs/operate/reference/services/vision/color_detector.md index cabd1ccd98..38adddb666 100644 --- a/docs/operate/reference/services/vision/color_detector.md +++ b/docs/operate/reference/services/vision/color_detector.md @@ -35,7 +35,7 @@ If the color is not reliably detected, increase the `hue_tolerance_pct`. {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `vision` type, then select the `color detector` model. Enter a name or use the suggested name for your service and click **Create**. diff --git a/docs/operate/reference/services/vision/detector_3d_segmenter.md b/docs/operate/reference/services/vision/detector_3d_segmenter.md index 628fabe1b3..5a2b6527c2 100644 --- a/docs/operate/reference/services/vision/detector_3d_segmenter.md +++ b/docs/operate/reference/services/vision/detector_3d_segmenter.md @@ -26,7 +26,7 @@ Then, configure the service: {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `vision` type, then select the `detector to 3D segmenter` model. Enter a name or use the suggested name for your service and click **Create**. diff --git a/docs/operate/reference/services/vision/mlmodel.md b/docs/operate/reference/services/vision/mlmodel.md index 4432fd6d0d..46b61ba764 100644 --- a/docs/operate/reference/services/vision/mlmodel.md +++ b/docs/operate/reference/services/vision/mlmodel.md @@ -48,7 +48,7 @@ Once you have deployed your ML model, configure your `mlmodel` detector or class {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `vision` type, then select the `ML model` model. Enter a name or use the suggested name for your service and click **Create**. @@ -146,8 +146,8 @@ Both the `mlmodel` detector and classifier require that the input and output ten - The _input tensor_ must be named `image` - The _output tensor_ must be named `probability` -If you [trained a TFlite ML model using the Viam app](/data-ai/ai/train-tflite/), your `mlmodel` tensors are already named in this fashion, and you can proceed to [test your detector or classifier](#test-your-detector-or-classifier). -However, if you uploaded your own ML model, or are using one from the [Viam Registry](https://app.viam.com/registry), you may need to remap your tensor names to meet this requirement, and should follow the instructions to [remap tensor names](#remap-tensor-names). +If you [trained a TFlite ML model using Viam](/data-ai/ai/train-tflite/), your `mlmodel` tensors are already named in this fashion, and you can proceed to [test your detector or classifier](#test-your-detector-or-classifier). +However, if you uploaded your own ML model, or are using one from the [registry](https://app.viam.com/registry), you may need to remap your tensor names to meet this requirement, and should follow the instructions to [remap tensor names](#remap-tensor-names). #### Remap tensor names @@ -206,7 +206,7 @@ When done, click the **Save** button in the top right corner of the page, then p ## Test your detector or classifier -You can test your detector or classifier with [existing images in the Viam app](#existing-images-in-the-cloud) or [live camera footage](#live-camera-footage). +You can test your detector or classifier with [existing images in the cloud](#existing-images-in-the-cloud) or [live camera footage](#live-camera-footage). You can also test detectors and classifiers with [existing images on a computer](#existing-images-on-your-machine). ### Existing images in the cloud @@ -219,7 +219,7 @@ The feature is only available for classifiers that were uploaded after September {{}} -If you have images stored in the [Viam Cloud](/data-ai/capture-data/capture-sync/), you can run your classifier against your images in the [Viam app](https://app.viam.com/). +If you have images stored in the [Viam Cloud](/data-ai/capture-data/capture-sync/), you can run your classifier against your images. 1. Navigate to the [Data tab](https://app.viam.com/data/view) and click on the **Images** subtab. 2. Click on an image to open the side menu, and select the **Actions** tab under the **Data** tab. @@ -230,7 +230,7 @@ If the classifier's results exceed the confidence threshold, the **Run model** s ### Live camera footage -You can test your detector or classifier from the [**Control tab**](/manage/troubleshoot/teleoperate/default-interface/#viam-app) or with code using a camera that is part of your machine. +You can test your detector or classifier from the [**Control tab**](/manage/troubleshoot/teleoperate/default-interface/#web-ui) or with code using a camera that is part of your machine. #### Test your vision service diff --git a/docs/operate/reference/services/vision/obstacles_depth.md b/docs/operate/reference/services/vision/obstacles_depth.md index 930cc4cd0f..9db29e07e5 100644 --- a/docs/operate/reference/services/vision/obstacles_depth.md +++ b/docs/operate/reference/services/vision/obstacles_depth.md @@ -24,7 +24,7 @@ Then, configure an `obstacles_depth` segmenter: {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Service**. Select the `vision` type, then select the `obstacles depth` model. Enter a name or use the suggested name for your service and click **Create**. diff --git a/docs/operate/reference/services/vision/obstacles_distance.md b/docs/operate/reference/services/vision/obstacles_distance.md index e2036a4229..e005230b5a 100644 --- a/docs/operate/reference/services/vision/obstacles_distance.md +++ b/docs/operate/reference/services/vision/obstacles_distance.md @@ -26,7 +26,7 @@ Then, configure the service: {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `vision` type, then select the `obstacles distance` model. Enter a name or use the suggested name for your service and click **Create**. diff --git a/docs/operate/reference/services/vision/obstacles_pointcloud.md b/docs/operate/reference/services/vision/obstacles_pointcloud.md index de8a69bcbd..7ada64b63e 100644 --- a/docs/operate/reference/services/vision/obstacles_pointcloud.md +++ b/docs/operate/reference/services/vision/obstacles_pointcloud.md @@ -24,7 +24,7 @@ Then, configure the service: {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Service**. Select the `vision` type, then select the `obstacles pointcloud` model. Enter a name or use the suggested name for your service and click **Create**. diff --git a/docs/operate/reference/viam-server/_index.md b/docs/operate/reference/viam-server/_index.md index 941968735f..49f77cafef 100644 --- a/docs/operate/reference/viam-server/_index.md +++ b/docs/operate/reference/viam-server/_index.md @@ -52,7 +52,7 @@ After start-up, `viam-server` manages: ### Reconfiguration -When you or your collaborators change the configuration of a machine in the Viam app, `viam-server` automatically synchronizes the configuration to your machine and updates the running resources within 15 seconds. +When you or your collaborators change the configuration of a machine, `viam-server` automatically synchronizes the configuration to your machine and updates the running resources within 15 seconds. This means you can add, modify, and remove a modular resource instance from a running machine. Reconfiguration of individual resources happens concurrently if there are no configured dependencies for any resources. @@ -275,13 +275,13 @@ Enabling debug level logs will take precedence over all logging configuration se | `-webprofile` | Include profiler in HTTP server. | | `-webrtc` | Force WebRTC connections instead of direct connections. Default: `true`. | -## Install `viam-server` without the Viam app +## Install `viam-server` without the web UI {{% alert title="Tip" color="tip" %}} -The recommended way to install `viam-server` and connect your machine to the Viam app is covered in the [Set up a computer or SBC guide](/operate/get-started/setup/). +The recommended way to install `viam-server` and connect your machine to Viam is covered in the [Set up a computer or SBC guide](/operate/get-started/setup/). {{% /alert %}} -If you need to install `viam-server` without using the Viam app, you can run the following commands. +If you need to install `viam-server` without the web UI, you can run the following commands. {{< tabs >}} {{% tab name="Linux (Aarch64)" %}} diff --git a/docs/operate/reference/viam-server/debug-endpoints.md b/docs/operate/reference/viam-server/debug-endpoints.md index fd22d4e567..1ec7219b3e 100644 --- a/docs/operate/reference/viam-server/debug-endpoints.md +++ b/docs/operate/reference/viam-server/debug-endpoints.md @@ -29,7 +29,7 @@ For more detailed information on using pprof, refer to the [Go pprof documentati To enable the pprof endpoints, set `enable_web_profile` to `true` in your machine configuration: -1. Navigate to the **CONFIGURE** tab of your machine in the Viam app +1. Navigate to the **CONFIGURE** tab of your machine 1. Click on the **...** menu next to your machine part in the left-hand menu 1. Select **Edit JSON** 1. Add the `enable_web_profile` field at the root level of your configuration: diff --git a/docs/operate/reference/viam-server/manage-viam-server.md b/docs/operate/reference/viam-server/manage-viam-server.md index 5f6efb9169..fbe508a11f 100644 --- a/docs/operate/reference/viam-server/manage-viam-server.md +++ b/docs/operate/reference/viam-server/manage-viam-server.md @@ -175,7 +175,7 @@ Follow the manual steps to update the standalone version. {{% tab name="Installed with viam-agent" %}} By default, `viam-agent` automatically upgrades to the latest stable version of `viam-server`. -You can change this behavior in the [`version_control` settings of your machine](/manage/reference/viam-agent/#version_control-version-management-for-viam-agent-and-viam-server) in the [Viam app](https://app.viam.com/). +You can change this behavior in the [`version_control` settings of your machine](/manage/reference/viam-agent/#version_control-version-management-for-viam-agent-and-viam-server). For example, the following `version_control` configuration will always update to the latest stable release of `viam-agent` and the latest development release of `viam-server`: ```json {class="line-numbers linkable-line-numbers" data-line=""} @@ -235,7 +235,7 @@ We recommend running `brew upgrade viam-server` on a regular basis. {{< tabs >}} {{% tab name="Installed with viam-agent" %}} -To disable automatic updates, configure the [`version_control` settings of your machine](/manage/reference/viam-agent/#version_control-version-management-for-viam-agent-and-viam-server) in the [Viam app](https://app.viam.com/) to a specific version number. +To disable automatic updates, configure the [`version_control` settings of your machine](/manage/reference/viam-agent/#version_control-version-management-for-viam-agent-and-viam-server) to a specific version number. For example, the following `version_control` configuration pins `viam-server` to version `0.52.1`, preventing `viam-server` from updating to a more recent version: ```json {class="line-numbers linkable-line-numbers" data-line=""} @@ -281,7 +281,7 @@ To resume automatic update checking, delete the leading `#` character in / Use the following commands to view these log messages locally on your system. {{< alert title="Tip" color="tip" >}} -If your system is able to connect with the Viam app, you can also view logs in the **LOGS** tab on the [Viam app](https://app.viam.com/). +If your system is able to connect to Viam, you can also view logs in the **LOGS** tab. {{< /alert >}} Select the tab below for your platform: @@ -359,7 +359,7 @@ sudo rm /etc/viam.json {{< alert title="Caution" color="caution" >}} If you remove the machine cloud credentials file you will not be able to connect to your machine. -You can only restore this file if you have access to the machine configuration in the Viam app. +You can only restore this file if you have access to the machine configuration. {{< /alert >}} To remove various Viam caches and logs for the root (service) user, run: diff --git a/docs/tutorials/configure/build-a-mock-robot.md b/docs/tutorials/configure/build-a-mock-robot.md index a1aef951d3..57b9f49f9f 100644 --- a/docs/tutorials/configure/build-a-mock-robot.md +++ b/docs/tutorials/configure/build-a-mock-robot.md @@ -9,7 +9,7 @@ videos: "/tutorials/build-a-mock-robot/mock-robot.mp4", ] images: ["/tutorials/build-a-mock-robot/mock-robot.gif"] -videoAlt: "A mock arm's joint positions from the control tab of the Viam app." +videoAlt: "A mock arm's joint positions from the control tab." aliases: - "/tutorials/build-a-mock-robot/" - "/tutorials/how-to-build-a-mock-robot/" @@ -29,7 +29,7 @@ toc_hide: true After following this tutorial, you will know how to use fake components to prototype a project without needing any hardware components. You will also know how to swap out your fake components for real components when you are ready to do so. Notes: -Imagine you are designing a robot with an arm and a camera. You have ordered the arm on backorder and you'll receive it in 2 months. In the meantime, you want to write and test code that you'll use to control the arm based on what the camera sees..."Have readers configure a fake arm, and either a fake or real camera. Have readers write code to do something interesting, and test it using the control tab. Then, have readers reconfigure it once the "arm arrives," demonstrating how you can swap fake for real without touching your code. Then, say you decide to change to a different arm, or make a second machine with a different arm. Demonstrate or at least mention that you use the same code for that arm too. +Imagine you are designing a machine with an arm and a camera. You have ordered the arm on backorder and you'll receive it in 2 months. In the meantime, you want to write and test code that you'll use to control the arm based on what the camera sees..."Have readers configure a fake arm, and either a fake or real camera. Have readers write code to do something interesting, and test it using the control tab. Then, have readers reconfigure it once the "arm arrives," demonstrating how you can swap fake for real without touching your code. Then, say you decide to change to a different arm, or make a second machine with a different arm. Demonstrate or at least mention that you use the same code for that arm too. Rename to something like Prototype and iterate. --> In this tutorial you will build a mock robot to learn how to configure {{< glossary_tooltip term_id="machine" text="smart machines" >}} with Viam. @@ -47,7 +47,7 @@ You'll need the following hardware and software for this tutorial: - A computer running Linux or macOS - [Go](https://go.dev/doc/install) or [Python 3.9+](https://www.python.org/downloads/) -If you don't already have a Viam account, sign up for one on the [Viam app](https://app.viam.com). +If you don't already have a Viam account, sign up on [Viam](https://app.viam.com). {{% snippet "setup.md" %}} @@ -58,7 +58,7 @@ If you don't already have a Viam account, sign up for one on the [Viam app](http If you were using physical hardware, this process would provide `viam-server` with information about what hardware is attached to it and how to communicate with it. For this robot, you configure `viam-server` to use `fake` components that emulate physical hardware. -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 2. Configure a [fake board component](/operate/reference/components/board/fake/): - Click the **+** (Create) icon next to your machine part in the left-hand menu and select **Component or service**. @@ -74,7 +74,7 @@ For this robot, you configure `viam-server` to use `fake` components that emulat - Make your fake arm act like a [UR5e](https://www.universal-robots.com/products/ur5-robot/) by setting the attribute **arm-model** to `ur5e`. The config panel should look like this: - {{< imgproc src="/tutorials/build-a-mock-robot/create-arm.png" alt="A fake arm being configured in Builder mode in the Viam app CONFIGURE tab." resize="600x" >}} + {{< imgproc src="/tutorials/build-a-mock-robot/create-arm.png" alt="A fake arm being configured in Builder mode on the CONFIGURE tab." resize="600x" >}} - Click **Save** in the top right of the window to save your config. @@ -91,9 +91,9 @@ For this robot, you configure `viam-server` to use `fake` components that emulat You will need to reference the component names later when you connect to your mock robot with code. -## Control your mock robot using the Viam app +## Control your mock robot using the web UI -When you add components to your machine, the Viam app automatically generates a UI for them under the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app): +When you add components to your machine, Viam automatically generates a UI for them under the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui): {{< imgproc src="/tutorials/build-a-mock-robot/control-tab.png" alt="The Control tab with the fake arm, and motor components." resize="600x" >}} @@ -119,11 +119,11 @@ Refer to the appropriate SDK documentation for SDK installation instructions: The easiest way to get started writing an application with Viam's SDKs is to use the sample code on the **CONNECT** tab. -Navigate to your [machine's page on the Viam app](https://app.viam.com/robots), select the **Code sample** page on the **CONNECT** tab, select your SDK language (this tutorial uses Python or Go), and copy the sample code. +Navigate to your [machine's page](https://app.viam.com/robots), select the **Code sample** page on the **CONNECT** tab, select your SDK language (this tutorial uses Python or Go), and copy the sample code. {{% snippet "show-secret.md" %}} -This code snippet imports all the necessary libraries, is pre-populated with your machine cloud credentials, and sets up a connection with the Viam app in the cloud. +This code snippet imports all the necessary libraries, is pre-populated with your machine cloud credentials, and sets up a connection with Viam in the cloud. Next, paste that sample code into a file named index.py or index.go in your code editor, and save your file locally. You can now run the code. @@ -148,9 +148,9 @@ go run index.go {{% /tab %}} {{< /tabs >}} -If you successfully configured your machine and it is able to connect to the Viam app you should see the program print a list of the various _{{< glossary_tooltip term_id="resource" text="resources" >}}_ that have been configured on your machine in the Viam app: +If you successfully configured your machine and it is able to connect to Viam you should see the program print a list of the various _{{< glossary_tooltip term_id="resource" text="resources" >}}_ that have been configured on your machine: -![Command line output from running python3 index.py when your Raspberry Pi has correctly connected and initialized with the Viam app. The output is an array of resources that have been pulled from the Viam app. The list includes the motion service, arm component, data manager, board component and motor component. There is also a list of arm position and orientation values.](/tutorials/build-a-mock-robot/resource-output.png) +![Command line output from running python3 index.py when your Raspberry Pi has correctly connected and initialized. The output is an array of resources that have been pulled from Viam. The list includes the motion service, arm component, data manager, board component and motor component. There is also a list of arm position and orientation values.](/tutorials/build-a-mock-robot/resource-output.png) ### Control your mock robot @@ -304,11 +304,11 @@ func main() { Now when you run this code, you should see the new mock arm positions listed in the command line. -Verify that your mock robotic arm is working in the **CONTROL** tab of the [Viam app](https://app.viam.com). +Verify that your mock robotic arm is working on the machine's **CONTROL** tab. Watch the robotic arm's [`JointPositions()`](/dev/reference/apis/components/arm/#getjointpositions) changing in real-time along with the code on your development machine.
- {{}} + {{}}
## Configure your machine's mock sub-part @@ -329,9 +329,9 @@ By utilizing {{< glossary_tooltip term_id="part" text="parts" >}}, you can expan - You can access any sub-part either directly, or through any part above it in the tree. - Each part runs a single `viam-server` instance. -### Add a new sub-part in the Viam app +### Add a new sub-part -Navigate to the **CONFIGURE** tab of your machine's page on the Viam app. +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** (Create) icon next to your main machine part in the left-hand menu and select **Sub-part**. Your sub-part will automatically be created with a name like `your-machine-name-1`: @@ -377,7 +377,7 @@ Select the platform you want to run `viam-server` on and follow the instructions Now that you have two instances of `viam-server` running on your local machine, you should be able to see both your main robot arm and your new mock sub motor listed on your main machine's **CONTROL** tab. -{{< imgproc src="/tutorials/build-a-mock-robot/control-all.png" alt="Screenshot of the Viam app's CONTROL tab for the main part that lists the main arm, and the sub part motor component." resize="800x" style="width:600px" >}} +{{< imgproc src="/tutorials/build-a-mock-robot/control-all.png" alt="CONTROL tab for the main part that lists the main arm, and the sub part motor component." resize="800x" style="width:600px" >}} To test that your motor sub-part has been added to your machine, run your Python or Go script again. Review the output of your program that prints the machine's resources to see your sub-part's motor's name listed. @@ -489,7 +489,7 @@ func main() { {{% /tab %}} {{< /tabs >}} -Run this code to see your mock sub-part's motor toggling between running and idle in real time from the Viam app! +Run this code to see your mock sub-part's motor toggling between running and idle in real time! {{}} diff --git a/docs/tutorials/configure/configure-rover.md b/docs/tutorials/configure/configure-rover.md index 2d03917a6b..b38a9aaaae 100644 --- a/docs/tutorials/configure/configure-rover.md +++ b/docs/tutorials/configure/configure-rover.md @@ -340,10 +340,10 @@ Click the **+** icon next to your machine part in the left-hand menu and select Select the `camera` type, then select the `webcam` model. Enter a name or use the suggested name for your camera and click **Create**. -{{< imgproc src="/components/camera/configure-webcam.png" alt="Configuration of a webcam camera in the Viam app config builder." resize="1200x" style="width=600x" >}} +{{< imgproc src="/components/camera/configure-webcam.png" alt="Configuration of a webcam camera." resize="1200x" style="width=600x" >}} Leave the **video_path** blank and the camera will use the default video path for your machine. -If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the Viam app. +If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the camera's configuration panel. {{% /tab %}} {{% tab name="JSON" %}} @@ -422,7 +422,7 @@ Enter a name or use the suggested name for your base and click **Create**. {{% /tab %}} {{< /tabs >}} -{{< imgproc src="/components/base/wheeled-base-ui-config.png" alt="An example configuration for a wheeled base in the Viam app config builder, with Attributes & Depends On dropdowns and the option to add a frame." resize="1200x" style="width: 900px" >}} +{{< imgproc src="/components/base/wheeled-base-ui-config.png" alt="An example configuration for a wheeled base, with Attributes & Depends On dropdowns and the option to add a frame." resize="1200x" style="width: 900px" >}} {{% /tab %}} {{% tab name="JSON" %}} diff --git a/docs/tutorials/configure/pet-photographer.md b/docs/tutorials/configure/pet-photographer.md index df85c9a81b..76d1444851 100644 --- a/docs/tutorials/configure/pet-photographer.md +++ b/docs/tutorials/configure/pet-photographer.md @@ -2,7 +2,7 @@ title: "Pet Photographer: Create a Data Filtering Module" linkTitle: "Pet Photographer" type: "docs" -description: "Use the filter modular component in the Viam app to photograph your pet in their collar." +description: "Use the filter modular component to photograph your pet in their collar." tags: ["vision", "filter", "camera", "detector", "services"] imageAlt: "Filtered data from the custom colorfiltercam in the DATA tab showing only photos of a dog wearing a blue collar" images: ["/tutorials/pet-photographer/data-capture.png"] @@ -814,7 +814,7 @@ Note the absolute path to your module’s executable for use in the next section Whether you've downloaded the `colorfilter` module, or written your own color filtering module, the next step is to add the module to your smart machine as a local module: -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com/robots). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** (Create) button next to your main part in the left-hand menu and select **Local module**, then **Local module**. 1. Enter a name or use the suggested name for your local module, enter the [module's executable path](/operate/get-started/other-hardware/create-module/#test-your-module-locally), then click **Create**. @@ -880,7 +880,7 @@ If you have a different item you want to use, or want to match to a color that m {{< tabs >}} {{% tab name="Config Builder" %}} -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 1. Select the `vision` type, then select the `color detector` model. 1. Enter a name or use the suggested name for your color detector. @@ -936,7 +936,7 @@ If you haven't already, add a [camera](/operate/reference/components/camera/) co Click **Create**. 1. Leave the **video_path** blank and the camera will use the default video path for your machine. - If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the Viam app. + If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the camera's configuration panel. 1. Click **Save** in the top right corner of the screen to save your changes. diff --git a/docs/tutorials/control/air-quality-fleet.md b/docs/tutorials/control/air-quality-fleet.md index 9ec93ec74b..875b2a214f 100644 --- a/docs/tutorials/control/air-quality-fleet.md +++ b/docs/tutorials/control/air-quality-fleet.md @@ -53,9 +53,9 @@ Make sure all of your sensors are wired to your SBC before starting this tutoria ## Decide how you will organize your fleet -Before you start connecting your devices to the Viam app, you'll need to decide how you want to group your devices. +Before you start connecting your devices to Viam, you'll need to decide how you want to group your devices. -In the Viam app, {{< glossary_tooltip term_id="machine" text="machines" >}} are grouped into _locations_, and locations are grouped into _organizations_: +On Viam, {{< glossary_tooltip term_id="machine" text="machines" >}} are grouped into _locations_, and locations are grouped into _organizations_: - Each location can represent either a physical location or some other conceptual grouping. - An organization is the highest level grouping, and often contains all the locations (and machines) of an entire company. @@ -75,7 +75,7 @@ Imagine you create an air quality monitoring company called Pollution Monitoring Anyone can sign up and order one of your sensing machines. When a new customer signs up, you assemble a new machine with a sensor, SBC, and power supply. -Before shipping the sensor machine to your new client, you connect the machine to the Viam app and configure it. +Before shipping the sensor machine to your new client, you connect the machine to Viam and configure it. To manage all your company's air quality sensing machines together, you create one organization called Pollution Monitoring Made Simple. Inside that organization, you create a location for each customer. You have some individual customers, for example Antonia, who have a sensor machine in their home, or perhaps one inside and one outside. @@ -91,10 +91,9 @@ You, as the organization owner, will be able to manage any necessary configurati ### Organize your fleet For this tutorial, we will walk through how to set up your fleet based on the example above. -You can choose to manage your fleet of machines differently based on what makes sense for your use case; if you're only configuring one or two sensors for personal use, feel free to add all your machines to one location and skip to the [next section](#connect-your-machines-to-the-viam-app). +You can choose to manage your fleet of machines differently based on what makes sense for your use case; if you're only configuring one or two sensors for personal use, feel free to add all your machines to one location and skip to the [next section](#connect-your-machines-to-viam). -1. Navigate to the [Viam app](https://app.viam.com) in a web browser. - Create an account and log in. +1. Create a Viam account and log into [Viam](https://app.viam.com). 1. Click the dropdown in the upper-right corner of the **FLEET** page and use the **+** button to create a new organization for your air quality machine company. Name the organization and click **Create**. 1. Click **FLEET** in the upper-left corner of the page and click **LOCATIONS**. @@ -120,7 +119,7 @@ You can choose to manage your fleet of machines differently based on what makes In the next section, you'll add machines to the locations. -## Connect your machines to the Viam app +## Connect your machines to Viam With your organizational structure in place, let's add some machines: @@ -139,8 +138,8 @@ With your organizational structure in place, let's add some machines: Click **View setup instructions**. You can find these instructions later if you need them by clicking the part status indicator (which currently reads **Awaiting setup**). -1. Follow the **Set up your machine part** instructions to install `viam-server` on the machine and connect it to the Viam app. - `viam-server` is the binary that runs on the single-board computer (SBC), providing functionality including sensor data collection and connection to the Viam app. +1. Follow the **Set up your machine part** instructions to install `viam-server` on the machine and connect it to Viam. + `viam-server` is the binary that runs on the single-board computer (SBC), providing functionality including sensor data collection and connection to Viam. The setup page will indicate when the machine is successfully connected. @@ -153,7 +152,7 @@ If you are following along for the RobotsRUs business from our example, create a {{% alert title="Note" color="note" %}} If this were a real company and you were shipping air sensing machines to customers, you would have the customer plug in power to the machine wherever they are setting it up. -Since you already installed `viam-server`, once a customer connects the machine to power and sets up wifi, the machine will automatically re-connect to the Viam app and pull any configuration updates. +Since you already installed `viam-server`, once a customer connects the machine to power and sets up wifi, the machine will automatically re-connect to Viam and pull any configuration updates. {{% /alert %}} For each sensing machine: @@ -191,7 +190,7 @@ Once you understand how to configure machines and use fragments, you can use [Pr #### Configure the sensor -1. Navigate to the **CONFIGURE** tab of the machine details page in the [Viam app](https://app.viam.com) for your first machine. +1. Navigate to the **CONFIGURE** tab of the machine details page for your first machine. 2. Click the **+** (Create) button and click **Component or service** from the dropdown. Click **sensor**, then search for `sds011` and click **sds001:v1** from the results. 3. Click **Add module**. @@ -264,7 +263,7 @@ If you are only using one air quality sensing machine for this tutorial, you do You can skip to [Test your sensors](#test-your-sensors). {{% /alert %}} -While you configured your machine with the builder UI, the Viam app generated a JSON configuration file with all your parameters. +While you configured your machine with the builder UI, Viam generated a JSON configuration file with all your parameters. This is the file that tells `viam-server` what resources are available to it and how everything is connected. Click **JSON** in the upper-left corner of the **CONFIGURE** tab to view the generated JSON file. You can manually edit this file instead of using the builder UI if you are familiar with JSON. @@ -302,7 +301,7 @@ Add the fragment you just created to each of your machines including the first o Now that all your hardware is configured, it's a good idea to make sure readings are being gathered by the sensors and sent to the cloud before proceeding with the tutorial. For each machine: -1. Go to the machine details page in the [Viam app](https://app.viam.com.) and navigate to the **CONTROL** tab. +1. Go to the machine details page and navigate to the **CONTROL** tab. 2. Within the **Sensors** section, click **Get Readings** for the **PM_sensor**. If the sensor software and hardware is working, you should see values populate the **Readings** column. @@ -365,7 +364,7 @@ The [Viam TypeScript SDK](https://ts.viam.dev/) allows you to build custom web i For this project, you'll use it to build a page that displays air quality sensor data for a given location. You'll host the website locally on your personal computer, and view the interface in a web browser on that computer. -As you'll find out in the [authentication step](#authenticate-your-code-to-your-viam-app-location), you can set each customer up with credentials to access the data from only their location, or you can create a dashboard showing data from all sensors in your entire organization. +As you'll find out in the [authentication step](#authenticate-your-code-to-your-location), you can set each customer up with credentials to access the data from only their location, or you can create a dashboard showing data from all sensors in your entire organization. ![The air quality dashboard you'll build. This one has PM2.5 readings from two different sensor machines displayed, and a key with categories of air quality.](/tutorials/air-quality-fleet/two-sensors.png) @@ -413,7 +412,7 @@ The `--format=esm` flag in the `"start"` script is important because the ECMAScr If you don't know what the proceeding sentence means, don't worry about it; just copy-paste the JSON above and it'll work. {{% /alert %}} -### Authenticate your code to your Viam app location +### Authenticate your code to your location Your TypeScript code requires an API key to establish a connection to your machines. You can set up credentials to access data from all the sensor machines in your organization, or from just one location. @@ -465,7 +464,7 @@ The following instructions describe how to set up an API key for one location. 1. Now you need to get the API key and the {{< glossary_tooltip term_id="organization" text="organization" >}} and {{< glossary_tooltip term_id="location" text="location" >}} IDs to replace the placeholder strings in the code you just pasted. - In the [Viam app](https://app.viam.com), navigate to the location page for the location containing your air quality machines. + Navigate to the location page for the location containing your air quality machines. ![The location secret with a Copy button next to it.](/tutorials/air-quality-fleet/loc-secret-button.png) diff --git a/docs/tutorials/control/control-motor.md b/docs/tutorials/control/control-motor.md index 84543aa67d..a5399240a7 100644 --- a/docs/tutorials/control/control-motor.md +++ b/docs/tutorials/control/control-motor.md @@ -60,18 +60,18 @@ Follow these steps to control your motor: {{< expand "Step 1: Create a machine" >}} -Add a new machine in the [Viam app](https://app.viam.com). +Add a new machine. -![The 'My Desk' page on the Viam app with a new machine name in the New machine field and the Add machine button next to the field highlighted.](/get-started/quickstarts/add-machine.png) +![The 'My Desk' page with a new machine name in the New machine field and the Add machine button next to the field highlighted.](/get-started/quickstarts/add-machine.png) {{< /expand >}} {{< expand "Step 2: Install viam-server or viam-micro-server" >}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} that appear on your new machine's **CONFIGURE** page. If you are using a microcontroller, install `viam-micro-server`. Otherwise, install `viam-server`. -Wait for your device to connect to the Viam app. +Wait for your device to connect to Viam. {{< /expand >}} {{< expand "Step 3: Configure a board" >}} @@ -96,7 +96,7 @@ Add a `motor` component that supports the type of motor and motor driver you're Look through the [**Supported Models**](/operate/reference/components/motor/#configuration) to determine the model of component to configure. For example, if you are using a standard DC motor (brushed or brushless) wired to a typical GPIO pin-controlled motor driver, configure a [`gpio` motor](/operate/reference/components/motor/gpio/): -![The CONFIGURE tab of the Viam app populated with a configured gpio motor.](/get-started/quickstarts/configure-motor.png) +![The CONFIGURE tab populated with a configured gpio motor.](/get-started/quickstarts/configure-motor.png) Follow the motor driver manufacturer's data sheet to wire your motor driver to your board and to your motor. Follow the [model's documentation](/operate/reference/components/motor/) to configure the attributes so that the computer can send signals to the motor. @@ -108,15 +108,15 @@ For the `fake` model, there are no required attributes. {{< /expand >}} {{< expand "Step 5: Choose how you will control the motor" >}} -You can control your motor directly from the Viam app, using the mobile app, or programmatically. +You can control your motor directly using the web UI, the mobile app, or the SDKs. ### Option 1: Control from the app -Navigate to your machine's **CONTROL** tab in the Viam app and click on the motor panel. +Navigate to your machine's **CONTROL** tab and click on the motor panel. Then use the **Power %** slider to set the motor's speed. Use the **Backwards** and **Forwards** buttons to change the direction. -{{}} +{{}} ### Option 2: Control from the mobile app diff --git a/docs/tutorials/control/drive-rover.md b/docs/tutorials/control/drive-rover.md index 038b7ba221..79be66ea9b 100644 --- a/docs/tutorials/control/drive-rover.md +++ b/docs/tutorials/control/drive-rover.md @@ -57,7 +57,7 @@ You only need the following: ## Instructions -Follow these steps to get your rover ready inside the Viam app and write code to control it: +Follow these steps to get your rover ready and write code to control it: {{< tabs >}} {{% tab name="Borrowed Try Viam Rover" %}} @@ -156,7 +156,7 @@ python3 square.py ``` The program prints an array of resources. -These are the components and services that the machine is configured with in the Viam app. +These are the components and services that the machine is configured with on Viam. ```sh {class="command-line" data-prompt="$" data-output="2-75"} python3 square.py @@ -183,7 +183,7 @@ go run square.go ``` The program prints an array of resources. -These are the components and services that the machine is configured with in the Viam app. +These are the components and services that the machine is configured with on Viam. ```sh {class="command-line" data-prompt="$" data-output="2-10"} go run square.go @@ -257,8 +257,7 @@ Add the following markup: We recommend you open the developer tools in your browser to see logs.

- Also open a second window with the - Viam app and navigate to your rover's + Also open a second window with the your rover's CONTROL tab, which allows you to interact with your rover's resources. Click on one of the camera panels and toggle the camera stream on so you can observe the rover's movements. @@ -282,8 +281,8 @@ npm start Open a web browser and visit `localhost:8000`. You should see a disabled button that says `Click me to drive rover in square`. Open the developer console to see the console output. -If you successfully configured your machine and it is able to connect to the Viam app, you will see some output including the names of your rover's resources. -These are the components and services that the machine is configured with in the Viam app. +If you successfully configured your machine and it is able to connect to Viam, you will see some output including the names of your rover's resources. +These are the components and services that the machine is configured with on Viam. {{< /tab >}} {{% tab name="Flutter" %}} @@ -310,7 +309,7 @@ ninja all ``` The program prints an array of resources. -These are the components and services that the machine is configured with in the Viam app. +These are the components and services that the machine is configured with on Viam. ```sh {class="command-line" data-prompt="$" data-output="2-20"} ./src/viam/examples/camera/example_camera @@ -427,7 +426,7 @@ func main() { logger := logging.NewLogger("client") machine, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(rpc.WithEntityCredentials( /* Replace "" (including brackets) with your machine's api key id */ @@ -765,7 +764,7 @@ If you have a different base name, update the name in your code. ```cpp {class="line-numbers linkable-line-numbers" data-line="19-31"} int main() { - std::string host("ADDRESS FROM THE VIAM APP"); + std::string host("MACHINE ADDRESS"); DialOptions dial_opts; // Replace "" with your machine's api key ID dial_opts.set_entity(std::string("")); @@ -842,7 +841,7 @@ async def connect(): # API key ID api_key_id='' ) - return await RobotClient.at_address('ADDRESS FROM THE VIAM APP', opts) + return await RobotClient.at_address('MACHINE ADDRESS', opts) async def moveInSquare(base): @@ -898,7 +897,7 @@ func main() { logger := logging.NewLogger("client") machine, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(utils.WithEntityCredentials( // Replace "" (including brackets) with your machine's API key ID @@ -967,8 +966,7 @@ func main() { We recommend you open the developer tools in your browser to see logs.

- Also open a second window with the - Viam app and navigate to your rover's + Also open a second window and navigate to your rover's CONTROL tab, which allows you to interact with your rover's resources. Click on one of the camera panels and toggle the camera stream on so you can observe the rover's movements. @@ -1220,7 +1218,7 @@ void move_in_square(std::shared_ptr base) { } int main() { - std::string host("ADDRESS FROM THE VIAM APP"); + std::string host("MACHINE ADDRESS"); DialOptions dial_opts; // Replace "" with your machine's api key ID dial_opts.set_entity(std::string("")); diff --git a/docs/tutorials/control/flutter-app.md b/docs/tutorials/control/flutter-app.md index 880c3430de..0e9863bb31 100644 --- a/docs/tutorials/control/flutter-app.md +++ b/docs/tutorials/control/flutter-app.md @@ -29,7 +29,7 @@ Notes:

Flutter is Google's user interface toolkit for building applications for mobile, web, and desktop from a single codebase. -If you're looking to monitor and control individual machines with the same functionality you have on the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app), you can use the general-purpose [Viam mobile app](/manage/troubleshoot/teleoperate/default-interface/#viam-mobile-app) rather than creating your own. +If you're looking to monitor and control individual machines with the same functionality you have on the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui), you can use the general-purpose [Viam mobile app](/manage/troubleshoot/teleoperate/default-interface/#viam-mobile-app) rather than creating your own. If you need custom functionality or a custom interface, you can use Viam's [Flutter SDK](https://flutter.viam.dev/) to build a custom app to interact with your machines that run on Viam. This tutorial guides you through creating a mobile app that shows your machines and their components. @@ -43,7 +43,7 @@ As you work through this project you will learn the following: You do not need any hardware for this tutorial other than a computer running macOS or a 64-bit Linux operating system. -This tutorial assumes you already have a machine [configured](/operate/get-started/setup/) on the [Viam app](https://app.viam.com). +This tutorial assumes you already have a machine [configured](/operate/get-started/setup/). ## Set up your Flutter development environment @@ -289,7 +289,7 @@ Follow the steps below to build and preview the current state of your app. Great work so far! Your app is successfully running, with a single screen and an inactive button. -Next, you will add a new screen that pulls in some information from your {{< glossary_tooltip term_id="organization" text="organization" >}} in the Viam app. +Next, you will add a new screen that pulls in some information from your {{< glossary_tooltip term_id="organization" text="organization" >}}. This new screen will be accessed from the login button. In the VS Code file explorer on the left-hand side, right click lib/ and click **New File**, then name the new file home_screen.dart. @@ -391,7 +391,7 @@ Follow the steps below to get your API key and create an environment variables f API_KEY="PASTE YOUR API KEY HERE" ``` -2. Go to the [Viam app](https://app.viam.com) and log in. +2. Log into [Viam](https://app.viam.com). 3. Click the organization dropdown menu on the right side of the top banner. If you're not already in the organization you want to connect to, click the correct organization name to navigate to it. diff --git a/docs/tutorials/control/gamepad.md b/docs/tutorials/control/gamepad.md index c302351dcb..e2b849c45d 100644 --- a/docs/tutorials/control/gamepad.md +++ b/docs/tutorials/control/gamepad.md @@ -37,7 +37,7 @@ After following this tutorial, you will be able to use the input controller comp You will need the following hardware to complete this tutorial: -- A wheeled rover, configured with a [base component](/operate/reference/components/base/) on the [Viam app](https://app.viam.com/). +- A wheeled rover, configured with a [base component](/operate/reference/components/base/). This tutorial uses a [SCUTTLE rover](https://www.scuttlerobot.org/shop/) as an example but you can complete this tutorial using a Yahboom 4WD Smart Robot or an entirely different rover. - For a tutorial on configuring your rover, see [Configure a Rover](/tutorials/configure/configure-rover/). - [EasySMX ESM-9101 Wireless Controller](https://www.amazon.com/Wireless-Controller-EasySMX-ESM-9101-Gamepad/dp/B07F1NLGW2?th=1) or a similar gamepad and dongle. @@ -83,7 +83,7 @@ If you would like a stronger understanding of `bluetoothctl` and managing Blueto ## Add the controller to the rover's config -Go to your rover's **CONFIGURE** tab on the [Viam app](https://app.viam.com/). +Go to your rover's **CONFIGURE** tab. {{< tabs >}} {{% tab name="Config Builder" %}} @@ -94,7 +94,7 @@ Click the **+** icon next to your machine part in the left-hand menu and select Select the `input_controller` type, then select the `gamepad` model. Enter a name or use the suggested name for your input controller and click **Create**. -![An example configuration for a linux-based gamepad input controller component in the Viam App config builder](/components/input-controller/gamepad-input-controller-ui-config.png) +![An example configuration for a linux-based gamepad input controller component](/components/input-controller/gamepad-input-controller-ui-config.png) You can set the `auto_reconnect` attribute to `true`. @@ -146,7 +146,7 @@ In your base remote control service's configuration panel, copy and paste the fo For example: -![An example configuration for a base remote control service in the Viam app Config Builder.](/services/base-rc/base-rc-ui-config.png) +![An example configuration for a base remote control service.](/services/base-rc/base-rc-ui-config.png) {{% /tab %}} {{% tab name="Raw JSON" %}} @@ -211,7 +211,7 @@ Here is a diagram of the gamepad. To change the movement/direction control on the gamepad between the D-pad and the joystick, press and hold the Home button (#11) until it displays the lighted segment combination for the gamepad configuration you need. -Each red color arrangement allows you to control the gamepad in the Viam app: +Each red color arrangement allows you to control the gamepad: - + diff --git a/static/include/program/authenticate.md b/static/include/program/authenticate.md index bbcc2e101a..7cf87c7340 100644 --- a/static/include/program/authenticate.md +++ b/static/include/program/authenticate.md @@ -19,7 +19,7 @@ async def connect(): # ID api_key_id='' ) - return await RobotClient.at_address('ADDRESS FROM THE VIAM APP', opts) + return await RobotClient.at_address('MACHINE ADDRESS', opts) ``` {{% /tab %}} @@ -28,7 +28,7 @@ async def connect(): ```go {class="line-numbers linkable-line-numbers" data-line="3,7,11"} robot, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(rpc.WithEntityCredentials( // Replace "" (including brackets) with your machine's API key ID @@ -46,7 +46,7 @@ robot, err := client.New( ```ts {class="line-numbers linkable-line-numbers" data-line="2,9,11"} // Replace with the host of your actual machine running Viam. -const host = "ADDRESS FROM THE VIAM APP"; +const host = "MACHINE ADDRESS"; const robot = await VIAM.createRobotClient({ host, @@ -65,7 +65,7 @@ const robot = await VIAM.createRobotClient({ {{% tab name="C++" %}} ```cpp {class="line-numbers linkable-line-numbers" data-line="1,5,7"} -std::string host("ADDRESS FROM THE VIAM APP"); +std::string host("MACHINE ADDRESS"); DialOptions dial_opts; dial_opts.set_type("api-key"); // Replace "" with your machine's API key ID @@ -84,7 +84,7 @@ auto robot = RobotClient::at_address(host, options); ```dart {class="line-numbers linkable-line-numbers" data-line="2,4,6"} Future connectToViam() async { - const host = 'ADDRESS FROM THE VIAM APP'; + const host = 'MACHINE ADDRESS'; // Replace '' (including brackets) with your API key ID const apiKeyID = ''; // Replace '' (including brackets) with your API key diff --git a/static/include/robot/apis/generated/robot.md b/static/include/robot/apis/generated/robot.md index 27e172d22c..09b073787b 100644 --- a/static/include/robot/apis/generated/robot.md +++ b/static/include/robot/apis/generated/robot.md @@ -239,7 +239,7 @@ For more information, see the [Python SDK Docs](https://python.viam.dev/autoapi/ **Example:** ```ts {class="line-numbers linkable-line-numbers"} -await machine.cancelOperation('INSERT OPERATION ID'); +await machine.cancelOperation("INSERT OPERATION ID"); ``` For more information, see the [TypeScript SDK Docs](https://ts.viam.dev/classes/RobotClient.html#canceloperation). @@ -285,7 +285,7 @@ For more information, see the [Python SDK Docs](https://python.viam.dev/autoapi/ **Example:** ```ts {class="line-numbers linkable-line-numbers"} -await machine.blockForOperation('INSERT OPERATION ID'); +await machine.blockForOperation("INSERT OPERATION ID"); ``` For more information, see the [TypeScript SDK Docs](https://ts.viam.dev/classes/RobotClient.html#blockforoperation). @@ -327,7 +327,7 @@ For more information, see the [Python SDK Docs](https://python.viam.dev/autoapi/ **Returns:** -- [(*framesystem.Config)](https://pkg.go.dev/go.viam.com/rdk/robot/framesystem#Config): The configuration of the given machine’s frame system. +- [(\*framesystem.Config)](https://pkg.go.dev/go.viam.com/rdk/robot/framesystem#Config): The configuration of the given machine’s frame system. - [(error)](https://pkg.go.dev/builtin#error): An error, if one occurred. **Example:** @@ -410,13 +410,13 @@ For more information, see the [Python SDK Docs](https://python.viam.dev/autoapi/ **Parameters:** - `ctx` [(Context)](https://pkg.go.dev/context#Context): A Context carries a deadline, a cancellation signal, and other values across API boundaries. -- `pose` [(*referenceframe.PoseInFrame)](https://pkg.go.dev/go.viam.com/rdk/referenceframe#PoseInFrame): The pose that should be transformed. +- `pose` [(\*referenceframe.PoseInFrame)](https://pkg.go.dev/go.viam.com/rdk/referenceframe#PoseInFrame): The pose that should be transformed. - `dst` [(string)](https://pkg.go.dev/builtin#string): The name of the reference pose to transform the given pose to. -- `additionalTransforms` [([]*referenceframe.LinkInFrame)](https://pkg.go.dev/go.viam.com/rdk/referenceframe#LinkInFrame): Any additional transforms. +- `additionalTransforms` [([]\*referenceframe.LinkInFrame)](https://pkg.go.dev/go.viam.com/rdk/referenceframe#LinkInFrame): Any additional transforms. **Returns:** -- [(*referenceframe.PoseInFrame)](https://pkg.go.dev/go.viam.com/rdk/referenceframe#PoseInFrame): Transformed pose in frame. +- [(\*referenceframe.PoseInFrame)](https://pkg.go.dev/go.viam.com/rdk/referenceframe#PoseInFrame): Transformed pose in frame. - [(error)](https://pkg.go.dev/builtin#error): An error, if one occurred. **Example:** @@ -675,7 +675,7 @@ For more information, see the [Go SDK Docs](https://pkg.go.dev/go.viam.com/rdk/r **Parameters:** -- `moduleId` (string) (optional): The id matching the module\_id field of the registry +- `moduleId` (string) (optional): The id matching the module_id field of the registry module in your part configuration. - `moduleName` (string) (optional): The name matching the name field of the local/registry module in your part configuration. @@ -687,7 +687,7 @@ For more information, see the [Go SDK Docs](https://pkg.go.dev/go.viam.com/rdk/r **Example:** ```ts {class="line-numbers linkable-line-numbers"} -await machine.restartModule('namespace:module:model', 'my_model_name'); +await machine.restartModule("namespace:module:model", "my_model_name"); ``` For more information, see the [TypeScript SDK Docs](https://ts.viam.dev/classes/RobotClient.html#restartmodule). @@ -755,7 +755,7 @@ For more information, see the [Python SDK Docs](https://python.viam.dev/autoapi/ **Returns:** -- [(cloud.Metadata)](https://pkg.go.dev/go.viam.com/rdk/cloud#Metadata): App-related metadata containing the primary organization ID, location ID, and robot part ID for a machine running on the Viam app. +- [(cloud.Metadata)](https://pkg.go.dev/go.viam.com/rdk/cloud#Metadata): App-related metadata containing the primary organization ID, location ID, and robot part ID for a machine running on the Viam. - [(error)](https://pkg.go.dev/builtin#error): An error, if one occurred. **Example:** @@ -933,7 +933,7 @@ async def connect(): # Replace "" (including brackets) with your machine's API key ID api_key_id='' ) - return await RobotClient.at_address('ADDRESS FROM THE VIAM APP', opts) + return await RobotClient.at_address('MACHINE ADDRESS', opts) async def main(): diff --git a/static/include/robot/apis/overrides/methods/go.robot.CloudMetadata.Metadata.return.md b/static/include/robot/apis/overrides/methods/go.robot.CloudMetadata.Metadata.return.md index 07e92159d4..2d40709258 100644 --- a/static/include/robot/apis/overrides/methods/go.robot.CloudMetadata.Metadata.return.md +++ b/static/include/robot/apis/overrides/methods/go.robot.CloudMetadata.Metadata.return.md @@ -1 +1 @@ -App-related metadata containing the primary organization ID, location ID, and robot part ID for a machine running on the Viam app. +App-related metadata containing the primary organization ID, location ID, and robot part ID for a machine running on Viam. diff --git a/static/include/services/apis/generated/motion.md b/static/include/services/apis/generated/motion.md index 6d21258ce3..ae09d5d544 100644 --- a/static/include/services/apis/generated/motion.md +++ b/static/include/services/apis/generated/motion.md @@ -678,7 +678,7 @@ For more information, see the [Python SDK Docs](https://python.viam.dev/autoapi/ ```go {class="line-numbers linkable-line-numbers"} // Insert code to connect to your machine. -// (see CONNECT tab of your machine's page in the Viam app) +// (see CONNECT tab of your machine's page) // Assumes a gripper configured with name "my_gripper" on the machine gripperName := gripper.Named("my_gripper") diff --git a/static/include/snippet/setup-both.md b/static/include/snippet/setup-both.md index 1a753d2352..6f845b5de1 100644 --- a/static/include/snippet/setup-both.md +++ b/static/include/snippet/setup-both.md @@ -1,3 +1,3 @@ -Add a new machine in the [Viam app](https://app.viam.com). -Then follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` or `viam-micro-server` on the device you're using for your project and connect to the Viam app. +Add a new machine on [Viam](https://app.viam.com). +Then follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` or `viam-micro-server` on the device you're using for your project and connect to Viam. Wait until your machine has successfully connected. diff --git a/static/include/snippet/setup.md b/static/include/snippet/setup.md index 9a117a1d35..599125c355 100644 --- a/static/include/snippet/setup.md +++ b/static/include/snippet/setup.md @@ -1,3 +1,3 @@ -Add a new machine in the [Viam app](https://app.viam.com). +Add a new machine on [Viam](https://app.viam.com). On the machine's page, follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` on the computer you're using for your project. -Wait until your machine has successfully connected to the Viam app. +Wait until your machine has successfully connected to Viam. diff --git a/static/include/try-viam/create-a-reservation.md b/static/include/try-viam/create-a-reservation.md index dd42f936a9..07dd6cd889 100644 --- a/static/include/try-viam/create-a-reservation.md +++ b/static/include/try-viam/create-a-reservation.md @@ -1,4 +1,4 @@ -1. **Click on the "TRY VIAM" button in the Viam app.** +1. **Click on the "TRY VIAM" button.** Log in to Viam and click on the **[TRY VIAM](https://app.viam.com/try)** button in the top navigation bar. If you don't have an account, it only takes a minute to sign up.
LED 1 and 3: Use the D-Pad
diff --git a/docs/tutorials/custom/controlling-an-intermode-rover-canbus.md b/docs/tutorials/custom/controlling-an-intermode-rover-canbus.md index dc8674b050..410a1599f4 100644 --- a/docs/tutorials/custom/controlling-an-intermode-rover-canbus.md +++ b/docs/tutorials/custom/controlling-an-intermode-rover-canbus.md @@ -285,11 +285,11 @@ To run the modular resource, first copy the module binary to your Raspberry Pi. ### Configure the Intermode base resource -You will now configure your base in the [Viam app](https://app.viam.com). +You will now configure your base. Go to the [machine you added during setup](#machine-setup). To make your module accessible to `viam-server`, you must add it as a local module: -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** (Create) icon next to your machine part in the left-hand menu and select **Local module**, then **Local module**. 1. Enter a **Name** for this instance of your modular resource, for example `my-custom-base-module`. 1. Enter the module's [executable path](/operate/get-started/other-hardware/create-module/#test-your-module-locally). @@ -299,7 +299,7 @@ To make your module accessible to `viam-server`, you must add it as a local modu Now that `viam-server` can find the module, you can add the base component it provides for your Intermode base: -1. On the **CONFIGURE** tab of your machine's page on the [Viam app](https://app.viam.com): +1. On the **CONFIGURE** tab of your machine's page: - Click the **+** (Create) icon next to your machine part in the left-hand menu and select **Local module**. - Then, select **Local component**. @@ -318,7 +318,7 @@ For more information on modules and how they work, see the [Create a module](/op ### Control the rover -After you configured the base, go to the [**CONTROL**](/manage/troubleshoot/teleoperate/default-interface/#viam-app) tab and expand the base component to view the controls to enable keyboard or discrete control over your machine's movement. +After you configured the base, go to the [**CONTROL**](/manage/troubleshoot/teleoperate/default-interface/#web-ui) tab and expand the base component to view the controls to enable keyboard or discrete control over your machine's movement. {{< alert title="Caution" color="caution" >}} Be careful, the Intermode is a large and powerful rover - make sure you have the shutoff key in hand for emergencies and make sure your rover has sufficient space to drive around without hitting anyone or anything. diff --git a/docs/tutorials/custom/custom-base-dog.md b/docs/tutorials/custom/custom-base-dog.md index 75d84d5c4b..1562d6943d 100644 --- a/docs/tutorials/custom/custom-base-dog.md +++ b/docs/tutorials/custom/custom-base-dog.md @@ -10,7 +10,7 @@ videos: "/tutorials/custom-base-dog/base-control-dog.webm", "/tutorials/custom-base-dog/base-control-dog.mp4", ] -videoAlt: "A quadrupedal robot comprised of small servos, black laser cut acrylic, and with ultrasonic sensors for eyes, walks forward, backward, and turns from side to side on a desk. Next to it is a laptop with the machine's Control tab on the Viam app open in a browser window." +videoAlt: "A quadrupedal robot comprised of small servos, black laser cut acrylic, and with ultrasonic sensors for eyes, walks forward, backward, and turns from side to side on a desk. Next to it is a laptop with the machine's Control tab" images: ["/tutorials/custom-base-dog/base-control-dog.gif"] aliases: - /tutorials/custom-base-dog/ @@ -31,18 +31,18 @@ After following this tutorial, you will know about Viam's modules and be able to Consider if can be merged with intermode rover one to create more generalized guidance. --> -The [base component type](/operate/reference/components/base/) is useful for controlling mobile robots because it gives users intuitive steering controls to use in code as well as from the [Viam app](https://app.viam.com/) remote control interface. +The [base component type](/operate/reference/components/base/) is useful for controlling mobile robots because it gives users intuitive steering controls to use in code as well as from the machine's **CONTROL** tab. Viam natively supports a wheeled base model, but if you have a quadruped or other form of base that requires a different underlying implementation, you can create a custom component as a {{< glossary_tooltip term_id="modular-resource" text="modular resource" >}}. This tutorial demonstrates how to add a custom base using [this robot dog kit and its open source code](https://github.com/Freenove/Freenove_Robot_Dog_Kit_for_Raspberry_Pi) as an example.
- {{}} + {{}}
By the end of the tutorial, you will be able to drive this dog around using the Viam base methods: `MoveStraight`, `Spin`, `SetPower`, `SetVelocity`, and `Stop`. -You will also be able to use the **CONTROL** tab in the Viam app to remotely drive the dog around using your keyboard while viewing the camera feed. +You will also be able to use the machine's **CONTROL** tab to remotely drive the dog around using your keyboard while viewing the camera feed. You’ll learn to implement a custom component type in Viam, and you’ll be equipped to implement other sorts of custom components in the future for whatever robots you dream up. ## Code used in this tutorial @@ -250,7 +250,7 @@ The CLI module generator generates the files for your modular resource. - Language: `Python` - Visibility: `Private` - Namespace/Organization ID: - - In the [Viam app](https://app.viam.com), navigate to your organization settings through the menu in upper right corner of the page. + - Navigate to your organization settings through the menu in upper right corner of the page. Find the **Public namespace** (or create one if you haven't already) and copy that string. In the example snippets below, the namespace is `viamlabs`. - Resource to add to the module (API): `Base Component`. @@ -261,7 +261,7 @@ The CLI module generator generates the files for your modular resource. It's a good idea to use the same names, aside from the namespace. That way your code will match the example code. - You can use a different model name, module namespace, and module name, but you need to use the existing API triplet `rdk:component:base` in order for your custom base to work properly as a base with `viam-server` and the [Viam app](https://app.viam.com/). + You can use a different model name, module namespace, and module name, but you need to use the existing API triplet `rdk:component:base` in order for your custom base to work properly as a base. 3. Hit your Enter key and the generator will generate a folder called robotdog containing stub files for your modular base component. @@ -373,13 +373,13 @@ sudo chmod +x run.sh You need to tell your robot how to access the module you created. -On the [Viam app](https://app.viam.com), go to your machine's **CONFIGURE** tab. +Navigate to your machine's **CONFIGURE** tab. Click the **+** (Create) button next to your main part in the left-hand menu and select **Local module**, then **Local module**. Name your module `my-custom-base`. Enter the path (for example, `/home/fido/robotdog/run.sh`) to your module's executable file in the **Executable path** field. Click **Save** at the top right of the page to save your config. -![Screenshot of the Viam app Config tab with the Modules subtab open, showing my-custom-base configured.](/tutorials/custom-base-dog/module-config.png) +![Config tab with the Modules subtab open, showing my-custom-base configured.](/tutorials/custom-base-dog/module-config.png) ## Configure the components @@ -436,7 +436,7 @@ That way the Freenove robot dog server will start running when the module starts {{% /alert %}} -## Driving the robot from the Viam app +## Driving the robot with Viam Navigate to the **CONTROL** tab. @@ -487,7 +487,7 @@ Depending on the speed of your server connection, you may need to hold down the ## Next steps -In this tutorial you learned how to implement a custom component model and control it using the Viam app. +In this tutorial you learned how to implement a custom component model and control it. You learned about configuring modules and processes. You drove the robot dog around using the Viam **CONTROL** tab. diff --git a/docs/tutorials/get-started/blink-an-led.md b/docs/tutorials/get-started/blink-an-led.md index 85a597b9a9..0de2ba129e 100644 --- a/docs/tutorials/get-started/blink-an-led.md +++ b/docs/tutorials/get-started/blink-an-led.md @@ -2,7 +2,7 @@ title: "Make an LED Blink With Buttons And With Code" linkTitle: "Blink an LED" type: "docs" -description: "Use the Viam app and the SDKs to make an LED turn on and off with a Raspberry Pi." +description: "Use Viam and the SDKs to make an LED turn on and off with a Raspberry Pi." videos: ["/tutorials/blink-an-led/blink.webm", "/tutorials/blink-an-led/blink.mp4"] videoAlt: "A blinking L.E.D. connected to a Raspberry Pi" @@ -26,7 +26,7 @@ toc_hide: true --- This tutorial will show you how to use Viam to make an LED blink with a Raspberry Pi. @@ -34,7 +34,7 @@ This is a great place to start if you have never built a robot or a circuit befo {{}} -First, you'll use the control interface on the [Viam app](https://app.viam.com) to turn the LED on and off. +First, you'll use the control interface on [Viam](https://app.viam.com) to turn the LED on and off. Then, you'll write code to control the LED using the Viam [software development kits](/dev/reference/sdks/). ## What you'll need for this guide @@ -127,10 +127,10 @@ Now that your circuit is wired, reconnect your Pi to power. ## Configure your robot -Before proceeding, be sure that you have [connected your Pi to the Viam app](#project-setup). +Before proceeding, be sure that you have [connected your Pi to Viam](#project-setup). Now it's time to configure your machine's components. -Go to the [Viam app](https://app.viam.com/) and navigate to your new machine's **CONFIGURE** tab. +Go to [Viam](https://app.viam.com/) and navigate to your new machine's **CONFIGURE** tab. {{< tabs >}} {{% tab name="Config Builder" %}} @@ -144,7 +144,7 @@ We used the name `"local"`. Your board component panel will look like this: -{{}} +{{}} {{% /tab %}} {{% tab name="Raw JSON" %}} @@ -171,21 +171,21 @@ Replace the contents of the config field with the following JSON configuration f Click the **Save** button in the top right corner of the page to save your changes. -## Control your robot using the Viam app +## Control your robot using Viam -When you configure your board component, the Viam app generates a control panel for it. -Click the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app) to view the control panels for all your machine's components (in this case, just the board). +When you configure your board component, Viam generates a control panel for it. +Click the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui) to view the control panels for all your machine's components (in this case, just the board). Click the board card to expand it. Here, you can click on **Get** to get the current status of your pin. The first time you click **Get Pin State**, it should return "Pin: 8 is low." -![Control tab of the Viam app showing the board control panel. The 'Board Local' row is expanded, and under the 'Get' row, the pin is set to '8.' A red box is around the 'Get Pin State' button and the output, which reads, 'Pin: 8 is low.'](/tutorials/blink-an-led/get-pin-state.png) +![Control tab showing the board control panel. The 'Board Local' row is expanded, and under the 'Get' row, the pin is set to '8.' A red box is around the 'Get Pin State' button and the output, which reads, 'Pin: 8 is low.'](/tutorials/blink-an-led/get-pin-state.png) You can now use the **Set** menu to set the status of your pin to **high**. Once you click **Get Pin State** again, it will look like this: -![Control tab of the Viam app showing the board control panel. The 'Board Local' row is expanded, and under the 'Set' row, the pin is set to '8.' A red box is around the 'Set Pin State' field.](/tutorials/blink-an-led/set-pin-state.png) +![Control tab showing the board control panel. The 'Board Local' row is expanded, and under the 'Set' row, the pin is set to '8.' A red box is around the 'Set Pin State' field.](/tutorials/blink-an-led/set-pin-state.png) When you set your pin to **high** the LED should illuminate. You can set the pin back and forth between high and low, and you will see your LED turn on or off depending on whether you have the value set to **low** or **high**. @@ -216,16 +216,16 @@ Refer to the appropriate SDK documentation for SDK installation instructions: ### Connect your robot to the Viam SDK -The easiest way to get started writing an application with Viam is to navigate to the **CONNECT** tab of your machine's page on the [Viam app](https://app.viam.com/robots) and select the **Code sample** page. +The easiest way to get started writing an application with Viam is to navigate to the **CONNECT** tab of your machine's page on [Viam](https://app.viam.com/robots) and select the **Code sample** page. For this tutorial, we provide Python and Golang code snippets. Select **Python** or **Golang** and follow the instructions to connect to your machine. {{% snippet "show-secret.md" %}} -These code snippets import all the necessary libraries and set up a connection with the Viam app in the cloud. +These code snippets import all the necessary libraries and set up a connection with Viam in the cloud. On your local computer, create a file called blink.py or blink.go. -Paste the sample code from the **CONNECT** tab of the Viam app into the file in your code editor, and save the file. +Paste the sample code from the **CONNECT** tab into the file in your code editor, and save the file. You can now run the code. Doing so will ensure that the Viam SDK is properly installed and that the `viam-server` instance on your machine is live. @@ -241,8 +241,8 @@ Run the code by typing the following command into the terminal, with the correct python3 /blink.py ``` -If you successfully configured your machine and it is able to connect to the Viam app, you should see something like the following printed to the terminal after running your program. -What you see here is a list of the various {{< glossary_tooltip term_id="resource" text="resources" >}} that have been configured on your machine in the Viam app (the board, as well as various built-in services). +If you successfully configured your machine and it is able to connect to Viam, you should see something like the following printed to the terminal after running your program. +What you see here is a list of the various {{< glossary_tooltip term_id="resource" text="resources" >}} that have been configured on your machine on Viam (the board, as well as various built-in services). ```sh {class="command-line" data-prompt="$" data-output="2-25"} python3 my-project-folder/blink.py @@ -285,8 +285,8 @@ Then, run your code: go run blink.go ``` -If you successfully configured your machine and it is able to connect to the Viam app, you should see something like the following printed to the terminal after running your program. -What you see here is a list of the various {{< glossary_tooltip term_id="resource" text="resources" >}} that have been configured on your machine in the Viam app (the board, as well as various built-in services). +If you successfully configured your machine and it is able to connect to Viam, you should see something like the following printed to the terminal after running your program. +What you see here is a list of the various {{< glossary_tooltip term_id="resource" text="resources" >}} that have been configured on your machine (the board, as well as various built-in services). ```sh {class="command-line" data-prompt="$" data-output="2-25"} go run blink.go @@ -404,7 +404,7 @@ func main() { logger := logging.NewLogger("client") robot, err := client.New( context.Background(), - "ADDRESS FROM THE VIAM APP", + "MACHINE ADDRESS", logger, client.WithDialOptions(rpc.WithEntityCredentials( // Replace "" (including brackets) with your machine's API key ID @@ -497,7 +497,7 @@ If you get an error, you can check your code against the complete code here: In this tutorial, you learned to: - Set up a circuit -- Use the Viam app to configure and control a machine +- Use Viam to configure and control a machine - Control your machine using the Viam SDK by writing a short program in either Go or Python to make an LED on your Raspberry Pi blink on and off! Now that you have completed this robotics project, check out some of our other [tutorials](/tutorials/). diff --git a/docs/tutorials/get-started/servo-mousemover.md b/docs/tutorials/get-started/servo-mousemover.md index 860520c7cc..903b931a87 100644 --- a/docs/tutorials/get-started/servo-mousemover.md +++ b/docs/tutorials/get-started/servo-mousemover.md @@ -24,7 +24,7 @@ toc_hide: true --- @@ -37,11 +37,11 @@ This tutorial will show you how to build a mouse mover using Viam, a Raspberry P This machine will turn the continuous servo that's secured inside the box, which will turn the circle under the optical mouse. This will keep your computer from falling asleep. -This project is a good place to begin if you're new to robotics and would like to learn how to use a [servo component](/operate/reference/components/servo/) with the Viam app and Viam's [Python SDK](https://python.viam.dev/). +This project is a good place to begin if you're new to robotics and would like to learn how to use a [servo component](/operate/reference/components/servo/) with Viam and Viam's [Python SDK](https://python.viam.dev/).
-{{}} +{{}}
{{}} @@ -96,16 +96,16 @@ To verify and get the version of the package, you can run the command: pip3 --version ``` -The [Viam Python SDK](https://python.viam.dev/) (Software Development Kit) allows you to write programs in the Python programming language to operate robots using Viam. +The [Viam Python SDK](https://python.viam.dev/) (Software Development Kit) allows you to write programs in the Python programming language to operate machines using Viam. To get the Python SDK working on the Raspberry Pi, run the following command in your Raspberry Pi terminal: ```sh {class="command-line" data-prompt="$"} pip install viam-sdk ``` -## Test the SDK with your robot +## Test the SDK with your machine -On the [Viam app](https://app.viam.com), select the **CONNECT** tab, then select **Python** as your language. +On your machine's page, select the **CONNECT** tab, then select **Python** as your language. ![The word Language with four boxes below it with Python, Golang, Typescript (Web), and Remotes in each one. Python has a black background with white text and a checkmark, the other three have white backgrounds with black text.](/tutorials/single-component-tutorials-servo-mousemover/choose-python.png) @@ -135,7 +135,7 @@ Create a file using nano with the .py which is the python file extension, (name nano anyname.py ``` -Paste the code you got from the **CONNECT** tab in the Viam app. Press CTRL+O, then CTRL+M, then CTRL+X to save the code and exit. +Paste the code you got from the **CONNECT** tab. Press CTRL+O, then CTRL+M, then CTRL+X to save the code and exit. ![Raspberry Pi terminal showing the connect code from the previous example.](/tutorials/single-component-tutorials-servo-mousemover/sample-code.png) @@ -147,7 +147,7 @@ python3 anyname.py ![The output of the code showing a list of the resources.](/tutorials/single-component-tutorials-servo-mousemover/resources-printed.png) -There are no errors in the resources above, so we have confirmed a good software connection between the Python SDK and your Viam robot! +There are no errors in the resources above, so we have confirmed a good software connection between the Python SDK and your machine! ## Connect the servo @@ -164,17 +164,17 @@ Now, follow this schematic diagram to attach jumper wires to the servo and Raspb Once you have the wires connected, attach the wheel/arm to servo and turn on the Raspberry Pi. -## Configure your robot +## Configure your machine -The servo is now physically connected to the Raspberry Pi, but the Viam app hasn't been told the details of which components/services it's using yet, so it's not able to control the servo. +The servo is now physically connected to the Raspberry Pi, but Viam is not yet configured with the components to use it, so it's not able to control the servo. -Go to the [Viam app](https://app.viam.com), and navigate to the **CONFIGURE** tab. +Navigate to the **CONFIGURE** tab. ### Board component Create a [board component](/operate/reference/components/board/): -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 1. Select the `board` type, then select the `viam:raspberry-pi:rpi` model if you are using a Raspberry Pi 4, Raspberry Pi 3 or Raspberry Pi Zero 2 W. If you are using a Raspberry Pi 5, use the `pi5` model instead. @@ -189,7 +189,7 @@ You can name the board whatever you want, but if you change the name you must up Create a [servo component](/operate/reference/components/servo/): -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component**. 1. Select the `servo` type, then select the `viam:raspberry-pi:pi-servo` model. 1. Enter the name `fs90f` for your servo and click **Create**. @@ -202,16 +202,16 @@ This is where you tell Viam which hardware pin to use to control the servo. The attribute section will look like this: -{{}} +{{}} Click the **Save** button in the upper right corner of the screen to save your config. -## Control the servo in the Viam app +## Control the servo with the web UI If everything went well, the servo started to move.
- {{}} + {{}}
Navigate to the **CONTROL** tab and press the **STOP** button on the servo card (matching what you named the servo) to stop the servo. @@ -227,7 +227,7 @@ Click on the top of the servo card to open the servo controls. Try changing the angle to a few different settings.
- {{}} + {{}}
## Assemble the mouse mover @@ -280,11 +280,11 @@ Add "baby gates" or rails to keep the mouse from wandering off if it catches som {{}}
-### Control your robot with code +### Control your machine with code Copy the code from the [mousemover GitHub repository](https://github.com/viam-labs/tutorial-mousemover) into your nano file, save it, and run it. -The code uses the Python SDK to securely connect to your robot through Viam app. +The code uses the Python SDK to securely connect to your machine. Then, it enters a for loop in which **position** tells us the servo to move to positions (angles) between 80 and 93 degrees as specified in the **sequence** list. The code uses **pause_time** to wait for a random amount of time between 5 and 20 seconds to stay at that position. @@ -294,7 +294,7 @@ Experiment and have fun. ## Next steps -If you want to build more robots, take a look at our other [tutorials](/tutorials/). +If you want to build more machines, take a look at our other [tutorials](/tutorials/). And if you didn't like this tutorial and would like to speak to my manager, their name is {{}} (Update: apparently that's a big no no.) diff --git a/docs/tutorials/projects/claw-game.md b/docs/tutorials/projects/claw-game.md index 1f02a5cf5b..4ba59facf7 100644 --- a/docs/tutorials/projects/claw-game.md +++ b/docs/tutorials/projects/claw-game.md @@ -147,7 +147,7 @@ This is the approach this tutorial follows: you'll run the [motion planning serv Technically you could configure all the components within one part, but motion planning is more performant when running on a computer like a macOS or Linux laptop running `viam-server`. {{< /alert >}} -Use the parts dropdown menu in the top banner of your machine’s page on the [Viam app](https://app.viam.com/) to add a new sub-part called `planning`: +Use the parts dropdown menu in the top banner of your machine’s page to add a new sub-part called `planning`:

{{}} @@ -157,7 +157,7 @@ Follow the instructions on the **Setup** tab to install `viam-server` on your de For more information about parts, see [Machine Architecture: Parts](/operate/reference/architecture/parts/). -Now you are ready to configure the individual components in the [Viam app](https://app.viam.com). +Now you are ready to configure the individual components. Navigate to the **Config** tab of your machine's page and select your main part from the parts dropdown. ### Configure the board @@ -447,7 +447,7 @@ See the [frame system documentation](/operate/reference/services/frame-system/) ### Find the home pose within the enclosure -By moving the arm through the **Control** tab in the [Viam app](https://app.viam.com), you can determine the arm's ideal home pose, which is the position the arm starts each game and the one it returns to after making a grab. +By moving the arm through the **Control** tab, you can determine the arm's ideal home pose, which is the position the arm starts each game and the one it returns to after making a grab. You can also determine the desired distance between the lateral plane and the pick up level, which is how you determine how far to drop the grabber. @@ -817,7 +817,7 @@ To use the [Viam TypeScript SDK](https://ts.viam.dev/) you must install the depe npm install ``` -1. Determine your machine's location secret and host address by navigating to the **CONNECT** tab in the [Viam app](https://app.viam.com). +1. Determine your machine's location secret and host address by navigating to the **CONNECT** tab. Use the host address of your main machine part, as it will reference all parts of your machine. {{% snippet "show-secret.md" %}} @@ -926,7 +926,7 @@ async function grab(boardClient: BoardClient) { In this tutorial, you learned how to: - Make your own claw machine. -- Test, configure, and control a robot arm using Viam’s [motion service](/operate/reference/services/motion/), the [Viam Python SDK](https://python.viam.dev/), and the [Viam app](https://app.viam.com). +- Test, configure, and control a robot arm using Viam’s [motion service](/operate/reference/services/motion/), the [Viam Python SDK](https://python.viam.dev/), and the [web UI](https://app.viam.com). - Design your own custom interface using the [Viam TypeScript SDK](https://ts.viam.dev/). For some next steps, you could: diff --git a/docs/tutorials/projects/helmet.md b/docs/tutorials/projects/helmet.md index cc890a14ef..9991909aa4 100644 --- a/docs/tutorials/projects/helmet.md +++ b/docs/tutorials/projects/helmet.md @@ -84,8 +84,8 @@ Then, make sure your computer (whether it's a personal computer or an SBC) is co Configure your [webcam](/operate/reference/components/camera/webcam/) so that your machine can get the video stream from the camera: -1. On the [Viam app](https://app.viam.com), navigate to your machine's page. - Check that the part status dropdown in the upper left of the page, next to your machine's name, reads "Live"; this indicates that your machine is turned on and that its instance of `viam-server` is in contact with the Viam app. +1. Navigate to your machine's page. + Check that the part status dropdown in the upper left of the page, next to your machine's name, reads "Live"; this indicates that your machine is turned on and that its instance of `viam-server` is in contact with Viam. 2. Click the **+** (Create) button next to your main part in the left-hand menu and select **Component or service**. Start typing "webcam" and select **camera / webcam**. @@ -94,7 +94,7 @@ Configure your [webcam](/operate/reference/components/camera/webcam/) so that yo Click **Create**. 3. Leave the **video_path** blank and the camera will use the default video path for your machine. - If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the Viam app. + If this doesn't work when you test your camera later, you can try a different video path by following the prompt on the camera's configuration panel. 4. Click **Save** in the top right corner of the screen to save your changes. @@ -132,7 +132,7 @@ The [YOLOv8 module](https://github.com/viam-labs/YOLOv8) enables you to use any Your vision service config should now resemble the following: - {{}} + {{}} 5. Click **Save** in the top right corner of the screen to save your changes. @@ -175,7 +175,7 @@ This module also filters the output so that later, when you configure data manag Your `objectfilter` camera configuration should now resemble the following: - {{}} + {{}} 5. Click **Save** in the top right corner of the screen to save your changes. @@ -228,15 +228,15 @@ To make sure the detector camera is capturing and syncing labeled images: 1. Position yourself in front of your webcam for approximately 30 seconds to let it capture a few images of a person without a hard hat on. -2. Navigate to your [**DATA** page](https://app.viam.com/data/view?view=images) in the Viam app. +2. Navigate to your [**DATA** page](https://app.viam.com/data/view?view=images). You should see some images with bounding boxes on them. If you do not, try refreshing the page. - {{}} + {{}} 3. You can also try this with a hard hat on your head. - {{}} + {{}} ### Modify the detector config to sync only images without hard hats @@ -330,7 +330,7 @@ The following code is adapted from that example. hard hats on where required. Thank you! \

You can view captured images in \ \ - the DATA tab.' + the DATA tab.' ) # Get a JSON-ready representation of the Mail object @@ -383,7 +383,7 @@ def email(request): hard hats on where required. Thank you! \

You can view captured images in \ \ - the DATA tab.' + the DATA tab.' ) # Get a JSON-ready representation of the Mail object @@ -422,7 +422,7 @@ Now you can test the script: Now it's time to configure a trigger so that you get an email when a person is not wearing a hard hat. Since you configured data to sync only when an image of a person without a hard hat is captured, configuring the trigger to trigger each time an image is synced to the cloud will produce the desired result. -Go to the **CONFIGURE** tab of your machine on the [Viam app](https://app.viam.com). +Go to the **CONFIGURE** tab of your machine. Click the **+** (Create) button in the left side menu and select **Trigger**. Name the trigger and click **Create**. diff --git a/docs/tutorials/projects/integrating-viam-with-openai.md b/docs/tutorials/projects/integrating-viam-with-openai.md index 4009ccce4c..8c9de6146a 100644 --- a/docs/tutorials/projects/integrating-viam-with-openai.md +++ b/docs/tutorials/projects/integrating-viam-with-openai.md @@ -79,8 +79,8 @@ This tutorial will show you how to use the Viam platform to create an AI-integra This tutorial assumes that you have already set up your Viam Rover. If not, first follow the Viam Rover [setup instructions](/dev/reference/try-viam/rover-resources/rover-tutorial/). -If you are not using a Viam Rover, add a new machine in the [Viam app](https://app.viam.com). -Then follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` on the computer you're using for your project and connect to the Viam app. +If you are not using a Viam Rover, add a new machine. +Then follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` on the computer you're using for your project and connect to Viam. Wait until your machine has successfully connected. Then configure your machine with the {{< glossary_tooltip term_id="component" text="hardware components" >}}. If you are using a different rover, the [Configure a Rover like Yahboom or SCUTTLE](/tutorials/configure/configure-rover/) may help you configure your rover. @@ -180,7 +180,7 @@ Finally, you will need both Viam robot credentials and OpenAI API credentials in {{% snippet "show-secret.md" %}} -You can find API key and API key ID values for your robot by navigating to the **CONNECT** tab in the [Viam app](https://app.viam.com) and selecting the **API keys** page. +You can find API key and API key ID values for your robot by navigating to the **CONNECT** tab and selecting the **API keys** page. To acquire OpenAI credentials, [sign up for OpenAI](https://openai.com/api/) and [set up API keys](https://platform.openai.com/account/api-keys). @@ -219,7 +219,7 @@ To configure your [servo](/operate/reference/components/servo/), go to your rove Now, in the panel for `servo1`, add the following attribute configuration: -{{< imgproc src="/tutorials/ai-integration/servo_pane.png" alt="An example configuration for a pi servo with GPIO 8 and board 'local' in the Viam app Config Builder." resize="1200x" style="width:450px" >}} +{{< imgproc src="/tutorials/ai-integration/servo_pane.png" alt="An example configuration for a pi servo with GPIO 8 and board 'local'." resize="1200x" style="width:450px" >}} - Enter `8` for `pin`. - Select the name of your [board](/operate/reference/components/board/) for the `board` attribute: in this case, `local`. @@ -326,12 +326,12 @@ This opens up some really interesting possibilities, like having your robot talk ## Alternative option: configure Viam Labs speech module -As an alternate option for adding an AI speech integration to your robot, [the Viam Registry](https://app.viam.com/registry) provides [the `speech` module](https://app.viam.com/module/viam-labs/speech), a modular {{< glossary_tooltip term_id="service" text="service" >}} providing text-to-speech (TTS) and speech-to-text (STT) capabilities for robots running on the Viam platform. +As an alternate option for adding an AI speech integration to your robot, the [registry](https://app.viam.com/registry) provides [the `speech` module](https://app.viam.com/module/viam-labs/speech), a modular {{< glossary_tooltip term_id="service" text="service" >}} providing text-to-speech (TTS) and speech-to-text (STT) capabilities for robots running on the Viam platform. Usage is documented on [Viam Labs' GitHub](https://github.com/viam-labs/speech). ### Configuration -Navigate to the **CONFIGURE** page of your rover robot in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** page of your rover robot. {{< tabs name="Configure the speech module" >}} {{% tab name="Builder" %}} @@ -365,7 +365,7 @@ Save your config by selecting the **Save** button in the top-right corner of the {{% tab name="JSON Template" %}} Select **JSON** mode. -Copy and paste the following into your `modules` array to add [`speech`](https://app.viam.com/module/viam-labs/speech) from [the Viam app's Modular Registry](https://app.viam.com/registry): +Copy and paste the following into your `modules` array to add [`speech`](https://app.viam.com/module/viam-labs/speech) from the [registry](https://app.viam.com/registry): ```json {class="line-numbers linkable-line-numbers"} { diff --git a/docs/tutorials/projects/make-a-plant-watering-robot.md b/docs/tutorials/projects/make-a-plant-watering-robot.md index 1357f90c72..e7b2233a14 100644 --- a/docs/tutorials/projects/make-a-plant-watering-robot.md +++ b/docs/tutorials/projects/make-a-plant-watering-robot.md @@ -32,7 +32,7 @@ With a Raspberry Pi and some basic hardware, you can keep your plants healthy an Follow this tutorial to learn how to set up an automatic plant watering system: 1. [Complete the physical assembly and wiring](#set-up-your-plant-watering-robot). -1. [Create and connect to the machine, and configure your machine's components](#configure-the-components-of-your-robot-in-the-viam-app). +1. [Create and connect to the machine, and configure your machine's components](#configure-the-components-of-your-robot). 1. [Configure the ADC as a module from the registry](#configure-the-adc-as-a-module-from-the-registry). 1. [Write code utilizing the Viam Python SDK to control the plant watering robot](#add-python-control-code). @@ -213,7 +213,7 @@ Run the following command to reboot your machine and load your changes: sudo reboot ``` -### Configure the components of your robot in the Viam app +### Configure the components of your robot {{% snippet "setup.md" %}} @@ -229,7 +229,7 @@ Select the `board` type, then select the appropriate `viam:raspberry-pi:pi` mode Enter a name for your board and click **Create**. This tutorial uses the name `local`. -![Creation of a board in the Viam app config builder.](/tutorials/plant-watering-pi/pi-board-config-builder.png) +![Creation of a board.](/tutorials/plant-watering-pi/pi-board-config-builder.png) {{% /tab %}} {{% tab name="JSON" %}} @@ -263,8 +263,8 @@ Although the resistive soil moisture sensor is not currently one of Viam's built A _module_ provides one or more {{< glossary_tooltip term_id="modular-resource" text="modular resources" >}}, which add resource types ({{< glossary_tooltip term_id="component" text="components" >}} and {{< glossary_tooltip term_id="service" text="services" >}}) or models that are not built into Viam. A module can be added to your machine from the Viam Registry. -The [Viam Registry](https://app.viam.com/registry) allows hardware and software engineers to collaborate on their projects by writing and sharing custom modules with each other. -You can add a module from the Viam Registry directly from your machine's **CONFIGURE** tab in the Viam app, using the **+** (Create) button. +The [registry](https://app.viam.com/registry) allows hardware and software engineers to collaborate on their projects by writing and sharing custom modules with each other. +You can add a module from the Viam Registry directly from your machine's **CONFIGURE** tab, using the **+** (Create) button. To add the [mcp300x-adc-sensor](https://github.com/viam-labs/mcp300x-adc-sensor) module to your machine, follow these steps: @@ -335,7 +335,7 @@ pip3 install viam-sdk Follow these instructions to start working on your Python control code: -1. Navigate to your machine's page in the [Viam app](https://app.viam.com), and click on the **CONNECT** tab and the **Code sample** page. +1. Navigate to your machine's page, and click on the **CONNECT** tab and the **Code sample** page. 1. Select **Python** as the language. 1. Follow the instructions shown under step 1 on that page to install the SDK. 1. Then, under step 2 on that page, click the copy icon to copy the generated code sample, which establishes a connection with your robot when run. @@ -421,7 +421,7 @@ You must import `time` at the top of plant-watering-robot.py to be ### Test motor -On your machine's **CONTROL** page in the Viam app, expand the **TEST** panel for your board component. You should see a panel that allows you to control individual GPIO pins: +On your machine's **CONTROL** page, expand the **TEST** panel for your board component. You should see a panel that allows you to control individual GPIO pins: {{}} @@ -432,7 +432,7 @@ To turn off the motor and stop pumping water, use the **State** control to selec ### Test moisture sensor -On your machine's **CONTROL** page in the Viam app, expand the **TEST** card for your `mcp300x` sensor module to see a live observed value from your moisture sensor. +On your machine's **CONTROL** page, expand the **TEST** card for your `mcp300x` sensor module to see a live observed value from your moisture sensor. Test your sensor by putting it in air, water, and soils containing different amounts of moisture. Use these values to determine an appropriate value for the `DRY` variable in your setup. diff --git a/docs/tutorials/projects/send-security-photo.md b/docs/tutorials/projects/send-security-photo.md index 7fb7f8f8f9..3c880fd93d 100644 --- a/docs/tutorials/projects/send-security-photo.md +++ b/docs/tutorials/projects/send-security-photo.md @@ -49,7 +49,7 @@ You will use the following software in this tutorial: - A Gmail account to send emails. You can use an existing account, or create a new one. -## Configure your machine on the Viam app +## Configure your machine ### Install `viam-server` and connect to your machine @@ -59,8 +59,8 @@ You will use the following software in this tutorial: Configure your [webcam](/operate/reference/components/camera/webcam/) so that your machine can get the video stream from your camera: -1. On the [Viam app](https://app.viam.com), navigate to your machine's page. - Check that the part status dropdown in the upper left of the page, next to your machine's name, reads "Live"; this indicates that your machine is turned on and that its instance of `viam-server` is in contact with the Viam app. +1. Navigate to your machine's page. + Check that the part status dropdown in the upper left of the page, next to your machine's name, reads "Live"; this indicates that your machine is turned on and that its instance of `viam-server` is in contact with Viam. 2. Click the **+** (Create) button next to your main part in the left-hand menu and select **Component or service**. Start typing "webcam" and select **camera / webcam**. @@ -69,7 +69,7 @@ Configure your [webcam](/operate/reference/components/camera/webcam/) so that yo Click **Create**. 3. Leave the **video_path** blank and the camera will use the default video path for your machine. - If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the Viam app. + If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the camera's configuration panel. 4. Click **Save** in the top right corner of the screen to save your changes. @@ -257,11 +257,11 @@ If a person is detected, your robot will print `sending a message`, take a photo Then it will create a `yagmail.SMTP` instance to send the email and send the email. -### Connect the code to the robot +### Connect the code to the machine You need to tell the code how to access your specific machine (which in this case represents your computer and its webcam). -Navigate to the **CONNECT** tab on the Viam app. +Navigate to the machine's **CONNECT** tab. Make sure Python is selected in the Language selector. Get the machine address from the top of the **Code Sample** page and an API key and API key ID from the **API keys** page and set them as environment variables or add them at the top of chocolate_security.py. diff --git a/docs/tutorials/projects/verification-system.md b/docs/tutorials/projects/verification-system.md index 04a8820486..96203f28ad 100644 --- a/docs/tutorials/projects/verification-system.md +++ b/docs/tutorials/projects/verification-system.md @@ -51,7 +51,7 @@ If you wanted to take this tutorial further, you could use these state transitio ## Prerequisites -{{% expand "A machine connected to the Viam app" %}} +{{% expand "A machine connected to Viam" %}} {{% snippet "setup.md" %}} @@ -65,7 +65,7 @@ Follow the guide to configure a [webcam](/operate/reference/components/camera/we ## Configure a camera -Navigate to the **CONFIGURE** tab of your machine's page on the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Configure the camera you want to use for your security system. We configured ours as a `webcam`, but you can use whatever model of camera you'd like. Reference [these available models](/operate/reference/components/camera/#configuration). @@ -75,7 +75,7 @@ To configure a `webcam`: 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 2. Select the `camera` type, then select the `webcam` model. 3. Enter the name `my_webcam` for your camera and click **Create**. -4. If your machine is online and connected to the Viam app, your camera’s video path is automatically detected and configured. +4. If your machine is online and connected to Viam, your camera’s video path is automatically detected and configured. If your machine is not currently connected, you can manually select the video path for your camera, or bring your machine online to have this path automatically configured for you. Position your camera somewhere where it can easily see the people it will be configured to detect. @@ -94,7 +94,7 @@ The [ML model service](/data-ai/ai/deploy/) allows you to deploy a machine learn For your machine to be able to detect people, you will use a Machine Learning model from the Viam Registry called [`EfficientDet-COCO`](https://app.viam.com/ml-model/viam-labs/EfficientDet-COCO). The model can detect a variety of things which you can see in [labels.txt](https://github.com/viam-labs/devrel-demos/raw/main/Light%20up%20bot/labels.txt) file including `person`s. -1. Navigate to your machine's **CONFIGURE** tab on the [Viam app](https://app.viam.com/Machines). +1. Navigate to your machine's **CONFIGURE** tab. 2. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 3. Select type `ML model`, then select model `TFLite CPU`. 4. Enter `persondetect` as the name for your ML model service, then click **Create**. @@ -103,7 +103,7 @@ The model can detect a variety of things which you can see in [labels.txt] Finally, configure an `mlmodel` detector vision service to use your new `"persondetect"` ML model: -1. Navigate to your machine's **CONFIGURE** tab on the [Viam app](https://app.viam.com/Machines). +1. Navigate to your machine's **CONFIGURE** tab. 2. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 3. Select the `vision` type, then select the `ML model` model. 4. Give the detector the name `people-detect` and click **Create**. @@ -120,7 +120,7 @@ To create your own model, capture images of a variety of people using your camer To capture training images: -1. Navigate to your machine’s page in the [Viam app](https://app.viam.com/robots). +1. Navigate to your machine’s page. 1. Select the **CONFIGURE** tab. 1. In the left-hand menu, click the **+** icon next to your machine part, then select **Component or service** from the context menu. 1. Select the Viam `data management` service type. @@ -130,7 +130,7 @@ To capture training images: 1. In the left-hand menu, click the `my_webcam` camera component. You should now see a live camera feed from your webcam. 1. From the dropdown in the **TEST** panel, select the **Refresh every 5 seconds** option. - This should give you enough time to pose for a photo, return to the Viam app, and save the photo. + This should give you enough time to pose for a photo, return to Viam, and save the photo. 1. Click the button marked with the camera icon to save the currently displayed image to a dataset: {{< imgproc src="/components/camera/add_image_to_dataset_button.png" alt="A button marked with the outline of a camera, emphasized in red" resize="800x" style="width:500px" class="imgzoom" >}} @@ -178,7 +178,7 @@ Then, train a new model using that model: Finally, configure an `mlmodel` detector to use your new `"persondetect"` ML model: -1. Navigate to your machine's **CONFIGURE** tab on the [Viam app](https://app.viam.com/Machines). +1. Navigate to your machine's **CONFIGURE** tab. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 1. Select the `vision` type, then select the `ML model` model. 1. Give the detector the name `people-detect` and click **Create**. @@ -205,12 +205,12 @@ scp /path/to/my-photo.jpg username@my-machine.local:/home/me/my-photo.jpg ``` After you have copied at least one image of a person to your machine, you are ready to configure the second detection layer: the facial recognition detector. -For this tutorial, you will use Viam Labs's `facial-detector` module, available from the [Viam Registry](https://app.viam.com/module/viam-labs/facial-detector). +For this tutorial, you will use Viam Labs's `facial-detector` module, available from the [registry](https://app.viam.com/module/viam-labs/facial-detector). The `facial-detector` module provides a modular vision service that uses Facebook's DeepFace library to perform facial detections. To add the `facial-detector` module to your machine: -1. Navigate to your machine's **CONFIGURE** page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's **CONFIGURE** page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select `vision`, then select the `detector:facial-detector` model. You can also search for `facial-detector` directly. @@ -244,7 +244,7 @@ See the [`facial-detector` module documentation](https://github.com/viam-labs/fa Now that you have configured both the coarser `people-detect` object detector and the more fine-grained `face-detect` facial detector, you are ready to add the alarm logic that uses these detectors to either trigger an alarm or disarm, based on the detected person. For this, add and configure the `verification-system` module from the Viam Registry following the steps below: -1. Navigate to your machine's **CONFIGURE** page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's **CONFIGURE** page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select `vision`, then select the `classifier:verification-system` model. You can also search for `verification-system` directly. @@ -290,7 +290,7 @@ To easily see this in action, you can add a [transform camera](/operate/referenc To add a transform camera to your machine: -1. Navigate to your machine's **CONFIGURE** page in the [Viam app](https://app.viam.com). +1. Navigate to your machine's **CONFIGURE** page. 1. lick the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select `camera`, then select the built-in `transform` model. 1. Give the transform camera a name, like `my-transform-camera`, then click **Create**. @@ -331,7 +331,7 @@ With everything configured, you are now ready to see your facial recognition mac To view your machine's transform camera overlay: -1. On your machine's **CONTROL** page in the [Viam app](https://app.viam.com), select the transform camera pane, which is listed by the name you gave it in the previous session, such as `my-transform-camera`. +1. On your machine's **CONTROL** page, select the transform camera pane, which is listed by the name you gave it in the previous session, such as `my-transform-camera`. 2. Enable the view toggle to see a live camera feed from your camera, overlaid by the current state of the `verification-system` module, which should be `TRIGGER_1` if no people are present in-frame. 3. Have one or more people walk in front of the camera and look directly into it. Watch the state change to `COUNTDOWN` and then `DISARMED` when an approved person is detected, or to `ALARM` if no approved person appears within 10 seconds! diff --git a/docs/tutorials/services/color-detection-scuttle.md b/docs/tutorials/services/color-detection-scuttle.md index 19dfbb5599..d75b867b6e 100644 --- a/docs/tutorials/services/color-detection-scuttle.md +++ b/docs/tutorials/services/color-detection-scuttle.md @@ -73,7 +73,7 @@ To create a [color detector vision service](/dev/reference/apis/services/vision/ {{< tabs >}} {{% tab name="Builder" %}} -Navigate to your machine's **CONFIGURE** tab on the [Viam app](https://app.viam.com/robots). +Navigate to your machine's **CONFIGURE** tab. Click the **+** (Create) icon next to your machine part in the left-hand menu and select **Component or service**. Select the `vision` type, then select the `color detector` model. Enter `my_color_detector` as the name for your service and click **Create**. @@ -121,7 +121,7 @@ To determine the color value from the actual cam component image, you can use a ### Test your color detector -You can test your detector by clicking on the **Test** area of the vision service's configuration panel or from the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app): +You can test your detector by clicking on the **Test** area of the vision service's configuration panel or from the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui): The camera stream will show detections with bounding boxes around the detected colors. @@ -156,9 +156,9 @@ Next, go to the **Code sample** page of the **CONNECT** tab on your [machine pag {{% snippet "show-secret.md" %}} -This code snippet imports all the necessary packages and sets up a connection with the Viam app. +This code snippet imports all the necessary packages and sets up a connection with Viam. -Next, create a file named main.py and paste the sample code from the **Code sample** page of the Viam app into your file. +Next, create a file named main.py with the sample code from the **Code sample** page of the **CONNECT** tab. Then, save your file. Run the code to verify that the Viam SDK is properly installed and that the `viam-server` instance on your robot is live. @@ -194,7 +194,7 @@ async def connect(): # API key ID api_key_id='' ) - return await RobotClient.at_address("ADDRESS FROM THE VIAM APP", opts) + return await RobotClient.at_address("MACHINE ADDRESS", opts) async def main(): @@ -338,7 +338,7 @@ async def connect(): # API key ID api_key_id='' ) - return await RobotClient.at_address("ADDRESS FROM THE VIAM APP", opts) + return await RobotClient.at_address("MACHINE ADDRESS", opts) # Get largest detection box and see if it's center is in the left, center, or diff --git a/docs/tutorials/services/constrain-motion.md b/docs/tutorials/services/constrain-motion.md index bef321fa19..345e9222c9 100644 --- a/docs/tutorials/services/constrain-motion.md +++ b/docs/tutorials/services/constrain-motion.md @@ -64,7 +64,7 @@ Before starting this tutorial, you must: ## Configure your robot -Use the same robot configuration from [the previous tutorial](../plan-motion-with-arm-gripper/) for this tutorial, including the [arm](/operate/reference/components/arm/) and [gripper](/operate/reference/components/gripper/) components with [frames](/operate/reference/services/frame-system/) configured. +Use the same machine configuration from [the previous tutorial](../plan-motion-with-arm-gripper/) for this tutorial, including the [arm](/operate/reference/components/arm/) and [gripper](/operate/reference/components/gripper/) components with [frames](/operate/reference/services/frame-system/) configured. Make one change: Change the Z translation of the gripper frame from `90` to `0`. The motion service is one of the "built-in" services, so you don't need to do anything to enable it on your robot. @@ -72,7 +72,7 @@ The motion service is one of the "built-in" services, so you don't need to do an {{% expand "Click to see what your raw JSON config should look like." %}} If you completed the previous tutorial, your robot's configuration should match the following. -You can view your robot configuration in the [Viam app](https://app.viam.com/) under the **CONFIGURE** tab by selecting **JSON** mode in the left-hand menu. +You can view your machine configuration on the **CONFIGURE** tab by selecting **JSON** mode in the left-hand menu. If instead you create a new machine for this tutorial, copy and paste the following configuration into the **JSON** field: @@ -157,7 +157,7 @@ You will use this same code later in this tutorial. Since this tutorial gets a bit more complicated than the last, let's configure a representation of the table so you can see it in the frame system visualizer. This configured table won't be taken into account by the motion service, but it's useful to be able to see it. -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. Select the `generic` type, then select the `fake` model. Enter the name `"table"` for your movement sensor and click **Create**. @@ -221,7 +221,7 @@ The following diagram shows this, as well as the global coordinate system. If you are using a `fake` gripper, there is no real hardware to calibrate and you can [continue to the next section](#use-a-transform-to-represent-a-drinking-cup), imagining that your fake gripper corresponds to the diagram above. -If you are using a real arm and gripper, use the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app) in the [Viam app](https://app.viam.com/) to move the gripper, look at its reported orientations, and map them to its orientation in the real world. +If you are using a real arm and gripper, use the [**CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui) to move the gripper, look at its reported orientations, and map them to its orientation in the real world. If the axes are different from those described above, take these differences into account in your code. ## Use a transform to represent a drinking cup @@ -343,7 +343,7 @@ await my_gripper.open() ## Full code The following code contains everything covered in this tutorial in addition to the `connect()` function, and the resource access code from the last tutorial that you need here as well. -Be sure to change the ``, ``, and the `ADDRESS FROM THE VIAM APP` placeholders shown in the code to match your actual robot credentials, and change all relevant parameters such as `z_offset` and other dimensions and poses to match your hardware. +Be sure to change the ``, ``, and the `MACHINE ADDRESS` placeholders shown in the code to match your actual robot credentials, and change all relevant parameters such as `z_offset` and other dimensions and poses to match your hardware. You can find the `` and `` values for your machine on the **CONNECT** tab's **API keys** page. ```python {class="line-numbers linkable-line-numbers"} @@ -368,7 +368,7 @@ async def connect(): # ID api_key_id='' ) - return await RobotClient.at_address('ADDRESS FROM THE VIAM APP', opts) + return await RobotClient.at_address('MACHINE ADDRESS', opts) async def main(): diff --git a/docs/tutorials/services/navigate-with-rover-base.md b/docs/tutorials/services/navigate-with-rover-base.md index dfa0161e39..f763a24249 100644 --- a/docs/tutorials/services/navigate-with-rover-base.md +++ b/docs/tutorials/services/navigate-with-rover-base.md @@ -80,7 +80,7 @@ If you are using different hardware, the navigation setup process will be mostly {{% /alert %}} -Before you start, make sure to create a machine in the [Viam app](https://app.viam.com) and [install `viam-server`](/operate/get-started/setup/) on your robot. +Before you start, make sure to create a machine on [Viam](https://app.viam.com) and [install `viam-server`](/operate/get-started/setup/) on your robot. Also, make sure to physically connect your components together to your machine's computer and power it on. ## Configure the components you need @@ -101,7 +101,7 @@ We used a [`jetson` board](https://github.com/viam-modules/nvidia/tree/main/jets 1. Configure a board named `local` as shown below: -{{}} +{{}} 2. Configure [digital interrupts](https://github.com/viam-modules/nvidia/blob/main/README.md#digital-interrupt-configuration) on your board to signal precise GPIO state changes to the [encoders](/operate/reference/components/encoder/) on your rover base. Find your board on the **CONFIGURE** tab in **Builder** mode. @@ -141,9 +141,9 @@ Start by configuring the [encoders](/operate/reference/components/encoder/) and 1. Follow the [encoder configuration instructions](/operate/reference/components/encoder/#configuration) to configure the left and right encoders of the wheeled base. We configured ours as [`incremental` encoders](/operate/reference/components/encoder/incremental/), as shown below: - {{}} + {{}} - {{}} + {{}} Assign the pins as the [digital interrupts](https://github.com/viam-modules/nvidia/blob/main/README.md#digital-interrupt-configuration) you configured for the board, and wire the encoders accordingly to pins {{< glossary_tooltip term_id="pin-number" text="numbered" >}} `31`, `29`, `23`, and `21` on your `local` board. Refer to the [`incremental` encoder documentation](/operate/reference/components/encoder/incremental/) for attribute information. @@ -151,15 +151,15 @@ Start by configuring the [encoders](/operate/reference/components/encoder/) and 2. Next, follow [these instructions](/operate/reference/components/motor/#configuration) to configure the left and right [motors](/operate/reference/components/motor/) of the `wheeled` base. We [configured ours as `gpio` motors](/operate/reference/components/motor/gpio/), as shown below: -{{}} +{{}} -{{}} +{{}} Wire the motors accordingly to the GPIO pins {{< glossary_tooltip term_id="pin-number" text="numbered" >}} `35`, `35`, `15`, `38`, `40`, and `33` on your `local` board. Refer to the [`gpio` motor](/operate/reference/components/motor/gpio/) documentation for attribute information. 3. Finally, configure whatever rover you have as a [`wheeled`](/operate/reference/components/base/wheeled/) model of base, bringing the motion produced by these motors together on one platform: - {{}} + {{}} - Make sure to select each of your right and left motors as **right** and **left**, as well as set the **wheel_circumference_mm** and **width_mm** of each of the wheels the motors are attached to. - [Configure the frame system](/operate/reference/services/frame-system/) for this wheeled base so that the navigation service knows where it is in relation to the movement sensor. @@ -168,7 +168,7 @@ Refer to the [`gpio` motor](/operate/reference/components/motor/gpio/) documenta If your movement sensor is mounted on top of the rover like ours is, set **Orientation**'s third input field, Z, to `1` and its fourth input field, theta, to `90`. - Select the `world` as the parent frame. - {{}} + {{}} Refer to the [`wheeled` base configuration instructions](/operate/reference/components/base/wheeled/) for attribute information. @@ -322,21 +322,21 @@ In the **JSON** mode in your machine's **CONFIGURE** tab, add the following JSON 1. Configure a GPS movement sensor so the robot knows where it is while navigating. We configured ours as a `gps-nmea-rtk-serial` movement sensor: - {{}} + {{}} We named ours `gps`. Refer to [the `gps-nmea-rtk-serial` movement sensor documentation](https://github.com/viam-modules/gps/blob/main/README.md#configure-your-rtk-serial-movement_sensor) for attribute information. 2. Configure a wheeled odometry movement sensor to provide angular and linear velocity measurements from the encoded motors on our base. - {{}} + {{}} We named ours `enc-linear`. Refer to [the `wheeled-odometry` movement sensor documentation](/operate/reference/components/movement-sensor/wheeled-odometry/) for attribute information. 3. Now that you've got movement sensors which can give you GPS position and linear and angular velocity readings, configure a `merged` movement sensor to aggregate the readings from our other movement sensors into a singular sensor: - {{}} + {{}} We named ours `merged`. Refer to [the `merged` movement sensor documentation](/operate/reference/components/movement-sensor/merged/) for attribute information. @@ -434,7 +434,7 @@ In the **JSON** mode in your machine's **CONFIGURE** tab, add the following JSON Add the navigation service so that your wheeled base can navigate between waypoints and avoid obstacles. To add the navigation service to your robot, do the following: -1. Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +1. Navigate to the **CONFIGURE** tab of your machine's page. 1. Click the **+** icon next to your machine part in the left-hand menu and select **Component or service**. 1. Select the `navigation` type. 1. Enter a name or use the suggested name for your service and click **Create**. @@ -505,7 +505,7 @@ You can add waypoints from the [**CONTROL** tab](#control-tab-method) or [progra ### Control tab method -Go to the **CONTROL** tab of your robot in the [Viam app](https://app.viam.com), and open the navigation service card. +Go to the **CONTROL** tab of your machine, and open the navigation service card. From there, ensure that **Navigation mode** is selected as **Manual**, so your robot will not begin navigation while you add waypoints. @@ -514,12 +514,12 @@ From there, ensure that **Navigation mode** is selected as **Manual**, so your r Select **Waypoints** on the upper-left corner menu of the navigation card. Zoom in on your current location and click on the map to add a waypoint. -{{}} +{{}} Add as many waypoints as you desire. Hover over a waypoint in the left-hand menu and click the trash icon to delete a waypoint. -{{}} +{{}} #### (Optional) Add obstacles @@ -606,9 +606,9 @@ Now, you can make navigation even better with automated obstacle detection. First, configure a depth [camera](/operate/reference/components/camera/) that your robot can sense how far away it is from obstacles. -We configured ours as an Intel RealSense Camera, which is available as a {{< glossary_tooltip term_id="modular-resource" text="modular resource" >}} [in the Viam Registry](https://app.viam.com/module/viam/realsense): +We configured ours as an Intel RealSense Camera, which is available as a {{< glossary_tooltip term_id="modular-resource" text="modular resource" >}} in the [registry](https://app.viam.com/module/viam/realsense): -{{}} +{{}} {{< alert title="Tip" color="tip" >}} diff --git a/docs/tutorials/services/plan-motion-with-arm-gripper.md b/docs/tutorials/services/plan-motion-with-arm-gripper.md index a43da990af..41e62f05be 100644 --- a/docs/tutorials/services/plan-motion-with-arm-gripper.md +++ b/docs/tutorials/services/plan-motion-with-arm-gripper.md @@ -308,7 +308,7 @@ This is possible because the motion service considers other components of the ro We need to do several things to prepare a new gripper component for motion. -1. Go back to your robot configuration in the [Viam app](https://app.viam.com). +1. Go back to your machine configuration on [Viam](https://app.viam.com). 2. Navigate to the **Components** tab and click **Create component** in the lower-left corner to add a new gripper component to your robot: - Select `gripper` for the type and `fake` for the model. - Enter `myGripper` for the name of your gripper component. diff --git a/docs/tutorials/services/visualize-data-grafana.md b/docs/tutorials/services/visualize-data-grafana.md index 4206363fea..c022095ddc 100644 --- a/docs/tutorials/services/visualize-data-grafana.md +++ b/docs/tutorials/services/visualize-data-grafana.md @@ -17,7 +17,7 @@ no_list: true # SMEs: Data team, Natalia Jacobowitz --- - + Once you have [configured data query](/data-ai/data/query/#query-data-using-third-party-tools) for your organization's data store, you can visualize your data from a variety of third-party tools, including Grafana. @@ -27,7 +27,7 @@ Only components that capture [sensor](/operate/reference/components/sensor/) rea You can visualize both the captured data itself as well as its metadata, including machine ID, organization ID, and tags. -Follow the steps in this tutorial to learn how to collect data from your machine, sync that data to the Viam app, enable third-party access to that data, and present that data visually and flexibly in Grafana. +Follow the steps in this tutorial to learn how to collect data from your machine, sync that data to Viam, enable third-party access to that data, and present that data visually and flexibly in Grafana. {{% alert title="Info" color="info" %}} This tutorial focuses on using Grafana to visualize your captured data. @@ -40,14 +40,14 @@ For general guidance appropriate for any third-party visualization tool, see [Vi Before following this tutorial, ensure you have: -- Added a new machine in the [Viam app](https://app.viam.com) and follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` on the computer you're using for your project and connect to the Viam app. +- Added a new machine on [Viam](https://app.viam.com) and follow the {{< glossary_tooltip term_id="setup" text="setup instructions" >}} to install `viam-server` on the computer you're using for your project and connect to Viam. - A configured [sensor component](/operate/reference/components/sensor/), such as the [`bme280`](https://github.com/viam-modules/bosch/) sensor, that reports data. If it's a physical sensor, make sure to connect it to your machine's computer. - This tutorial uses a dataset of plant moisture measurements, originally captured for our [Plant watering tutorial](/tutorials/projects/make-a-plant-watering-robot/) using an analog resistive soil moisture sensor connected to an analog-to-digital-converter (ADC). - The ADC functionality was provided by the [`mcp300x-adc-sensor` module](https://app.viam.com/module/hazalmestci/mcp300x-adc-sensor) from the [Viam Registry](https://app.viam.com/registry). + The ADC functionality was provided by the [`mcp300x-adc-sensor` module](https://app.viam.com/module/hazalmestci/mcp300x-adc-sensor) from the [registry](https://app.viam.com/registry). - - If you already have data synced to the Viam app that you want to use, you can skip this requirement, and can skip directly to the [Configure data query](#configure-data-query) portion of this tutorial. + - If you already have data synced to Viam that you want to use, you can skip this requirement, and can skip directly to the [Configure data query](#configure-data-query) portion of this tutorial. - A Grafana instance. @@ -63,12 +63,12 @@ You can manage how your machine captures and syncs data to the cloud using the d First, add the data management service to your machine to be able capture and sync data: -1. Navigate to your machine's **CONFIGURE** tab in the [Viam app](https://app.viam.com). +1. Navigate to your machine's **CONFIGURE** tab. 1. Click the **+** button in the left-hand menu and select **Component or service** from the dropdown. 1. Select **data management**. 1. Give the service a name, like `viam-data-manager`, then click **Create**. 1. On the panel that appears, you can manage the capturing and syncing functions individually. - By default, the data management service captures data locally to the ~/.viam/capture directory, and syncs captured data files to the Viam app every 6 seconds (`0.1` minutes in the configuration). + By default, the data management service captures data locally to the ~/.viam/capture directory, and syncs captured data files to Viam every 6 seconds (`0.1` minutes in the configuration). Leave the default settings as they are, and click **Save** in the upper-right corner of the screen to save your changes. {{< imgproc src="/tutorials/data-management/data-management-conf.png" alt="The data management service configuration pane with default settings shown for both capturing and syncing" resize="900x" >}} @@ -83,7 +83,7 @@ Only sensor readings or other time-series data can be visualized in this manner. To enable data capture for a sensor component: -1. Navigate to your machine's **CONFIGURE** tab in the [Viam app](https://app.viam.com). +1. Navigate to your machine's **CONFIGURE** tab. 1. In the configuration pane for your [configured sensor component](#prerequisites), find the **Data capture** section, and click the **Add method** button to enable data capture for this camera. @@ -95,7 +95,7 @@ To enable data capture for a sensor component: 1. Click **Save Config** at the bottom of the window to save your changes. -After a short while, your sensor will begin capturing live readings, and syncing those readings to the Viam app. +After a short while, your sensor will begin capturing live readings, and syncing those readings to Viam. You can check that data is being captured and synced by clicking on the menu icon on the sensor configuration pane. and selecting **View captured data**. For more information see [data management service configuration](/data-ai/capture-data/capture-sync/). @@ -104,11 +104,11 @@ For more information see [data management service configuration](/data-ai/captur Next, enable the ability to query your synced data. When you sync captured data to Viam, that data is stored in the Viam organization’s [MongoDB Atlas Data Federation](https://www.mongodb.com/docs/atlas/data-federation/overview/) instance. -Configuring data query allows you to directly [query your data](/data-ai/data/query/#query-data-in-the-viam-app) using the Viam app or a compatible client (such as `mongosh`), but also allows Grafana to access that data and visualize it. +Configuring data query allows you to directly [query your data](/data-ai/data/query/#query-data-in-the-web-ui) using a compatible client (such as `mongosh`) or Grafana to access that data and visualize it. To enable data query: -1. Follow the steps to [configure data query](/data-ai/data/query/#query-data-in-the-viam-app). +1. Follow the steps to [configure data query](/data-ai/data/query/#query-data-in-the-web-ui). 1. Note the username and hostname returned from these steps, in addition to the password you chose for that user. You will use this information in the next section. @@ -222,7 +222,7 @@ See Grafana's [Global variables documentation](https://grafana.com/docs/grafana/ In this tutorial, you learned: -- how to use the [data management service](/data-ai/capture-data/capture-sync/) to capture data from your machine and sync it to the Viam app +- how to use the [data management service](/data-ai/capture-data/capture-sync/) to capture data from your machine and sync it to Viam - how to [enable data query access](/data-ai/data/query/#configure-data-query) to your synced data - how to connect Grafana to your data - how to build a dashboard visualizing that data diff --git a/docs/tutorials/services/webcam-line-follower-robot.md b/docs/tutorials/services/webcam-line-follower-robot.md index dbb500a2f4..dd73fdc79e 100644 --- a/docs/tutorials/services/webcam-line-follower-robot.md +++ b/docs/tutorials/services/webcam-line-follower-robot.md @@ -68,7 +68,7 @@ To build your own line follower robot, you need the following hardware: {{< tabs >}} {{% tab name="Builder" %}} -Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Navigate to the **CONFIGURE** tab of your machine's page. 1. **Add the board.** @@ -95,7 +95,7 @@ Navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https Select the type `camera`, and select the `webcam` model. Enter the name `my_camera`, then click create. Leave the **video_path** blank and the camera will use the default video path for your machine. - If this doesn't work when you test your camera later, you can try a different video path by following the prompt in the Viam app. + If this doesn't work when you test your camera later, you can try a different video path by following the prompt on the camera's configuration panel. 5. Click **Save** in the top right corner of the screen. @@ -181,7 +181,7 @@ Click **Save** in the top right corner of the screen. ## Test your components -Navigate to your [machine's **CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app) to test your components. +Navigate to your [machine's **CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui) to test your components. Verify that it’s connected by refreshing the page and ensuring that the part status dropdown (in the top banner) says, "Live." 1. Go to the **CONTROL** tab, click on the base panel, and toggle the camera to on. @@ -194,7 +194,7 @@ Verify that it’s connected by refreshing the page and ensuring that the part s If one or both drive motors are going backwards, you can power down the Pi by running `sudo poweroff`, unplug the battery, and switch the wires to the motor before powering it back on. {{< /alert >}} - {{}} + {{}} ## Configuring a color detector for the color of your tape line @@ -215,7 +215,7 @@ Now, let's configure the color detector so your rover can detect the line: {{< tabs >}} {{% tab name="Builder UI" %}} -Next, navigate to the **CONFIGURE** tab of your machine's page in the [Viam app](https://app.viam.com). +Next, navigate to the **CONFIGURE** tab of your machine's page. 1. **Add a vision service.** @@ -366,7 +366,7 @@ Click **Save** in the top right corner of the screen. ## Test your color detector -Navigate to your [machine's **CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#viam-app) to test the transform camera. +Navigate to your [machine's **CONTROL** tab](/manage/troubleshoot/teleoperate/default-interface/#web-ui) to test the transform camera. Click on the transform camera panel and toggle the camera on. You should now be able to view the camera feed with color detector overlays superimposed on the image. @@ -409,7 +409,7 @@ To make your rover follow your line, you need to install Python and the Viam Pyt 1. Download the [robot line follower code](https://github.com/viam-labs/line-follower/blob/main/rgb_follower.py). -1. From your robot’s page on the [Viam app](https://app.viam.com/), go to the **CONNECT** tab's **Code sample** page and select **Python**. +1. From your robot’s page, go to the **CONNECT** tab's **Code sample** page and select **Python**. {{% snippet "show-secret.md" %}} diff --git a/layouts/partials/navbar.html b/layouts/partials/navbar.html index d2d9af5c88..ecdf1b06a1 100644 --- a/layouts/partials/navbar.html +++ b/layouts/partials/navbar.html @@ -61,7 +61,7 @@

{{ partial "search-input.html" . }}
markdown_link string OptionalLink to the documentation (README) for this module. The Viam app uses this to render your README on your module's page in the registry. Similar to the markdown_link within the models object (described above), which allows the app to render info for a specific model in the configuration panel.Link to the documentation (README) for this module. Viam uses this to render your README on your module's page in the registry. Similar to the markdown_link within the models object (described above), which allows the app to render info for a specific model in the configuration panel.
$schema