Skip to content

Commit

Permalink
Update installation pages (#1991)
Browse files Browse the repository at this point in the history
  • Loading branch information
npentrel authored Oct 9, 2023
1 parent dfad994 commit 989972e
Show file tree
Hide file tree
Showing 13 changed files with 387 additions and 88 deletions.
4 changes: 4 additions & 0 deletions assets/scss/_styles_project.scss
Original file line number Diff line number Diff line change
Expand Up @@ -509,6 +509,8 @@ END MARKETING CSS
.hover-card.small {
min-width: 125px;
max-width: 28%;
min-width: 150px;
max-width: 150px;
}
.hover-card.small > a div.small-hover-card-div > div {
font-size: 0.833rem !important;
Expand All @@ -518,6 +520,8 @@ END MARKETING CSS
.hover-card.small {
padding: 0.5rem;
margin: 0.5rem;
min-width: 150px;
max-width: 150px;
}

.hover-card.small > a {
Expand Down
2 changes: 1 addition & 1 deletion docs/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ sitemap:
</a>
</li>
<li id="c1_slide14">
<a href="components/board/customlinux/">
<a href="installation/prepare/pumpkin/">
{{<imgproc src="installation/thumbnails/pumpkin.png" resize="148x120" declaredimensions=true alt="pumpkin board">}}
<p>Pumpkin i500</p>
</a>
Expand Down
2 changes: 1 addition & 1 deletion docs/appendix/local-configuration-file.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ If your robot will never connect to the internet, you can create a local configu
A locally-configured robot will not be able to access Viam's cloud features.
For most users, we recommend [using the Viam app to create the configuration file](#build-a-local-configuration-file-in-the-viam-app) as it is less error-prone.

If you followed the instructions to [install `viam-server` on an SBC](/installation/#install-viam-server) or [install on a macOS or Linux computer](/installation/#install-on-a-macos-or-linux-computer), the installation process provides an example configuration file in the following location:
If you followed the instructions to [install `viam-server`](/installation/), the installation process provides an example configuration file in the following location:

- Linux: <file>/etc/viam.json</file>
- macOS: <file>/opt/homebrew/etc/viam.json</file>
Expand Down
11 changes: 4 additions & 7 deletions docs/components/board/customlinux.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,9 @@ tags: ["board", "components"]

Configure a `customlinux` board to integrate linux boards like the [Pumpkin i500](https://ologicinc.com/portfolio/mediateki500/) into your robot.

Complete the following setup requirements, then move on to configuring your board in the [Viam app](https://app.viam.com):
## Create a pin mappings file

## Setup requirements

- Create a new robot in the [Viam app](https://app.viam.com) and follow the steps on the [setup tab](/installation/#installation-steps) to [install `viam-server`](/installation/) on your `customlinux` board and connect your board to the Viam app.
- On your `customlinux` board, create a file in your <file>/home/root</file> directory called <file>board.json</file> with your board's pin mappings:
On your `customlinux` board, create a file in your <file>/home/root</file> directory called <file>board.json</file> with your board's pin mappings:

{{< tabs >}}
{{% tab name="Template" %}}
Expand Down Expand Up @@ -239,7 +236,7 @@ Enter a name for your `customlinux` board and click **Create**.
![An example configuration for a customlinux board in the Viam app Config Builder.](/components/board/customlinux-ui-config.png)

Copy and paste the following attribute template into your board's **Attributes** box.
Then edit the attribute as applicable to your board, according to the table below.
Then edit the file path to use your [pin mappings file](#create-a-pin-mappings-file).

{{< tabs >}}
{{% tab name="Attributes template" %}}
Expand Down Expand Up @@ -310,4 +307,4 @@ The following attributes are available for `board/customlinux` boards:
<!-- prettier-ignore -->
| Name | Type | Inclusion | Description |
| ---- | ---- | --------- | ----------- |
| `board_defs_file_path` | string | **Required** | The path to the pin mappings. See [Setup requirements](#setup-requirements). |
| `board_defs_file_path` | string | **Required** | The path to the pin mappings. See [Create a pin mappings file](#create-a-pin-mappings-file). |
78 changes: 23 additions & 55 deletions docs/installation/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ type: docs
image: "/installation/thumbnails/install.png"
imageAlt: "Install Viam"
images: ["/installation/thumbnails/install.png"]
description: "To use Viam software with your smart machine, install and run the viam-server binary on the computer that you want to use to control the smart machine."
description: "To use Viam software with your smart machine, install and run the viam-server binary on the computer that is connected to your hardware."
aliases:
- /installation/prepare/
- /installation/macos-install/
Expand All @@ -21,25 +21,31 @@ aliases:
- /getting-started/linux-install/
---

To use Viam software with your smart machine, install and run the `viam-server` binary on the computer that you want to use to control the smart machine.
In most cases, this will be a [single board computer (SBC)](#install-on-a-single-board-computer), like a Raspberry Pi, but you can also install `viam-server` on a [macOS or Linux computer](#install-on-a-macos-or-linux-computer).
To use Viam software with your smart machine, install and run the `viam-server` binary on the single board computer (SBC) or other computer that is connected to your hardware.
Installing on a laptop or desktop computer is useful if you don't have an SBC available, or if you want to run a Viam [service](/services/) with your robot that requires more computing resources than are otherwise available on an SBC.

For an overview of the Viam software platform, see [Viam in 3 minutes](/viam/).
{{< alert title="Compatibility" color="note" >}}

`viam-server` supports:

- Linux 64-bit operating systems running on the `aarch64` or `x86_64` architectures
- macOS

## Install on a single board computer
{{< /alert >}}

For an overview of the Viam software platform, see [Viam in 3 minutes](/viam/).

### Prepare your board
## Prepare your board

If you haven't already, you must install a supported operating system on your {{< glossary_tooltip term_id="board" text="board" >}} (SBC).
`viam-server` supports Linux 64-bit operating systems running on the `aarch64` or `x86_64` architectures.
If you are using one of the following boards, you can follow our guide for that board to prepare it for installation:
If you are using one of the following boards, click on the card to follow the guide for that board:

{{< cards >}}
{{% card link="/installation/prepare/rpi-setup/" class="small" %}}
{{% card link="/installation/prepare/beaglebone-setup/" class="small" %}}
{{% card link="/installation/prepare/sk-tda4vm/" class="small" %}}
{{% card link="/installation/prepare/jetson-nano-setup/" class="small" %}}
{{% card link="/installation/prepare/jetson-agx-orin-setup/" class="small" %}}
{{% card link="/installation/prepare/pumpkin/" class="small" %}}
{{< /cards >}}

<br>
Expand All @@ -55,37 +61,18 @@ If you are using a microcontroller, prepare your board using the following guide

Other SBCs such as the [RockPi S](https://wiki.radxa.com/RockpiS) and [Orange Pi Zero 2](https://orangepi.com/index.php?route=product/product&path=237&product_id=849) can run Viam with an experimental [periph.io](https://periph.io/) based [modular component](https://github.com/viam-labs/periph_board).

### Install `viam-server`

Once you have a compatible operating system on your board, follow along with the video below or walk through the steps outlined beneath it to install `viam-server` on your board:

{{<youtube embed_url="https://www.youtube-nocookie.com/embed/gmIW9JoWStA">}}

#### Installation steps
## Install `viam-server`

1. Go to the [Viam app](https://app.viam.com) and [add a new robot](/manage/fleet/robots/#add-a-new-robot).
If this is your first time using the Viam app, you must create an account first.

1. On the **Setup** tab, select `Linux (Aarch64)` or `Linux (x86_64)`for the appropriate **Architecture** for your board.
On most Linux operating systems, you can run `uname -m` to confirm your board's architecture.

1. Follow the steps shown on the **Setup** tab to install `viam-server` on your board.

1. Once `viam-server` is installed and running on your board, return to the **Setup** page on the [Viam app](https://app.viam.com) and wait for confirmation that your robot has successfully connected.
If you have a [compatible operating system](/installation/), follow along with the steps outlined below or with the video beneath it to install `viam-server`:

By default, `viam-server` will start automatically when your system boots, but you can [change this behavior](/installation/manage/) if desired.

## Install on a macOS or Linux computer
{{< tabs name="Install on computer" >}}
{{% tab name="Linux computer" %}}

You can also install `viam-server` on a macOS or Linux computer.
This is useful if you don't have a board available, or if you want to run a Viam [service](/services/) with your robot that requires more computing resources than are otherwise available on an SBC.
Select the tab below for your operating system:
{{< readfile "/static/include/install/install-linux.md" >}}

{{< tabs name="Install on computer" >}}
{{% /tab %}}
{{% tab name="macOS computer" %}}

### Install on a macOS computer

`viam-server` is available for macOS users through [Homebrew](https://brew.sh/), and supports both Intel and Apple Silicon macOS computers.
To install `viam-server` on a macOS computer:

Expand All @@ -98,30 +85,11 @@ To install `viam-server` on a macOS computer:

1. Once `viam-server` is installed and running, return to the **Setup** page on the [Viam app](https://app.viam.com) and wait for confirmation that your computer has successfully connected.

{{% /tab %}}
{{% tab name="Linux computer" %}}

### Install on a Linux computer

`viam-server` is distributed for Linux as an [AppImage](https://appimage.org/).
The AppImage is a single, self-contained binary that runs on 64-bit Linux systems running the `aarch64` or `x86_64` architectures, with no need to install any dependencies.
To install `viam-server` on a Linux computer:

1. Go to the [Viam app](https://app.viam.com) and [add a new robot](/manage/fleet/robots/#add-a-new-robot).
If this is your first time using the Viam app, you must create an account first.

1. On the **Setup** tab, select `Linux (Aarch64)` or `Linux (x86_64)` for the appropriate **Architecture** for your computer.
On most Linux operating systems, you can run `uname -m` to confirm your computer's architecture.

1. Follow the steps shown on the **Setup** tab to install `viam-server` on your Linux computer.

1. Once `viam-server` is installed and running, return to the **Setup** page on the [Viam app](https://app.viam.com) and wait for confirmation that your computer has successfully connected.

By default, `viam-server` will start automatically when your system boots, but you can [change this behavior](/installation/manage/) if desired.

{{% /tab %}}
{{< /tabs >}}

{{<youtube embed_url="https://www.youtube-nocookie.com/embed/gmIW9JoWStA">}}

## Next Steps

{{< cards >}}
Expand Down
20 changes: 14 additions & 6 deletions docs/installation/prepare/beaglebone-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,14 @@ The following instructions mirror the instructions given in the BeagleBoard docu

If you want additional help setting up your BeagleBone, you can follow the guides there and return to the Viam docs after SSH'ing into your BeagleBone.

### Step 1: Power your BeagleBone
## Power your BeagleBone

Power your board by plugging a 5VDC power source into the BeagleBone's barrel jack.
You can also power the BeagleBone with a USB-C cable, but a 5VDC power source is recommended for more reliable performance.

If the board has power, the LED on the board labeled _PWR_ or _ON_ is lit steadily.

### Step 2: Enable a network connection
## Enable a network connection

You need to enable a network connection on your BeagleBone to install `viam-server` on it.
You can do this in multiple ways:
Expand All @@ -53,7 +53,7 @@ You can do this in multiple ways:
- If you are working on a Linux machine, read [these tips on enabling a network connection](https://elinux.org/Beagleboard:Terminal_Shells).
- If your personal computer supports mDNS (Multicast DNS), you can check to see if your BeagleBone board has established a network connection by visiting [beaglebone.local](https://beaglebone.local).

### Step 3: SSH into your BeagleBone from your PC
## SSH into your BeagleBone from your PC

You can SSH into your BeagleBone by running the following command in your terminal:

Expand All @@ -69,19 +69,27 @@ Therefore, if you are using the default settings on your BeagleBone, the command

`ssh [email protected]`

### Step 4: Update your BeagleBone
## Update your BeagleBone

After SSH'ing into your BeagleBone, verify all packages are up to date:

`sudo apt update && sudo apt dist-upgrade && sudo reboot`

### Step 5: Install `viam-server`
## Install `viam-server`

Now that your BeagleBone has a Viam-compatible operating system installed, continue to our [viam-server installation guide](/installation/#install-viam-server) to install `viam-server` on the board.
{{< readfile "/static/include/install/install-linux.md" >}}

## Troubleshooting

If you experience any issues getting Viam working on your BeagleBone, consult the [BeagleBone documentation](https://docs.beagleboard.org/latest/boards/beaglebone/ai-64/ch03.html) for help updating your BeagleBone.
{{< snippet "social.md" >}}

You can find additional assistance in the [Troubleshooting section](/appendix/troubleshooting/).

## Next Steps

{{< cards >}}
{{% card link="/manage/configuration/" %}}
{{% card link="/tutorials/" %}}
{{% card link="/try-viam/" %}}
{{< /cards >}}
26 changes: 17 additions & 9 deletions docs/installation/prepare/jetson-agx-orin-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,16 +53,12 @@ You need the following hardware, tools, and software to install `viam-server` on

## Jetson Orin Setup Guide

1. Follow the instructions in [Getting Started with Jetson AGX Orin Developer Kit](https://developer.nvidia.com/embedded/learn/get-started-jetson-agx-orin-devkit) to boot up your Orin for the first time.
Follow the instructions in [Getting Started with Jetson AGX Orin Developer Kit](https://developer.nvidia.com/embedded/learn/get-started-jetson-agx-orin-devkit) to boot up your Orin for the first time.

If you have already booted up your Orin, start with "Step 2 - Install JetPack Components" to make sure you have installed the latest NVIDIA JetPack components.
If you have already booted up your Orin, start with "Step 2 - Install JetPack Components" to make sure you have installed the latest NVIDIA JetPack components.

Look at the Troubleshooting section below for help navigating these instructions.
Once you have reached _Next Steps_, return to the Viam docs.

2. Your Jetson AGX Orin now has a Viam-compatible operating system installed.
Continue to our [viam-server installation guide](/installation/#install-viam-server).
Note that the Jetson AGX Orin has aarch64 CPU architecture.
Look at the Troubleshooting section below for help navigating these instructions.
Once you have reached _Next Steps_, return to the Viam docs.

{{< alert title="Tip: <code>viam-server</code> installation with <code>curl</code>" color="tip" >}}

Expand All @@ -72,7 +68,11 @@ If this command fails, try using `wget https://storage.googleapis.com/packages.v

{{% /alert %}}

### Camera Setup
## Install `viam-server`

{{< readfile "/static/include/install/install-linux-aarch.md" >}}

## Camera Setup

1. Install E-Con Systems [e-CAM20_CUOAGX](https://www.e-consystems.com/nvidia-cameras/jetson-agx-orin-cameras/full-hd-ar0234-color-global-shutter-camera.asp) AR0234 driver.
Consult the instructions you received when purchasing your device for more information.
Expand Down Expand Up @@ -112,3 +112,11 @@ If this command fails, try using `wget https://storage.googleapis.com/packages.v
You can find additional assistance in the [Troubleshooting section](/appendix/troubleshooting/).

{{< snippet "social.md" >}}

## Next Steps

{{< cards >}}
{{% card link="/manage/configuration/" %}}
{{% card link="/tutorials/" %}}
{{% card link="/try-viam/" %}}
{{< /cards >}}
19 changes: 14 additions & 5 deletions docs/installation/prepare/jetson-nano-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,10 @@ You need the following hardware, tools, and software to install `viam-server` on

## Nano Setup Guide

1. Follow the instructions in [Getting Started with Jetson Nano Developer Kit](https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit) or [Getting Started with Jetson Orin Nano Developer Kit](https://developer.nvidia.com/embedded/learn/get-started-jetson-orin-nano-devkit).
Once you have reached _Next Steps_, return to the Viam docs.
2. Your Jetson Nano or Jetson Orin Nano now has a Viam-compatible operating system installed.
Continue to [install viam-server](/installation/#install-viam-server).
Note that the Jetson Nano and Jetson Orin Nano have `aarch64` CPU architecture.
Follow the instructions in [Getting Started with Jetson Nano Developer Kit](https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit) or [Getting Started with Jetson Orin Nano Developer Kit](https://developer.nvidia.com/embedded/learn/get-started-jetson-orin-nano-devkit).
Once you have reached _Next Steps_, return to the Viam docs.

## Install `viam-server`

{{< alert title="Tip: <code>viam-server</code> installation with <code>curl</code>" color="tip" >}}

Expand All @@ -65,6 +64,8 @@ If this command fails, try using `wget https://storage.googleapis.com/packages.v

{{% /alert %}}

{{< readfile "/static/include/install/install-linux-aarch.md" >}}

## Troubleshooting

Make sure the polarity on your barrel jack power supply is matched when powering your robot.
Expand All @@ -73,3 +74,11 @@ See the last step of your appropriate [initial setup guide](#hardware-requiremen
You can find additional assistance in the [Troubleshooting section](/appendix/troubleshooting/).

{{< snippet "social.md" >}}

## Next Steps

{{< cards >}}
{{% card link="/manage/configuration/" %}}
{{% card link="/tutorials/" %}}
{{% card link="/try-viam/" %}}
{{< /cards >}}
Loading

0 comments on commit 989972e

Please sign in to comment.