Skip to content

Open EOS Control 0.9.1 Development Preview

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Sep 14:32
· 37 commits to main since this release
ec509c3

Open EOS Control v0.9.1 Development Preview

繁體中文 | English

繁體中文

0.9.1 修正 Android CCAPI 既有短按對焦與半按操作的釋放失敗恢復,因此採 patch 版號。仍是 Development Preview,不是穩定版,也不代表機身手動拍攝失焦已解決。

Android 變更

  • 短按 AF、manual half-press 與 AF 的 manual fallback,若停止或釋放失敗,會保存原始 method、路徑及內容,直到停止成功才解除恢復狀態。重試只送原始停止命令,不再次啟動 AF 或半按;manual release 維持 af=false。
  • 即使開始操作失敗或被取消,仍嘗試釋放;開始與釋放都失敗時優先保留未釋放狀態。對焦或釋放未完成時阻擋衝突拍攝、錄影、模式及設定寫入,反方向也禁止在衝突操作中開始對焦;唯讀狀態仍可使用。
  • 釋放恢復使用固定 56 dp 停止圖示與英文/繁中無障礙描述。即使相機沒有原生按住 AF 能力,也能重試失敗釋放;重試中保持可見但停用重複點擊,恢復成功後不留下不支援的 AF-ON 控制。
  • 序列化對焦與連線切換,忽略舊連線的遲到結果,避免斷線後重新連線被舊錯誤鎖住。保留既有快門 AF 開關及按住 AF-ON 流程,不改機身 AF 模式、AF method、tracking 或短按時間。

驗證與限制

  • 功能 PR #188 通過 exact-head CI 與 main acceptance,包括 Android unit/build 與 API 34/36 UI 測試。
  • 本地 Android 507 項單元測試、lint、App/測試 APK 建包通過;四項新增協定回歸先在 v0.9.0 重現失敗,再確認修正後通過。HTC U24 Pro/API 34 使用本機 MockWebServer,21 項對焦/UI-to-HTTP 與 111 項畫面測試通過,共 132 項,不重複計數。
  • 恢復控制檢查 360×800、800×360、800×1280、四方向、英文/繁中及 1.5 倍字體。既有 HUD 長字與 Photo/Video 標籤在旋轉及放大字體下仍可能截斷;本版不宣稱全 App 排版完成。
  • 沒有向實體 R6 Mark III 發送 AF、半按或拍攝命令作本輪驗證。 操作者暫時無法比較機身半按,失焦原因、實拍銳利度與弱網行為仍待確認。Mock 測試不是實體相機合焦證據。
  • 新增 backend 恢復能力限定 Android CCAPI(含對應 CCAPI Simulator 路徑)。Android 共用 UI 互斥與 repository 連線保護亦有更新,但不宣稱 USB/Bridge 已同步相同恢復能力;PC/iOS 只對齊版本。
  • 普通 manual full-press/Bulb 保留各自既有清理流程,未新增本版恢復控制。仍須先放開 AF-ON,再按 App 快門。 程序強殺、斷網仍可能阻止停止送達;斷線不是機身已停止的證據。
  • Camera Import 維持 artifact 1.1.0/wire 1.0,不修改 Serein 契約。

完整依據:Android 短按對焦釋放與恢復。

安裝與發行檔

  • Android:open-eos-control-android-0.9.1-debug.apk,versionCode=24。沿用固定開發簽章及 Preview package,可更新同簽章舊 Preview,不覆蓋獨立 .debug 測試 App。
  • PC:版本對齊的 Windows x64 Bridge executable、Python wheel 與 source distribution;沒有新增本版 Android CCAPI 恢復能力。
  • iOS:原始碼與 iPhone Simulator CI,沒有可直接安裝的已簽署 IPA。
  • 另附 Camera Import ZIP/Kotlin JAR、BUILD-PROVENANCE.json 與 SHA256SUMS.txt;專用 Actions workflow 發布 exact-main immutable candidate,不手動重建替換資產。

English

0.9.1 repairs failed-release recovery for existing Android CCAPI short autofocus and half-press operations, warranting a patch version. It remains a Development Preview, not a stable release or proof that camera-body defocus is resolved.

Android Changes

  • Short AF, manual half-press, and manual AF fallback retain the original release method, path, and body after a failed stop until acknowledgement. Recovery retries only that stop/release, never another AF start or half-press. Manual release retains af=false.
  • Failed or cancelled starts still attempt cleanup; simultaneous start/release failures prioritize the unreleased state. Pending focus/release blocks conflicting capture, recording, mode, and settings writes, and conflicting operations also prevent focus starts. Read-only status remains available.
  • A fixed 56 dp stop icon with English/Traditional Chinese accessibility descriptions supports recovery even without held AF capability. It stays visible but disabled during retry; successful recovery does not leave an unsupported AF-ON control behind.
  • Focus and connection changes are serialized, and late results from an old connection cannot lock a replacement session. Existing shutter AF selection and held AF-ON remain; camera AF modes, AF method, tracking, and short-press duration are unchanged.

Evidence And Limitations

  • Feature PR #188 passed exact-head CI and main acceptance, including Android unit/build and API 34/36 UI tests.
  • Local validation passed 507 Android unit tests, lint, and App/test APK builds. Four new protocol regressions first failed against v0.9.0 and then passed after the fix. HTC U24 Pro/API 34 passed 21 focus/UI-to-HTTP and 111 screen tests against a local MockWebServer: 132 unique tests.
  • Recovery controls were checked at 360x800, 800x360, and 800x1280, four rotations, English/Traditional Chinese, and 1.5 font scale. Existing rotated large-font HUD and Photo/Video labels can still clip; this is not blanket App layout acceptance.
  • No physical R6 Mark III AF, half-press, or capture commands were sent for this validation. The operator cannot currently compare body half-press behavior. Defocus cause, actual photograph sharpness, and weak-network behavior remain pending. Mock tests are not optical focus evidence.
  • New backend recovery is Android CCAPI only, including corresponding CCAPI Simulator paths. Shared Android UI interlocks and repository connection protection also changed, but USB/Bridge recovery parity is not claimed. PC/iOS are version-aligned only.
  • Ordinary manual full-press/Bulb retain their separate cleanup, without this new recovery control. Release AF-ON before using the App shutter. Process death or network loss can prevent stop delivery; disconnect is not proof that the camera stopped.
  • Camera Import remains artifact 1.1.0 / wire 1.0; the Serein contract is unchanged.

See short-focus release recovery evidence.

Distribution

  • open-eos-control-android-0.9.1-debug.apk, versionCode=24, retains the persistent development signer and Preview package for matching older Preview upgrades, separate from the isolated .debug test App.
  • Version-aligned PC assets include the Windows x64 Bridge executable, wheel, and source distribution, without this Android CCAPI recovery addition. iOS remains source plus Simulator CI, without an installable signed IPA.
  • Camera Import ZIP/Kotlin JAR, provenance, and checksums accompany the release. The dedicated Actions workflow promotes the exact-main immutable candidate; assets are not manually rebuilt or substituted.