> For the complete documentation index, see [llms.txt](https://docs.chassy.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chassy.io/tutorials/automate-board-provisioning.md).

# Automate Board Provisioning

## Pre-requisites

Before we start this tutorial, you will need:

* An AMD x86-64 or ARM device to act as a remote proxy device
* A board to be provisioned
* USB cable to connect the board to the remote proxy device
* A Remote Proxy [Fleet](/user-guides/fleet-user-guide.md)

{% stepper %}
{% step %}

### Enroll a Remote Proxy Device

Navigate to the **Remote Proxies** tab on the Fleet panel. If you haven't already, create a Remote Proxy Fleet to manage all of your upcoming proxy device enrollments. Make sure that the *Proxy Fleet* checkbox is ticked. Detailed instructions on how to create a fleet and enroll devices can be found at [Creating a Fleet](/user-guides/fleet-user-guide/creating-a-fleet.md) and [Enrolling Machines](/user-guides/fleet-user-guide/enrolling-machines.md) guides respectively.

{% hint style="warning" %}
Several NVIDIA-required packages must be present on the Linux host serving as the Remote Proxy. Install them by running the following command once in a terminal.

```
curl -sfL https://cdn.chassy.io/test/provision-dependencies | bash -
```

{% endhint %}
{% endstep %}

{% step %}

### Set Up a Provisioning Workflow

Create a new [Workflow](/user-guides/workflow-user-guide/creating-a-workflow.md) to set up your provisioning details. Utilize the [Find Package](/reference/workflow-components/steps.md#find-package) and [Import Package](/reference/workflow-components/steps.md#import-package) steps to upload files into Chassy Index when needed.

Add a [Provision Setup](/reference/workflow-components/steps.md#provisioning) step to select your remote proxy device, and provide details on how you want the connected boards to be set up. Run the workflow when completed.

<figure><img src="/files/mwQFFeESOtaAa4cAbTfU" alt="A screenshot of the Provision Setup step and its details"><figcaption></figcaption></figure>
{% endstep %}

{% step %}

### Connect a Board to your Remote Proxy

Going back to the **Remote Proxies** tab on the Fleet panel, you should see your remote proxy machine and its status.

Put your board into recovery mode, then connect it to your remote proxy machine using a USB cable. The provisioning process will automatically begin. On the Chassy Console, you can see which provisioning phase the connected board is on: `Attached`, `Flashing`, `Configuring`, `Verifying`, `Succeeded`, `Error`, `Terminated`, or `Timed out`.

For connected boards that got `Error` , `Terminated` , or `Timed out` , you can restart the provisioning process by clicking on the restart button.

{% hint style="info" %}
Jetson boards have to be in recovery mode for it to be auto-detected and flashed by the remote proxy.
{% endhint %}
{% endstep %}

{% step %}

### Success! Your connected board is booting up.

The connected board will automatically reboot once the process is complete.
{% endstep %}
{% endstepper %}
