raspberrypi / picotool

BSD 3-Clause "New" or "Revised" License
525 stars 86 forks source link

Add VID and PID device target filters #85

Open tomas-pecserke opened 1 year ago

tomas-pecserke commented 1 year ago

This PR improves usability of #83 and depends on #84.

It adds --vid <vid> and --pid <pid> device target filter options to device selection accepting hex id representation. The Vendor ID and Product ID is then compared with identifiers specified by idVendor and idProduct of device configuration option respectively.

This solution does NOT break backward compatibility - functionality and outputs do not change if the flag is not specified.

Usage:

# TinyUSB examples use Cafe:0200
picotool info --pid cafe --vid 0200

❗Attention: Help needed with clipp options for these filters. Currently I have all the options as optional and despite that i get this error when used without any options:

$ picotool info

ERROR: missing required argument

SYNOPSIS:
    picotool info [-b] [-p] [-d] [-l] [-a] [--bus <bus>] [--address <addr>] [--vid <vid>] [--pid <pid>] [--serial <serial>] [-f] [-F]
    picotool info [-b] [-p] [-d] [-l] [-a] <filename> [-t <type>]

Use "picotool help info" for more info

If you have any idea why, please let me know.

lurch commented 1 year ago

This should probably be targeting the develop branch?