diff --git a/cutelog/__main__.py b/cutelog/__main__.py
index 0574f08deaa7f4a4b09f987c1dd917836810a63f..acc37325a41f30f25538f7082d9dcf2d7bdf3b56 100644
--- a/cutelog/__main__.py
+++ b/cutelog/__main__.py
@@ -1,8 +1,7 @@
 import sys
-
+import argparse
 import qtpy
 
-
 if not qtpy.PYQT5 and not qtpy.PYSIDE2:
     if sys.platform == 'linux':
         sys.exit("Error: a compatible Qt library couldn't be imported.\n"
@@ -14,8 +13,10 @@ if not qtpy.PYQT5 and not qtpy.PYSIDE2:
 
 def main():
     import signal
+    import serial
     from .config import ROOT_LOG
     from .main_window import MainWindow
+    from .serial import SerialConnection
     from .resources import qCleanupResources
     from qtpy.QtGui import QIcon
     from qtpy.QtWidgets import QApplication
@@ -25,6 +26,19 @@ def main():
         appid = 'busimus.cutelog'
         ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(appid)
 
+    parser = argparse.ArgumentParser(description='Open a serial port and neatly display log messages')
+    parser.add_argument('port', metavar='Serial port', type=str, nargs=1,
+                        help='Serial port to open')
+    parser.add_argument('baud', metavar='Baud Rate', type=int, nargs=1,
+                        help='baud rate')
+
+
+    args = parser.parse_args()
+    try:
+        ser = SerialConnection(None, args.port[0], args.baud[0])
+    except serial.serialutil.SerialException as err:
+        sys.exit("Error opening serial port: {}".format(str(err)))
+     
     app = QApplication(sys.argv)
     app.setWindowIcon(QIcon(':/cutelog.png'))
     mw = MainWindow(ROOT_LOG, app)
diff --git a/serialtest.py b/serialtest.py
new file mode 100644
index 0000000000000000000000000000000000000000..6112dc884bb17f8ef92b672f3cd57ceac1b6882e
--- /dev/null
+++ b/serialtest.py
@@ -0,0 +1,8 @@
+import serial
+
+ser = serial.Serial('COM6', 19200, timeout=5)
+
+for i in range(1,10):
+    s = ser.readline().decode("utf-8").strip("\n\r")
+    print(s)
+    #ser.close()
\ No newline at end of file