Switch on and off usb ports programmatically on AGX

is it likely that the tool GitHub - mvp/uhubctl: uhubctl - USB hub per-port power control might work?
are there alternatives to easily off and on ports on AGX?

1 Like

hi,
A possible solution is to disable/enable regulator. We have done it in TX2/r28.2.1:

On Nano, there is embedded hub and we disable/enable power of hub:
https://elinux.org/Jetson/L4T/r32.3.x_patches
[Jetson Nano]Power control

Xavier is similar to TX2. You may try to disable/enable the regulator.

It seems that I might try the same method as

Copy realtek_hub_power_cycle.c to Jetson Nano
$ sudo apt-get install libusb-1.0-0-dev
$ gcc -o power_cycle realtek_hub_power_cycle.c -lusb-1.0
$ sudo ./power_cycle

https://forums.developer.nvidia.com/uploads/short-url/aSZujZz9LQUtN3aS8fuZnByxYtm.zip
without any modifications?

 sudo ./power_cycle 
[sudo] password for nvidia: 
[error]:open device 0bda:5411 fail.

would you advise which modifications will be required for AGX/NX?

Hi,
Xavier NX should be same as Nano.
For Type-A port on Xavier, please try

root@nvidia-desktop:/sys/class/regulator/regulator.13# echo disabled > state
root@nvidia-desktop:/sys/class/regulator/regulator.13# echo enabled > state

For usb-A port on Xavier it works,
However, could you confirm steps to power off & power on ports on NX, please?
Exercuting the nano sequence intact will throw out an error due to mnismatching port identifier as far as I can see.

Hi @Andrey1984
For clearness, please make a new post on Xavier NX board.

created: Howto disable/enable USB p[orts on NX programmatically?

1 Like

i tried this command
and get ([error]:open device 0bda:5411 fail.)