connect_hw_server - 2021.2 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2021.2 English

Open a connection to a hardware server


connect_hw_server [‑url <arg>] [‑cs_url <arg>] [‑quiet] [‑verbose]


Hardware server


Name Description
[-url] hw_server url Default: localhost:3121
[-cs_url] Url to use for cs_server. If default url is used and no server is running there, cs_server will be automatically launched on the default url. Default: TCP:localhost:3042
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution




Note: You must use the open_hw command to open the Hardware Manager in the Vivado Design Suite before using this command.

To open a hardware target containing a JTAG chain of one or more Xilinx devices, for programming and/or debugging your design, you must first connect to a Vivado tools hardware server (hw_server) to manage the connection to the hardware target (hw_target).

The hw_server manages the connection to the physical programming target. It should be running on the machine connected to the hardware programmer, or test board, connected either locally or remotely. The hw_server command must be launched as a separate application, and can be found in the /bin folder of your Vivado Design Suite installation directory.

To connect to a hardware server, the hw_server application must be running, and the host name and port number noted for the -url argument of the connect_hw_server command. The default URL for the hw_server process is localhost:3121. For more information on setting up and running the Vivado hardware server, refer to the Vivado Design Suite User Guide: Programming and Debugging (UG908).

You can connect a single instance of the Vivado Design Suite to multiple hardware servers, to support programming and debugging different device configurations. However, you can only have one connection to a specific hardware server as identified by the host name/port number combination. An error is returned if you attempt to open a connection to a server that is already connected.

The last connected hardware server is the current hardware server, unless changed by the current_hw_server command. Any connected server can be disconnected with the disconnect_hw_server command.

This command returns the host name of the hardware server that has been connected.


-url <arg> - (Optional) The URL of the running hw_server application. The URL consists of <hostname>:<port_number>. The default setting is localhost:3121.

-quiet - (Optional) Execute the command quietly, returning no messages from the command. The command also returns TCL_OK regardless of any errors encountered during execution.
Note: Any errors encountered on the command-line, while launching the command, will be returned. Only errors occurring inside the command will be trapped.
-verbose - (Optional) Temporarily override any message limits and return all messages from this command.
Note: Message limits can be defined with the set_msg_config command.


The following example connects to the hw_server on the remote host trumpet3, through port 3121:
connect_hw_server -url trumpet3:3121
This example connects to a running hw_server that is running locally with the default url:
Note: The hw_server command must be run separately prior to connection.