AI summary
USBDevInfo provides detailed USB device information including vendor IDs, configurations, endpoints, and HID descriptors. It works fully offline with a built-in USB IDs database and offers a Material 3 interface with live monitoring, device history, and search. Perfect for developers and hardware hackers.
Generated by AI. May contain inaccuracies.
Screenshots
About this app
USB Descriptor Explorer for Android USBDevInfo is an Android application for discovering, inspecting, and analyzing USB devices connected to your phone or tablet. It exposes the same low-level USB information that Android sees, but presents it in a clear, structured, and human-readable way.
The app is designed for developers, reverse-engineers, hardware hackers, and power users who need to understand exactly what a USB device reports: vendor IDs, configurations, interfaces, endpoints, HID descriptors, power requirements, and more.
USBDevInfo works fully offline, stores all data locally, and never transmits device information to any server.
Features
Live USB monitoring Automatically reacts to USB attach/detach and can auto‑open a device's details view on attach Permission request flow for devices that require user consent Instant visibility into attached USB devices, hubs, and HID/gamepad/touch devices
Device list with search Shows vendor/product names when known, plus VID:PID and basic class info Text search across vendor, product, id string, and device path
Detailed device view Full device and configuration/endpoint breakdown (classes, subclasses, protocols) Human‑readable names for USB class/subclass/protocol when available Copy any field, view raw JSON payload, and neatly wrapped hex where applicable
Device history Maintains a chronological history of attach events; drill into past entries Export/import history as JSON from the Settings screen
Theming and UX Material 3 design, light/dark theme, optional Android dynamic color support Polished section cards, key/value rows, and snack‑bar copy confirmations
Offline USB IDs database Bundled SQLite database provides vendor/product/class lookups Update controller coordinates DB refresh gating and metadata verification
Technical/architectural Flutter + Riverpod 3 State: Notifier/AsyncNotifier providers for search, lists, settings, and details Routing: go_router with named routes: Home, Device details, History (+ entry detail), Settings
Platform channel bridge (Android) Kotlin glue (UsbBridge) exposes: MethodChannel: listDevices, getDeviceDetails, requestPermission, setUsbAttachComponentEnabled EventChannel: usb attach/detach/connect/disconnect events MainActivity wires pending intents and forwards onNewIntent to the bridge
Repository + data layers UsbPlatformService (Dart) wraps method/event channels UsbRepository enriches platform data with lookups from UsbIdsDb Providers compose platform, repository, and DB future
USB IDs database assets/db/usbids.sqlite shipped with the app UsbIdsDb exposes vendorName/productName/class/subclass/protocol lookups with small caches Tools (Python) to regenerate DB from assets/db_src/usbids.sql tools/update_usbids_artifacts.py builds the SQL from upstream data tools/build_usbids_db.py compiles the SQL into SQLite, with WAL/SHM cleanup
UX components Reusable SectionCard and KeyValueRow widgets for consistent layout Formatters for hex/dec, labels, hex wrapping, and misc helpers
Preferences SharedPreferences for theme mode, dynamic color toggle, and USB auto‑attach behavior
About this version
- Version
- 1.0.0 (1)
- Size
- 17.97 MB
- Requires Android
- 7.0
- Target SDK
- 24
- Architecture
- arm64-v8a, armeabi-v7a, x86_64
- Downloads
- 97
- Updated
- Apr 6, 2026
- Package
- org.kaijinlab.usbdevinfo
Similar apps
Ratings & reviews
- 50
- 40
- 30
- 20
- 10