diff --git a/src/projctl/connection.py b/src/projctl/connection.py
index f07c8986d737a4d85f4feb23fa0e1adfa31e1599..52f98bb13744e26246fdfcba8d23383cf9bc91b7 100644
--- a/src/projctl/connection.py
+++ b/src/projctl/connection.py
@@ -8,12 +8,15 @@ import projctl
 
 
 class Connection(projctl.WithLogger):
-    def __init__(self, port_base="/dev/ttyUSB", logger=None):
+    def __init__(self, port_bases=["/dev/ttyUSB"], logger=None):
         super().__init__(logger)
         self.ser = None
         self.port = None
-        self.port_base = port_base
-        self.potential_ports = [self.port_base + str(i) for i in range(10)]
+        self.port_bases = port_bases
+        self.potential_ports = []
+        for base in self.port_bases:
+            for port in [base + str(i) for i in range(10)]:
+                self.potential_ports.append(port)
         self.connected = False
         self.logged_connection_error = False
         self.started_reconnection = False
@@ -53,16 +56,15 @@ class Connection(projctl.WithLogger):
                     pass
             if not self.connected:
                 if not self.logged_connection_error:
-                    # projctl.database.log_event(
-                    #     message=f"Could not establish serial connection to Projector{'' if tries == 1 else ' after '+str(tries)+' tries'}!",
-                    #     event_type=projctl.EventType.server,
-                    #     problematic=True,
-                    # )
                     self.logged_connection_error = True
                 # Exponential backoff
                 backoff_time = min(120, tries * tries)
+                ports = []
+                for base in self.port_bases:
+                    ports.append(f"{base}0 to {base}9")
+                ports = f'({", ".join(ports)})'
                 self.log_fatal(
-                    f"Error: Could not connect to any of the {len(self.potential_ports)} USB-Serial Ports ({self.port_base}0 to {self.port_base}9): Try {tries}, waiting {backoff_time}s before retrying"
+                    f"Error: Could not connect to any of the {len(self.potential_ports)} USB-Serial Ports {ports}: Try {tries}, waiting {backoff_time}s before retrying"
                 )
                 time.sleep(backoff_time)
                 tries += 1
diff --git a/src/projctl/main.py b/src/projctl/main.py
index c37f01570ebf800e7c0e4e019134e64c751e26b9..2fa443be40e672dd62158c86a9380f29b3c65479 100644
--- a/src/projctl/main.py
+++ b/src/projctl/main.py
@@ -1,3 +1,4 @@
+import os
 from fastapi import FastAPI, Request, WebSocket, WebSocketDisconnect
 from fastapi.responses import HTMLResponse
 from fastapi.staticfiles import StaticFiles
@@ -9,6 +10,8 @@ from datetime import datetime
 
 import projctl
 
+tty_base_ports = ["/dev/serial", "/dev/ttyUSB"]
+
 app = FastAPI(title="ProjCtl")
 app.mount("/static", StaticFiles(directory="static"), name="static")
 templates = Jinja2Templates(directory="templates")
@@ -17,7 +20,7 @@ logger = logging.getLogger("uvicorn.error")  # (__name__)
 logger.setLevel(logging.INFO)
 
 projector = projctl.OptomaZu820Tst(
-    projector_id="00", tty_base_port="/dev/ttyUSB", logger=logger
+    projector_id="00", tty_base_ports=tty_base_ports, logger=logger
 )
 
 
diff --git a/src/projctl/projector.py b/src/projctl/projector.py
index b106e3764b026e6ce871df432fca8fa34f9e50c7..bcf921a600b477039104677d519a17a7c7f57468 100644
--- a/src/projctl/projector.py
+++ b/src/projctl/projector.py
@@ -196,11 +196,11 @@ COMMANDS = {
 
 
 class OptomaZu820Tst(projctl.WithLogger):
-    def __init__(self, projector_id="00", tty_base_port="/dev/ttyUSB", logger=None):
+    def __init__(self, projector_id="00", tty_base_ports=["/dev/ttyUSB"], logger=None):
         super().__init__(logger)
         self.id = projector_id
         self.locked = False
-        self.serial = projctl.Connection(tty_base_port, self.logger)
+        self.serial = projctl.Connection(tty_base_ports, self.logger)
         self.status = {
             "power": {"state": PowerState.unknown, "time": datetime.now()},
             "shutter": {"state": "unknown", "time": datetime.now()},