diff options
author | cliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a> | 2012-02-21 16:40:27 +0000 |
---|---|---|
committer | cliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a> | 2012-02-21 16:40:27 +0000 |
commit | 21e2c84ca571bb94dc6d2d631a8559b29b962a8d (patch) | |
tree | 0b43e9ba9b5a4969aeba5bb527b0ca5cc186c1bd | |
parent | 096e196aeedf7bf45370739800f01680c1e1ab75 (diff) | |
download | pyserial-git-21e2c84ca571bb94dc6d2d631a8559b29b962a8d.tar.gz |
show port list on CTRL+T + P
-rw-r--r-- | pyserial/serial/tools/miniterm.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/pyserial/serial/tools/miniterm.py b/pyserial/serial/tools/miniterm.py index 2cdc497..fdf4d8e 100644 --- a/pyserial/serial/tools/miniterm.py +++ b/pyserial/serial/tools/miniterm.py @@ -9,6 +9,10 @@ import sys, os, serial, threading +try: + from serial.tools.list_ports import comports +except ImportError: + comports = None EXITCHARCTER = '\x1d' # GS/CTRL+] MENUCHARACTER = '\x14' # Menu: CTRL+T @@ -218,6 +222,13 @@ class Miniterm(object): REPR_MODES[self.repr_mode], LF_MODES[self.convert_outgoing])) + def dump_port_list(self): + if comports: + sys.stderr.write('\n--- Available ports:\n') + for port, desc, hwid in sorted(comports()): + #~ sys.stderr.write('--- %-20s %s [%s]\n' % (port, desc, hwid)) + sys.stderr.write('--- %-20s %s\n' % (port, desc)) + def reader(self): """loop and copy serial->console""" try: @@ -334,7 +345,8 @@ class Miniterm(object): LF_MODES[self.convert_outgoing], )) elif c in 'pP': # P -> change port - sys.stderr.write('\n--- Enter port name: ') + self.dump_port_list() + sys.stderr.write('--- Enter port name: ') sys.stderr.flush() console.cleanup() try: |