|
@@ -0,0 +1,57 @@
|
|
|
+# greaseweazle/tools/info.py
|
|
|
+#
|
|
|
+# Greaseweazle control script: Displat info about tools, firmware, and drive.
|
|
|
+#
|
|
|
+# Written & released by Keir Fraser <keir.xen@gmail.com>
|
|
|
+#
|
|
|
+# This is free and unencumbered software released into the public domain.
|
|
|
+# See the file COPYING for more details, or visit <http://unlicense.org>.
|
|
|
+
|
|
|
+description = "Display information about the Greaseweazle setup."
|
|
|
+
|
|
|
+import sys, serial
|
|
|
+
|
|
|
+from greaseweazle.tools import util
|
|
|
+from greaseweazle import usb as USB
|
|
|
+from greaseweazle import version
|
|
|
+
|
|
|
+def print_info_line(name, value, tab=0):
|
|
|
+ print(''.ljust(tab) + (name + ':').ljust(12-tab) + value)
|
|
|
+
|
|
|
+def main(argv):
|
|
|
+
|
|
|
+ parser = util.ArgumentParser()
|
|
|
+ parser.add_argument("device", nargs="?", default="auto",
|
|
|
+ help="serial device")
|
|
|
+ parser.description = description
|
|
|
+ parser.prog += ' ' + argv[1]
|
|
|
+ args = parser.parse_args(argv[2:])
|
|
|
+
|
|
|
+ print_info_line('Host Tools', 'v%d.%d' % (version.major, version.minor))
|
|
|
+
|
|
|
+ print('Greaseweazle:')
|
|
|
+
|
|
|
+ try:
|
|
|
+ usb = util.usb_open(args.device, mode_check=False)
|
|
|
+ except serial.SerialException:
|
|
|
+ print(' Not found')
|
|
|
+ sys.exit(0)
|
|
|
+
|
|
|
+ port = usb.port_info
|
|
|
+ if port.device:
|
|
|
+ print_info_line('Device', port.device, tab=2)
|
|
|
+ print_info_line('Model', 'F%d' % usb.hw_type, tab=2)
|
|
|
+ fwver = 'v%d.%d' % (usb.major, usb.minor)
|
|
|
+ if usb.update_mode:
|
|
|
+ fwver += ' (Update Bootloader)'
|
|
|
+ print_info_line('Firmware', fwver, tab=2)
|
|
|
+ if port.serial_number:
|
|
|
+ print_info_line('Serial', port.serial_number, tab=2)
|
|
|
+
|
|
|
+
|
|
|
+if __name__ == "__main__":
|
|
|
+ main(sys.argv)
|
|
|
+
|
|
|
+# Local variables:
|
|
|
+# python-indent: 4
|
|
|
+# End:
|