PrintCapture© cannot connect to Arduino UNO R3 on COM6

Problem Statement: PrintCapture©, a Windows-based software printer/plotter, cannot connect to the Arduino UNO R3. One expects it should because the app can be configured to connect to a COM device (in this case, COM6,115200,8,None,1) but, when attempting to connect, it returns an error message, "COM6 is not a valid serial port." (the nerve!)

The Setup:
Arduino UNO R3 (purchased from arduino.cc).
Arduino IDE 1.8.1 (also downloaded from arduino.cc).
Windows 8.1 64-bit.

The data points:

  1. Arduino UNO R3 connects successfully as COM6 (device connect happy tone, Device Manager shows device working).
  2. Arduino IDE can connect to Arduino UNO on COM6, sketches successfully download and execute .
  3. Arduino sketch successfully transmits serial data to Serial Monitor.
  4. My sketch uses the (capital S) Serial class for serial output (Serial.println).
  5. Get this, Tera Term can successfully connect to Arduino UNO on COM6 but PrintCapture cannot. Why?

I've been in contact with Mike of PrintCapture tech support and we would like to solve this problem. We could use some pointers on where to begin. Specifically, the source code for the Atmel ATmega16U2 USB controller might be a good start (is GitHub://Arduino/hardware/arduino/avr/cores/arduino/USBAPI.h a good start?).

I've exhausted my search on these forums and online. Any help, pointers or opinions would be appreciated. Thanks.

(My Arduino project is here.)

  1. Get this, Tera Term can successfully connect to Arduino UNO on COM6 but PrintCapture cannot. Why?

Your not trying to connect to the Arduino while Tera Term or the Serial Monitor app are connected, are you?

Perhaps asking the PrintCapture people would be more appropriate.

johan34:
the source code for the Atmel ATmega16U2 USB controller might be a good start

The firmware for it is here:

However, I don't think that's going to be super relevant because there are Arduino boards that use FT232, CH340, PL2303, CP2102 USB-serial chips that also work fine so it's not like there's some specialized protocol running on the ATmega16U2.

johan34:
is GitHub://Arduino/hardware/arduino/avr/cores/arduino/USBAPI.h a good start?

I don't think so. That is used for the native USB boards like Leonardo and Pro Micro. It's not used on the Uno.

PaulS:
Your not trying to connect to the Arduino while Tera Term or the Serial Monitor app are connected, are you?

Perhaps asking the PrintCapture people would be more appropriate.

No, of course not. I disconnect one before connecting another.

I've asked the PrintCapture people and they're stuck for an answer. I agreed to research these forums for clues.

pert:
The firmware for it is here:
Arduino/hardware/arduino/avr/firmwares/atmegaxxu2 at 1.8.2 · arduino/Arduino · GitHub

Thanks, pert! I'll follow this lead and report back.

A common problem with PC connections to an Arduino is the fact that the Arduino resets when the Serial port is opened by the PC program. The PC program should allow time for that to happen and it should then keep the serial port open until it is completely finished with the Arduino. Many PC programs just open a serial port briefly and then close it again.

If that is the problem and assuming you can't modify your PC program it is possible to disable the auto-reset for an Arduino. Google should help you find the options.

...R