# Programming Your Radio (Advanced)

### REST API

A RESTful API interface is included to place the radio in "Team Bridge" or "Team Access Point" mode.&#x20;

#### Configuring as an Indoor Client/STA (TEAM\_ROBOT\_RADIO)

{% code overflow="wrap" fullWidth="false" %}

```
curl -XPOST http://192.168.69.1/configuration -d '{"mode":"TEAM_ROBOT_RADIO", "teamNumber":1538,"wpaKey6":"SeCuRe-6Ghz-Key","wpaKey24":"My-2.4Ghz-Key"}'
```

{% endcode %}

By placing the radio into "Robot Radio" or "TEAM\_ROBOT\_RADIO" mode, the radio will be configured to connect to an 802.11ax Wi-Fi 6E access point with the corresponding SSID of the team number listed.&#x20;

| JSON Key   | Description                                    | Value                                   |
| ---------- | ---------------------------------------------- | --------------------------------------- |
| mode       | Sets mode to Client/STA (robot radio)          | "TEAM\_ROBOT\_RADIO"                    |
| teamNumber | FRC team number                                | Decimal                                 |
| wpaKey6    | SAE password for the 6GHz Wi-Fi connection     | String between 8 and 16 characters long |
| wpaKey24   | SAE password for the 2.4GHz Wi-Fi access point | String between 8 and 16 characters long |

{% hint style="info" %}
When DIP switch #3 is in the ON position AND a valid connection to an 6GHz 802.11ax Wi-Fi access point is not present, the radio will simultaneously broadcast as a 2.4GHz 802.11ax Wi-Fi access point with the SSID of "FRC-XXYY" where XXYY is the programmed team number.

Once the radio successfully connects to a 6GHz 802.11ax Wi-Fi access point, the 2.4Ghz 802.11ax Wi-Fi access point will shut down until the device is power cycled.
{% endhint %}

#### Configuring as an Access Point (TEAM\_ACCESS\_POINT)

{% hint style="danger" %}
When configured as a **WIRELESS ACCESS POINT**, due to regulatory requirements, the VH-109 radio **cannot be powered using a battery source** and is for **Indoor Use Only**. The device is regulated by the **FCC** **LPI** (Low Power Indoor) requirements when in this mode. \
\
Only when the VH-109 radio is configured as an **INDOOR CLIENT DEVICE (STA)** may it be powered using a battery.
{% endhint %}

{% code overflow="wrap" %}

```
curl -XPOST http://192.168.69.1/configuration -d '{"mode":"TEAM_ACCESS_POINT", "teamNumber":1538,"wpaKey6":"SeCuRe-6Ghz-Key","channel":5}'
```

{% endcode %}

By placing the radio into Access Point or "TEAM\_ACCESS\_POINT" mode, the radio will be configured to broadcast as an 802.11ax Wi-Fi 6E access point with the corresponding SSID of the team number listed using the SAE key provided.&#x20;

| JSON Key   | Description                                | Value                                   |
| ---------- | ------------------------------------------ | --------------------------------------- |
| mode       | Sets mode to Access Point                  | "TEAM\_ACCESS\_POINT"                   |
| teamNumber | FRC team number                            | Decimal                                 |
| wpaKey6    | SAE password for the 6GHz Wi-Fi connection | String between 7 and 16 characters long |
| channel    | Selects a Wi-Fi 6E 20 MHz channel          | Decimal                                 |


---

# 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://frc-radio.vivid-hosting.net/advanced-topics/programming-your-radio-advanced.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.
