Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Potential product (marketing) name versus product id differences #21

Open
joelpurra opened this issue Nov 17, 2021 · 2 comments
Open

Potential product (marketing) name versus product id differences #21

joelpurra opened this issue Nov 17, 2021 · 2 comments

Comments

@joelpurra
Copy link
Owner

The uvcc compatibility list and examples have so far been based on the product name, but looking at various reports it seems the product id may vary within the advertised name. While I'm personally only working on the layers built on top of USB, finding differences is both enlightening and confusing.

Instead of per-name sub-directories, the ./examples/ may need to have per-id sub-directories (or sub-sub-directories?) with the output files, for comparison.

Examples:

HD Pro Webcam C920 as 1133:2093 captured by @joelpurra in https://github.com/joelpurra/uvcc/blob/v5.0.1/examples/logitech-c920/devices.json#L1-L8

HD Pro Webcam C920 as 1133:2194 captured by @galak in #20:

[
  {
    "name": "HD Pro Webcam C920",
    "vendor": 1133,
    "product": 2194,
    "address": 5
  }
]

Are there other recorded examples of differences?

@joelpurra
Copy link
Owner Author

While it might only mean that the product has been assembled at a different factory, some products may very well be (wildly) different (on a technical level) within their product name "group". Therefore, it might be time to treat the name as more of a marketing label, than a source of truth for product capabilities.

  • Does this mean that there are actual product differences:
    • In hardware?
    • In firmware?
    • In product-specific software?
    • In UVC compatibility?
  • Does it make a difference in uvcc usage?
  • Would lsusb --verbose help spotting any differences?
  • Are these variations all original products, or third-party knock-offs?
  • Can other version indicators be (reliably) used, such as the device descriptor bcdDevice field?

    The bcdDevice has the same format than the bcdUSB and is used to provide a device version number. This value is assigned by the developer.

Further investigation is required, but it'd be even better to find the results of previous efforts.

@joelpurra joelpurra changed the title Potential product (marketing name versus product id differences Potential product (marketing) name versus product id differences Nov 17, 2021
joelpurra added a commit that referenced this issue May 12, 2022
- Cameras with the same "marketing name" may differ between different hardware implementations, as detected by their USB (vendor and) product id.
- It is unclear if these different hardware implementations also have diffferent properties, from the perspective of `uvcc` usage.
- For `uvcc` example output, use both a marketing name subdirectory and a subdirectory per product id.
- This commit updates the instructions and moves current examples to per-id subdirectories.

See

- #21
@joelpurra
Copy link
Owner Author

Added more examples, including output from two "different" Microsoft LifeCam Studio (model number 1425) hardware revisions. Apart from the USB product id, the two cameras do not seem to differ -- at least when simply comparing ranges/default values/etcetera from @holbrookdev's output and mine. So that's a good indicator, at least for the one example available so far.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant