summaryrefslogtreecommitdiff
path: root/examples/scan.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scan.py')
-rw-r--r--examples/scan.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/scan.py b/examples/scan.py
new file mode 100644
index 0000000..82c5458
--- /dev/null
+++ b/examples/scan.py
@@ -0,0 +1,30 @@
+#! /usr/bin/env python
+"""\
+Scan for serial ports.
+
+Part of pySerial (http://pyserial.sf.net)
+(C) 2002-2003 <cliechti@gmx.net>
+
+The scan function of this module tries to open each port number
+from 0 to 255 and it builds a list of those ports where this was
+successful.
+"""
+
+import serial
+
+def scan():
+ """scan for available ports. return a list of tuples (num, name)"""
+ available = []
+ for i in range(256):
+ try:
+ s = serial.Serial(i)
+ available.append( (i, s.portstr))
+ s.close() # explicit close 'cause of delayed GC in java
+ except serial.SerialException:
+ pass
+ return available
+
+if __name__=='__main__':
+ print "Found ports:"
+ for n,s in scan():
+ print "(%d) %s" % (n,s)