# Set up the Vision Kit

## Connect the camera to Skynode

Connect the camera to one of the USB ports present on Skynode using the provided cable.\
Attach Skynode to your developing PC and power it up as shown in: "[Connecting to a device](/~/changes/TDRfjBXXgHmxK48cWqay/app-development/app-development/connecting-to-a-device.md)".

<figure><img src="/files/53vfpYzAXMJf2SF3Tejk" alt=""><figcaption></figcaption></figure>

## Software requirements

{% hint style="warning" %}
The necessary services come pre-installed in AuterionOS starting from version 2.15.10.
{% endhint %}

Verify the presence and status of the required apps and services (**app-base-v2** and **video2ros**).\
This can be achieved in two different ways:

1. Via the `auterion-cli app list` command\
   (as mentioned inside "[Connecting to a device](/~/changes/TDRfjBXXgHmxK48cWqay/app-development/app-development/connecting-to-a-device.md) - Show a list of installed apps").

{% code fullWidth="false" %}

```
user@Laptop:~$ auterion-cli app list
App name                  Version    App status    App enable (autostart)    Service name    Service status    Service enable (autostart)    SSH port
------------------------  ---------  ------------  ------------------------  --------------  ----------------  ----------------------------  ----------
com.auterion.app-base-v2  v2         Installed                               base-image                                                      None
com.auterion.video2ros    0.5.0      running       enabled                   add-file        running           running                       14114
└─                                                                           gscam2          running           running                       None
```

{% endcode %}

2. Via the Skynode WebUI <http://10.41.1.1/>:

<figure><img src="/files/lRkuaDEbwTWYdztkRc51" alt=""><figcaption></figcaption></figure>

Additionally, the Web UI allows you to easily modify the configuration and settings of apps and services. To do that, just press on the icon shown in the top right corner of the application box and select the desired action.\
Configurations that are unique to a particular app or service can be modified via action buttons as shown above (e.g. "Add calibration file >").

## The "video2ros" service

The activity performed by this service consists of acquiring the raw video frames sent to Skynode via USB and publish them inside the `/camera/image_raw` ROS2 topic. The topics published by AuterionOS apps or services will also be available inside any other app or service running on the same device.\
For 'video2ros', the rate at which the topic is published can be specified inside its settings by changing the "Frame rate" variable.\
\
The default camera settings are as follows:

| Variable   | Value        |
| ---------- | ------------ |
| Frame rate | 15           |
| Width      | 1280         |
| Height     | 720          |
| Format     | YUV422       |
| Device     | /dev/videoCV |

To verify that the topic is being published you can use the ROS2 CLI commands from any desired app or service running on your device.\
For example, it is possible to check the `ros2 topic list` directly from the "video2ros" service.\
To do that, make sure that the service is running and follow the below listed points:

```bash
pc> ssh root@10.41.1.1    #SSH into Skynode

host> docker ps     #Copy the container ID for the desired app/service (e.g.: video2ros)
host> docker exec -ti <container-id> /bin/bash

app> source /opt/ros/humble/setup.bash
app> ros2 topic list
```

Go to the next page to install and run an example app making use of the vision kit.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.auterion.com/~/changes/TDRfjBXXgHmxK48cWqay/app-development/resources/skynode-vision-kit-s/set-up-the-vision-kit.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
