A cross-platform tool to monitor and inspect USB devices connected to the host system.
Project description
USB Inspector
Overview
A simple package that leverages pyusb and allows you to lookup USB vendor and device IDs and get back a human readable vendor and device name.
It includes ability to manually update the USB DB without installing a new version of usb-inspector.
Installation
python3 -m pip install usb-inspector
IMPORTANT: On Windows ensure you have libusb-1.0.dll (64bit) in C:\Windows\System32 or you will get a NoBackendError. You can get it from here.
Raspberry Pi
- Raspberry Pi 3B+ trixie aarch64 64bit
Example Usage
Command Line:
usb-inspector lookup --vendor-id 1A40
usb-inspector lookup --vendor-id 1A40 --device-id 0801
# To manually update the USB DB
usb-inspector delete-data
usb-inspector update-db
from usb_inspector.monitor import USBDeviceMonitor
usb_monitor = USBDeviceMonitor(poll_interval=1.0)
usb_monitor.monitor()
# Do stuff
...
usb_monitor.stop()
Issues
If you experience any issues, please create an issue on Bitbucket.
Development
To get a list of all commands with descriptions simply run make.
make env
make pip_install_editable
Testing
make pytest
make coverage
make open_coverage
History
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
0.1.5 (2025-11-05)
- Locked
pandasto version 2.3.3 for Raspberry Pi compatability (it pulls the pre-built wheel from piwheels.org)
0.1.4 (2025-11-05)
- Added
last_seentimestamp for each device.
0.1.4 (2025-10-31)
update-dbcli command only adds new Vendors and Devices to the existing DB rather than requiring deletion and recreation of the DB.- Track which devices are connected/disconnected.
0.1.2 (2025-10-30)
- Fix lookup error
0.1.1 (2025-10-30)
- Added
startas an alias formonitor.
0.1.0 (2025-10-30)
- First release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file usb_inspector-0.1.5.tar.gz.
File metadata
- Download URL: usb_inspector-0.1.5.tar.gz
- Upload date:
- Size: 269.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1783035d0b1d53a699d2c25d23a7a1056f30a9035e08684d2ac5d921bf132240
|
|
| MD5 |
fad0534529c0cb6748580f247f236edb
|
|
| BLAKE2b-256 |
73826756734227f9cf5a8e12b0ee8d44411fcc6178a9904ef2d30376e05eaa3c
|
File details
Details for the file usb_inspector-0.1.5-py3-none-any.whl.
File metadata
- Download URL: usb_inspector-0.1.5-py3-none-any.whl
- Upload date:
- Size: 267.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d2691419e2cb9e95b7bed2e4e1b909d97a8cde6c98127c768ee780742f99af7
|
|
| MD5 |
a48ea8036e814aa29801c0d9d95d668a
|
|
| BLAKE2b-256 |
1bc24973e0eaef20602692f4f6cda52a4f218b45001c1bc3e6b96a9fab749afe
|