FYI – I’ve fixed the randomization of the COM ports under Windows.
That randomization was caused by the PM3 devices not previously exposing a unique serial number (via the USB protocol). When you update the bootloader to a version(*) with the above fix included, it will then expose a unique ID, and your COM port will be (mostly(**)) static / safe from changes.
(*) it’s part of the iceman fork main branch already, since February 19th, 2023. The last official release as of today was Nitride (v4.16191) was released January 29th, 2023, and thus does not have this fix. Therefore, you would need to build the binary yourself.
(**) If it was COM4, and the PM3 is not connected, then something else might come along and “claim” COM4. To reduce that chance, you could assign the PM3 device a higher number COM port (e.g., COM87).