Hi Simon,
The problem is that the host detects a device the moment you plug the USB cable from the computer to the baseboard and starts the enumeration process, if the MCU does not have any USB program loaded it will be enumerated as an Unknown device and if the MCU already had a USB program loaded it will work correctly.
On your case, I believe that the MCU already had the CDC example loaded and it was already enumerated by the host but when you reflashed the MCU and launched the debug session without disconnecting the USB cable there was not a proper re-enumeration for the device, that is why you need to connect and reconnect the cable. You can confirm this loading the cdc example to the MCU and making sure it is enumerated by the host, then you launch a debug session and you will see that even if the program is paused you will still see the VCom port enumerated in your computer, when you run the example you will see that it will not work correctly because of this.
Hope it helps!
Best Regards,
Carlos Mendoza
Technical Support Engineer