ST-LINK is a USB device and has to be connected to a PC host. It can be either embedded on ST boards or provided as standalone dongle. ST-LINK can support different debug protocols depending on ST-LINK hardware version and on its embedded firmware version: SWIM: debug protocol for STM8 microcontrollers.