user26227: At work, on a Ubuntu 14.04 system, I can access my Trinket Pro without any difficulty whatsoever.
At home, using either Linux Mint or Ubuntu across two laptops, I can not communicate with the device no matter what I try.
I have the correct board selected, the correct processor, and trying to use USBTiny ISP.
Currently, I'm getting:
avrdude: ser_open(): can't open device "COM1": No such file or directory
An error occurred while uploading the sketch

It's really getting frustrating having to take my devices to work just to upload a sketch, and I've been banging my head for over a week and a half. My UNO R3 boards work without issue on the same laptops.
Here's what dmesg says:
[  863.471315] usb 1-1.1: Product: USBtiny
[  863.471316] usb 1-1.1: Manufacturer: Adafruit
[  876.438778] usb 1-1.1: USB disconnect, device number 12
[  880.921492] usb 2-1: new low-speed USB device number 5 using xhci_hcd
[  881.092152] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f
[  881.092157] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  881.092161] usb 2-1: Product: USBtiny
[  881.092163] usb 2-1: Manufacturer: Adafruit
[ 1004.305143] usb 2-1: USB disconnect, device number 5
[ 1019.935505] usb 2-1: new low-speed USB device number 6 using xhci_hcd
[ 1020.106524] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f
[ 1020.106530] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1020.106533] usb 2-1: Product: USBtiny
[ 1020.106536] usb 2-1: Manufacturer: Adafruit

I am running IDE version 1.8.3, with sudo, the exact same way I'm doing at the office.
Can someone please advise on what I'm missing here? Windows is not an option; I haven't used it in many years. I'd just like to figure out what's wrong.
I do have an FTDI connector, but didn't have much luck with it either, and to be honest, don't want to use it as I just want to plug the Trinket in, and upload.
Update: I've tried both USB2 and USB3 ports repeatedly with the same results.

user26227: So, in the end, although Chris' answer didn't directly lead me to the solution, by delving through his links, I eventually ended up at a page that suggested using the Sketch->Upload Using Programmer feature.
That corrected the issue both as root and my normal Linux user account, without any other changes necessary. I find it odd that it isn't required on my work PC, but I digress. It works on both, so I'm pleased.

user612: [  881.092161] usb 2-1: Product: USBtiny
[  881.092163] usb 2-1: Manufacturer: Adafruit
[ 1004.305143] usb 2-1: USB disconnect, device number 5
[ 1019.935505] usb 2-1: new low-speed USB device number 6 using xhci_hcd
[ 1020.106524] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f

The USB Tiny ISP device which this logs shows being connected to your system is not a USB serial device.  Therefore, it will not have any /dev/ttyXXX device associated with it.  Instead it should be used with the -c usbtiny argument to avrdude.
Adafruit documents their products fairly well, and this is no exception.  The Linux section of the user guide is at https://learn.adafruit.com/usbtinyisp/avrdude#for-linux
That guide goes on to explain that you will typically need to create a udev rule to allow an ordinary user account to access the device.  Depending on Linux installation, typical contents might be
SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="users", MODE="0666"

or
SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="adm", MODE="0666"

The above linked guide will more comprehensively explain how all of this works.
Note that the above pertains to the USB Tiny ISP programmer shown in your dmesg output.  According to the Adafruit page on the Trinket Pro, the Trinket Pro "bootloader looks just like a USBtinyISP" therefore, you would talk to it in the same way as the USB Tiny ISP that your system reports finding, ie, without using a /dev/ttyXXX device, but rather by specifying -c usbtiny in the avrdude command line, or using an Arduino IDE board configuration which does so.
Your error message suggests that avrdude is not being run with the correct command line options.  You may want to turn on verbose mode to see what is being run - it would especially helpful if you did that on both the working and the non-working Linux systems.

26227: <p>At work, on a Ubuntu 14.04 system, I can access my Trinket Pro without any difficulty whatsoever.</p>

<p>At home, using either Linux Mint or Ubuntu across two laptops, I can not communicate with the device no matter what I try.</p>

<p>I have the correct board selected, the correct processor, and trying to use USBTiny ISP.</p>

<p>Currently, I'm getting:</p>

<pre><code>avrdude: ser_open(): can't open device "COM1": No such file or directory
An error occurred while uploading the sketch
</code></pre>

<p>It's really getting frustrating having to take my devices to work just to upload a sketch, and I've been banging my head for over a week and a half. My UNO R3 boards work without issue on the same laptops.</p>

<p>Here's what <code>dmesg</code> says:</p>

<pre><code>[  863.471315] usb 1-1.1: Product: USBtiny
[  863.471316] usb 1-1.1: Manufacturer: Adafruit
[  876.438778] usb 1-1.1: USB disconnect, device number 12
[  880.921492] usb 2-1: new low-speed USB device number 5 using xhci_hcd
[  881.092152] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f
[  881.092157] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  881.092161] usb 2-1: Product: USBtiny
[  881.092163] usb 2-1: Manufacturer: Adafruit
[ 1004.305143] usb 2-1: USB disconnect, device number 5
[ 1019.935505] usb 2-1: new low-speed USB device number 6 using xhci_hcd
[ 1020.106524] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f
[ 1020.106530] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1020.106533] usb 2-1: Product: USBtiny
[ 1020.106536] usb 2-1: Manufacturer: Adafruit
</code></pre>

<p>I am running IDE version 1.8.3, with <code>sudo</code>, the exact same way I'm doing at the office.</p>

<p>Can someone please advise on what I'm missing here? Windows is not an option; I haven't used it in many years. I'd just like to figure out what's wrong.</p>

<p>I do have an FTDI connector, but didn't have much luck with it either, and to be honest, don't want to use it as I just want to plug the Trinket in, and upload.</p>

<p>Update: I've tried both USB2 and USB3 ports repeatedly with the same results.</p>
 26227: <p>So, in the end, although Chris' answer didn't directly lead me to the solution, by delving through his links, I eventually ended up at a page that suggested using the <code>Sketch-&gt;Upload Using Programmer</code> feature.</p>

<p>That corrected the issue both as <code>root</code> and my normal Linux user account, without any other changes necessary. I find it odd that it isn't required on my work PC, but I digress. It works on both, so I'm pleased.</p>
 612: <pre><code>[  881.092161] usb 2-1: Product: USBtiny
[  881.092163] usb 2-1: Manufacturer: Adafruit
[ 1004.305143] usb 2-1: USB disconnect, device number 5
[ 1019.935505] usb 2-1: new low-speed USB device number 6 using xhci_hcd
[ 1020.106524] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f
</code></pre>

<p>The <strong>USB Tiny ISP</strong> device which this logs shows being connected to your system <strong>is not a USB serial device</strong>.  Therefore, it will not have any <code>/dev/ttyXXX</code> device associated with it.  Instead it should be used with the <code>-c usbtiny</code> argument to <code>avrdude</code>.</p>

<p>Adafruit documents their products fairly well, and this is no exception.  The Linux section of the user guide is at <a href="https://learn.adafruit.com/usbtinyisp/avrdude#for-linux" rel="nofollow noreferrer">https://learn.adafruit.com/usbtinyisp/avrdude#for-linux</a></p>

<p>That guide goes on to explain that you will typically need to create a <strong>udev rule</strong> to allow an ordinary user account to access the device.  Depending on Linux installation, typical contents might be</p>

<pre><code>SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="users", MODE="0666"
</code></pre>

<p>or</p>

<pre><code>SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="adm", MODE="0666"
</code></pre>

<p>The above linked guide will more comprehensively explain how all of this works.</p>

<p>Note that the above pertains to the <strong>USB Tiny ISP</strong> <em>programmer</em> shown in your dmesg output.  According to the <a href="https://learn.adafruit.com/introducing-pro-trinket/starting-the-bootloader" rel="nofollow noreferrer">Adafruit page on the Trinket Pro</a>, the <strong>Trinket Pro</strong> "bootloader looks just like a USBtinyISP" therefore, you would talk to it in the same way as the USB Tiny ISP that your system reports finding, ie, <em>without</em> using a <code>/dev/ttyXXX</code> device, but rather by specifying <code>-c usbtiny</code> in the avrdude command line, or using an Arduino IDE board configuration which does so.</p>

<p>Your error message suggests that <code>avrdude</code> is <em>not</em> being run with the correct command line options.  You may want to turn on verbose mode to see what is being run - it would especially helpful if you did that on both the working and the non-working Linux systems.</p>
