Skip to content

Instantly share code, notes, and snippets.

@rodnaxel
Last active April 4, 2017 14:05
Show Gist options
  • Save rodnaxel/ea7d83628bd01e8061872a4c638eb684 to your computer and use it in GitHub Desktop.
Save rodnaxel/ea7d83628bd01e8061872a4c638eb684 to your computer and use it in GitHub Desktop.
Find COM in Linux
#! /usr/bin/env python
# coding: utf-8
import sys
import glob
import serial
def serial_ports():
""" Lists serial port names
:raises EnvironmentError:
On unsupported or unknown platforms
:returns:
A list of the serial ports available on the system
"""
if sys.platform.startswith('win'):
ports = ['COM%s' % (i + 1) for i in range(256)]
elif sys.platform.startswith('linux') or sys.platform.startswith('cygwin'):
# this excludes your current terminal "/dev/tty"
ports = glob.glob('/dev/tty[A-Za-z]*')
elif sys.platform.startswith('darwin'):
ports = glob.glob('/dev/tty.*')
else:
raise EnvironmentError('Unsupported platform')
result = []
for port in ports:
try:
s = serial.Serial(port)
s.close()
result.append(port)
except (OSError, serial.SerialException):
pass
return result
if __name__ == '__main__':
print(serial_ports())
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment