Removed

Removing my posts thanks

it appears that the Uno is no longer listening or transmitting on Pins 0 & 1, the assigned USB RX TX pins.

Not true. The HardwareSerial port, pins 0 and 1, is the ONLY one that the USB cable connects to and the only one that the bootloader listens to.

Eutility:
it appears that the Uno is no longer listening or transmitting on Pins 0 & 1, the assigned USB RX TX pins.

How do you know?

What error message do you get when you try to upload a different program - such as the blink example ?

...R

So...

Without the PCB connected, it always works, regardless of whether software serial is in use?

But WITH the PCB connected, it does not work after running the SoftwareSerial sketch?

It sounds like the problem is that after communicating with the Arduino, the PCB does something that breaks uploads.

More debug effort is needed to figure out what might be going on.

Does the Arduino reset when you try to upload to it?

Does the code continue running?

What board is this?

You mention servos. Are the servos connected to the board? Are they being told to move? Does the problem reproduce if you disconnect the servos, or don't tell them to move? (if this fixes it, it's a power supply problem - motors are notorious for putting noise on power supply lines)

How is everything connected, and what board is this?

I think you will need to post the schematic for your PCB before you get any useful advice.

If the Arduino works properly when the PCB is disconnected then the problem lies in your program or your PCB or a combination of the two.

...R

The problem looks to me like flaky handling of the virtual serial port by the PC

What happens if you try to do serial communications to the serial monitor when you sketch is running ?

Eutility:
Attached is the schematic. ..... Maybe I should open another question?

There would be no value in starting another question.

I can't make sense of the schematic. Just make a pencil drawing with ALL the connections shown (and no coloured dots to make virtual connections) and post a photo of the drawing.

For example, why would you want to connect pins 11, 12 and A0 to A5 together ?

...R

150 ohms on the optocoupler LEDs gives 34mA per LED by my calculations. That's kind of a lot for an Arduino pin. If you have many of these on at once then you can easily exceed the overall power rating of the chip.

Feeding 12V direct to Vin may overheat the Arduino's 5V regulator, depending on what else is using 5V power. It may be shutting down or entering some partial limp-home mode.

Check the temperature of the regulator (touch it with your finger, hot is OK but blistering is not OK) and double-check your calculations for the LED currents.

Eutility:
Robin2: All the connections are correct

In that case it should be working fine.

I am not able to help based on a diagram I do not have confidence in.

...R