---
title: roUsbPowerControl
slug: develop/rousbpowercontrol
docTags: 
createdAt: 2025-03-26T17:59:41.433Z
---

The roUsbPowerControl object is used to control the power of the USB port for specific supported platforms. The supported platforms are XT1144, XD1034, AU325, and AU335. This object is available on BrightSign OS 8.2.20 and above.

## ifUsbPowerControl

**PowerCyclePort(friendly\_name As String) As Boolean**

Allows you to power cycle the VBus on a device that may be stuck on a specific port. This method returns `True` on success, or `False` on failure.

- `friendly_name` <font color="#6554c0">string</font>: The friendly name of the specific USB port. Refer to the table below to map friendly names to supported platforms. For example, call `usb.powerCyclePort("USB:A")` to turn the USB power on port 1 of AU325 off and on again.

| **Platform**   | **USB**          | **Friendly Name**                                          |
| -------------- | ---------------- | ---------------------------------------------------------- |
| AU325          | 1, 2, 3, 4, 5, 6 | "USB\:A", "USB\:B", "USB\:C", "USB\:D", "USB\:E", "USB\:F" |
| AU335          | Type-C           | "USB\:A"                                                   |
| XD1034, XT1144 | Type-C, Type-A   | "USB\:A", "USB\:B"                                         |

**PowerCycleAllPorts() As Boolean**

Call `usb.PowerCycleAllPorts()` to turn the power off and on for all USB ports and power cycle all plugged in devices. This method returns `True` on success, or `False` on failure.

**PortPowerOn(friendly\_name As String) As Boolean**

Allows you to power on the specified port. This method returns `True` on success, or `False` on failure.

- `friendly_name` <font color="#6554c0">string</font>:  The friendly name of the specific USB port. Please refer to the table above to map friendly names on supported platforms.

**PortPowerOff(friendly\_name As String) As Boolean**

Allows you to power off the specified port. This method returns `True` on success, or `False` on failure.

- `friendly_name` <font color="#6554c0">string</font>: The friendly name of the specific USB port.  Please refer to the table above to map friendly names on supported platforms.

## Example

This example power cycles USB\:A and USB\:B ports with a one second wait:

```none
usb = CreateObject("roUsbPowerControl")
? usb.PortPowerOff("USB:A")
? usb.PortPowerOff("USB:B")
sleep(1000)
? usb.PortPowerOn("USB:A")
? usb.PortPowerOn("USB:B")
```

