You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
[1.3.0] - 2026-08-27
Added
GL128 first-scan priming: before the first retained scan after open, run a discarded small pass (default 600 dpi, area (0, 0, 1, 0.12)) so image-pass AGOHOME parks the carriage for repeatable start position. Override with POF_GL128_PRIME (full or <dpi>:x0,y0,x1,y1).
Adaptive ME long exposure (GL128): after the short colour pass, choose a frame-specific long REG_EXPOSURE from RGB dense percentiles, then clamp through a separate safety envelope (42k–85k, max ratio 7×). Failures fall back to fixed 42000. Opt out with me_exposure_mode="fixed".
Scan Lab Fixed 42k long (A/B) checkbox; USB/status log shows proposed / selected long exposure and clamp reason.
MeScanDebug.exposure_proposed / exposure_reason for lab observability.
Optional on_status callback on Scanner.scan and exported ScanStatus ("priming" / "scanning") so hosts can show GL128 priming; Scan Lab status bar and USB log surface it.
Fixed
GL128 discarded priming pass always forces geometry=None, apply_calib=False, and mode="color", so hosts that pass bring-up geometry (e.g. Scan Lab) no longer stretch the prime into a full request-PPI shading+scan cycle.
GL128 adaptive quiet USB drain now sleeps the full LPERIOD deficit (plus a small lag) instead of capping at 3 ms/line, so 7200 dpi image creep is no longer ~15% ahead of the ASIC line clock.
Changed
GL128 multi-exposure colour-long REG_EXPOSURE is clamped by PPI (8200i SE + 8100 V2): max 42000 at 7200 dpi (SilverFast known-good); 14000–85000 at other resolutions.
PyPI development status classifier is now 4 - Beta (was 3 - Alpha).
README now points the "Latest release" link at v1.3.0.
README and docs/ now document the hardware-tested set as 8200i SE + 8100 (V2) (and distinguish GL845 8100 07b3:130c from GL128 8100 V2 07b3:1824).
Comments, docstrings, and user-facing errors now describe the two-model scan-ready set; Scan Lab README matches. Internal bring-up helper renamed is_opticfilm_8200i_se → is_gl128_opticfilm.
ME long-pass pixel clocks are selected via an explicit long-pass flag (not only exposure >= 42000); REG_EXPOSURE is hard-clamped to me_hardware_max_exposure at configure time.
Contributors
@TobbyTravel for GL128 first-scan priming and for OpticFilm 8100 (V2) exposure-ladder research showing REG_EXPOSURE has no hardware ceiling and that the multi-exposure long bin should be raised toward film-dependent ~56–64k targets (not a 42k limit).