Skip to content

Add support for the Insta360 Link 2C (2e1a:4c03) - #3

Closed
piyushthapa wants to merge 1 commit into
illegalstudio:mainfrom
piyushthapa:add-link-2c-support
Closed

piyushthapa wants to merge 1 commit into
illegalstudio:mainfrom
piyushthapa:add-link-2c-support

Conversation

@piyushthapa

Copy link
Copy Markdown

The Link 2C enumerates as USB 2e1a:4c03, which was not in the product-id allowlist, so discovery rejected it with "No supported Insta360 Link camera found." even though the camera was present and fully functional. Passing --device did not help, since the same check runs on the explicit path.

Add a Model::Link2C variant and widen the tracking gate to accept it. The gate change is safe: check_unit still verifies that extension unit 11 carries the AI GUID afterwards, so a device without the unit fails cleanly rather than issuing vendor requests blindly.

Verified on real Link 2C hardware (uvcvideo 7.2.5, kernel 7.2.5):

linkctl devices -> 1 Insta360 Link 2C /dev/video4 2e1a:4c03
pan -145..145 deg, tilt -90..100 deg, zoom 1.0x..4.0x
zoom 2 / right 20 / center / zoom 1 all applied while streaming
info reports unit 9 [info/mode], unit 10 [image], unit 11 [ai] with the
expected AI GUID, and tracking reads state successfully

Left is_tested() false for Link2C so the "recognised, not validated" note still prints; flipping it is the maintainer's call.

The Link 2C enumerates as USB 2e1a:4c03, which was not in the product-id
allowlist, so discovery rejected it with "No supported Insta360 Link
camera found." even though the camera was present and fully functional.
Passing --device did not help, since the same check runs on the explicit
path.

Add a Model::Link2C variant and widen the tracking gate to accept it.
The gate change is safe: check_unit still verifies that extension unit 11
carries the AI GUID afterwards, so a device without the unit fails
cleanly rather than issuing vendor requests blindly.

Verified on real Link 2C hardware (uvcvideo 7.2.5, kernel 7.2.5):

  linkctl devices  -> 1  Insta360 Link 2C  /dev/video4  2e1a:4c03
  pan  -145..145 deg, tilt -90..100 deg, zoom 1.0x..4.0x
  zoom 2 / right 20 / center / zoom 1 all applied while streaming
  info reports unit 9 [info/mode], unit 10 [image], unit 11 [ai] with the
  expected AI GUID, and `tracking` reads state successfully

Left is_tested() false for Link2C so the "recognised, not validated"
note still prints; flipping it is the maintainer's call.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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

Successfully merging this pull request may close these issues.

1 participant