Skip to content

Commit

Permalink
Tweak setup and add support notice to hardware
Browse files Browse the repository at this point in the history
  • Loading branch information
JessamyT committed Jan 9, 2025
1 parent 5070ea3 commit 59d41ce
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 30 deletions.
4 changes: 2 additions & 2 deletions docs/operate/get-started/other-hardware/manage-modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -379,7 +379,7 @@ You can change the visibility of a module from public to private if:

To change the visibility, navigate to its page in the [**REGISTRY** section of the Viam app](https://app.viam.com/registry), 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.

{{<imgproc src="/registry/upload/edit-module-visibility.png" resize="x1000" declaredimensions=true alt="A module page with a Visibility heading on the right side. Under it, an Edit button has appeared." max-width="700px" >}}
{{<imgproc src="/registry/upload/edit-module-visibility.png" resize="x600" declaredimensions=true alt="A module page with a Visibility heading on the right side. Under it, an Edit button has appeared." max-width="900px" >}}

You can also edit the visibility by editing the <file>meta.json</file> file and then running the following [CLI](/dev/tools/cli/#module) command:

Expand All @@ -396,7 +396,7 @@ You can delete a module if:

To delete a module, navigate to its page in the [**REGISTRY** section of the Viam app](https://app.viam.com/registry), click the **...** menu in the upper-right corner of the page, and click **Delete**.

{{<imgproc src="/registry/upload/delete-module.png" resize="x1000" declaredimensions=true alt="A module page with the ... menu open. Delete is the only option in the menu." max-width="700px" >}}
{{<imgproc src="/registry/upload/delete-module.png" resize="x600" declaredimensions=true alt="A module page with the ... menu open. Delete is the only option in the menu." max-width="500px" >}}

{{% alert title="Note" color="note" %}}

Expand Down
54 changes: 28 additions & 26 deletions docs/operate/get-started/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,25 @@ aliases:
Get started by installing the open-source software that drives your hardware and connects your device to the cloud.
The easiest way to do this is through the Viam app, so that your machines are automatically connected to configuration and remote operation tools.

{{< expand "Supported systems" >}}

Viam can run on any computer that runs one of the following operating systems:

- Linux 64-bit operating systems running on AArch64 (ARM64) or x86-64 architectures
- macOS

Viam also offers a lightweight binary to support the following 32-bit microcontrollers:

- [ESP32-WROVER Series](https://www.espressif.com/en/products/modules/esp32)
- ESP32-WROOM Series (until v0.1.7)

ESP32 microcontrollers must have at least 2 cores, 384kB SRAM, 2MB PSRAM and 4MB flash to work with Viam.

Viam can run on Windows Subsystem for Linux (WSL), but WSL itself does not currently support exposing many types of Windows hardware to the embedded Linux kernel.
This means that some hardware, such as a connected webcam, may not be available to `viam-server` with WSL, even though it is fully supported for native Linux systems.

{{< /expand >}}

## Quickstart

{{< expand "Prerequisite: Operating system setup" >}}
Expand Down Expand Up @@ -74,15 +93,6 @@ You can think of one machine as representing one device, or one robot.

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.

### Installation methods: `viam-agent` versus manual

`viam-agent` is a service manager that automatically updates `viam-server` and includes tools for [provisioning your devices](/manage/fleet/provision/setup/) and configuring operating system updates.

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.

`viam-agent` is not available for macOS, Windows Subsystem for Linux (WSL), or microcontrollers, so use manual install for those systems.

### How the configuration works

The machine setup steps displayed in the Viam app copy your machine's credentials to your machine.
Expand All @@ -95,6 +105,15 @@ All communication happens securely over HTTPS using secret tokens that are in th

If your machine will never connect to the internet, you can also create a [local configuration file](/operate/reference/viam-server/local-configuration-file/) on the machine itself.

### Installation methods: `viam-agent` versus manual

`viam-agent` is a service manager that automatically updates `viam-server` and includes tools for [provisioning your devices](/manage/fleet/provision/setup/) and configuring operating system updates.

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.

`viam-agent` is not available for macOS, Windows Subsystem for Linux (WSL), or microcontrollers, so use manual install for those systems.

### Manage your installation

On Linux installs, by default `viam-server` or `viam-agent` and `viam-server` will start automatically when your system boots.
Expand All @@ -104,20 +123,3 @@ You can change this behavior if desired.
To learn how to run, update, or uninstall `viam-agent`, see [Manage `viam-agent`](/manage/reference/viam-agent/manage-viam-agent/).

For manual installs of only `viam-server`, see [Manage `viam-server`](/operate/reference/viam-server/manage-viam-server/).

## Supported systems

Viam can run on any computer that runs one of the following operating systems:

- Linux 64-bit operating systems running on AArch64 (ARM64) or x86-64 architectures
- macOS

Viam also offers a lightweight binary to support the following 32-bit microcontrollers:

- [ESP32-WROVER Series](https://www.espressif.com/en/products/modules/esp32)
- [ESP32-WROOM Series](https://www.espressif.com/en/products/modules/esp32) (until v0.1.7)

ESP32 microcontrollers must have at least 2 cores, 384kB SRAM, 2MB PSRAM and 4MB flash to work with Viam.

Viam can run on Windows Subsystem for Linux (WSL), but WSL itself does not currently support exposing many types of Windows hardware to the embedded Linux kernel.
This means that some hardware, such as a connected webcam, may not be available to `viam-server` with WSL, even though it is fully supported for native Linux systems.
10 changes: 9 additions & 1 deletion docs/operate/get-started/supported-hardware/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,11 @@ These standardized APIs are implemented by {{< glossary_tooltip term_id="module"

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](../other-hardware/) that provides a driver for the hardware.

Viam also supports various software services such as [data capture](/data-ai/capture-data/capture-sync/) and [computer vision](/data-ai/ai/create-dataset/), designed to integrate seamlessly with the hardware driver modules.
{{% alert title="Tip" color="tip" %}}

Viam also supports various software services such as [data capture](/data-ai/capture-data/capture-sync/) and [computer vision](/dev/reference/apis/services/vision/), designed to integrate seamlessly with the hardware driver modules.

{{% /alert %}}

## Supported hardware

Expand All @@ -70,6 +74,10 @@ The Viam Registry is the storage and distribution system for not just hardware m
You can browse the [Viam Registry in the Viam app](https://app.viam.com/registry?type=Module).
{{% /alert %}}

{{% alert title="Support notice" color="note" %}}
Modules in the list above are officially supported and maintained by Viam if and only if they are marked as "built-in", or if the first part of their model triplet is `viam`.
{{% /alert %}}

### For use with ESP-32 microcontrollers

The following is a selection of components (some built-ins and some modules) written for use with `viam-micro-server`.
Expand Down
2 changes: 1 addition & 1 deletion docs/operate/reference/components/base/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ The base component provides an API for moving all configured components attached
If you have a mobile robot, use a base component to coordinate the motion of its motor components.

<p>
<img src="/components/base/base-trk-rover-w-arm.png" alt="A robot comprised of a wheeled base (motors, wheels and chassis) as well as some other components. The wheels are highlighted to indicate that they are part of the concept of a 'base', while the non-base components are not highlighted. The width and circumference are required attributes when configuring a base component." class="imgzoom aligncenter" style="width: 500px">
<img src="/components/base/base-trk-rover-w-arm.png" alt="A robot comprised of a wheeled base (motors, wheels and chassis) as well as some other components. The wheels are highlighted to indicate that they are part of the concept of a 'base', while the non-base components are not highlighted. The width and circumference are required attributes when configuring a base component." class="imgzoom aligncenter" style="width: 550px">
</p>

## Configuration
Expand Down

0 comments on commit 59d41ce

Please sign in to comment.