Recognition trouble with USB device mode

The above is indeed using serial console. It just happens that this is a way to log in when there is no monitor, and without need for an account to already exist (which ssh would require). So in your case it is equivalent to say you are using serial console to perform first boot setup in headless mode.

Serial console has no need for a video card, monitor, so on. Much of the o/s could be destroyed, and serial console would still work since it has no need of many libraries and drivers you’d require for a GUI, or even in comparison to a normal text mode login.

The serial console cable is mandatory to use this method since the Nano itself does not have the host PC side’s UART (some Jetson models do have this, in which case they just use an ordinary micro-B USB cable and not a USB serial UART cable). It is the UART part which becomes the COM port you are working with.

If you are unable to get such a cable, then you’ll need to either (A) use a monitor and keyboard, or (B) cheat a bit and create the first boot content on the image prior to flashing the image (or in the case of a pre-made SD card image, then you’d cheat and modify the image directly on the SD card and not perform a flash step).

There is more or less no possibility of the “cheat” part from Windows. The script for doing this typically would use loopback mount (for file content to be flashed), which even WSL does not support, plus it requires using QEMU, though you might get away with this from WSL when operating directly on an SD card. However, I’m not sure WSL would pass through the SD card partitions correctly (or at least without a lot of work).

Note that the “cheat” part could work from a VM (which WSL is not a VM in some ways). Technically you would be using Linux, and since you are not flashing (you’re just using that script on an existing image), then you could use a VM. If interested in “cheating” and performing first boot operations directly on an image, see:
https://forums.developer.nvidia.com/t/jetson-nano-all-usb-ports-suddenly-stopped-working/75784/37
(you’d use the l4t_create_default_user script from Linux, and no serial UART cable required)

FYI, I would recommend a serial UART cable to anyone who plans to spend any significant time developing on a Jetson. Uses for this pop up quite often and can stop a lot of headaches and problems before they happen.