kraynel/sane-mustek-a3-1200pro

GitHub: kraynel/sane-mustek-a3-1200pro

通过对厂商遗留驱动的逆向工程,为Mustek ScanExpress A3 USB 1200 Pro扫描仪提供适配现代macOS与Linux的SANE backend补丁,解决设备无可用驱动的问题。

Stars: 0 | Forks: 0

# Mustek ScanExpress A3 USB 1200 Pro 的 SANE 驱动 这是一个 SANE backend 补丁,添加了对 **Mustek ScanExpress A3 USB 1200 Pro** 平板扫描仪(USB ID `055f:040b`,SQ113 芯片组)的支持,并附带了在**现代 macOS** (Apple Silicon / Intel)上的构建说明,因为该扫描仪在 macOS 上已经十多年 没有可用的驱动程序了。 ## 为什么会有这个项目 A3 USB 1200 Pro 早已失去了厂商驱动支持。专有的 macOS 驱动仅提供 `ppc`/`i386` 二进制文件,这些文件自 Catalina 以来就无法在任何 macOS 版本上运行(没有 32 位 / PPC 运行时)。 官方 SANE 的 `mustek_usb2` backend 针对的是相同的 SQ113 芯片,但仅声明支持 Mustek BearPaw 2448TA Pro (`055f:0409`)。本项目对厂商的 Linux SANE backend (一个经过 Mustek 修改的、已经包含 A3 参数的 `mustek_usb2`)进行了逆向工程, 提取了设备特定的常量,并将它们应用到当前上游的 `mustek_usb2` backend 中。 完整的逆向工程报告位于 [`docs/REVERSE-ENGINEERING.md`](docs/REVERSE-ENGINEERING.md) 中。 ## 本仓库包含的内容 - `patches/` - 针对上游 `sane-backends` 添加 A3 1200 Pro 支持的补丁。 - `scripts/build-macos.sh` - 一键在 macOS (Homebrew) 上构建已打补丁的 SANE。 - `docs/` - 逆向工程笔记和提取的硬件参数。 它**不会**在项目中附带 SANE 源码的副本。你需要在上游的 `sane-backends` 应用补丁后进行构建。 ## 快速开始 (macOS) ``` # 前提条件 (Homebrew) brew install libusb autoconf automake libtool pkg-config autoconf-archive # Build 一个打过 patch 的 SANE 到 ./sane-install ./scripts/build-macos.sh # plug in 并 power on 扫描仪,然后: ./sane-install/bin/sane-find-scanner # should show 0x055f:0x040b ./sane-install/bin/scanimage -L # should list "ScanExpress A3 USB 1200 Pro" ./sane-install/bin/scanimage --format=pnm > test.pnm ``` 要通过 AirScan 将扫描仪暴露给原生 macOS 应用(Image Capture、Preview), 请参阅 [`docs/MACOS.md`](docs/MACOS.md)。 ## Linux 同样的补丁也适用于 Linux 上的上游 `sane-backends`。应用 `patches/0001-add-mustek-a3-usb-1200-pro.patch`,然后像往常一样构建 SANE。 逆向工程得出的厂商 backend 最初是 Linux 的 `.deb` 包,因此 Linux 是 风险最低的目标平台。 ## 状态 | 项目 | 状态 | |---|---| | Backend 构建 (arm64 macOS) | 完成 | | Backend 在 SANE 下加载 / 初始化 | 完成 | | `055f:040b` 的 USB 枚举 | 完成 (逻辑部分),等待真机测试 | | 真实扫描 (图像获取) | **等待硬件验证** | | 色彩 / 分辨率校准 | 待定 | | 双型号支持 (保留 BearPaw 2448TA) | 计划中 (参见 CONTRIBUTING-UPSTREAM) | ## 与上游 SANE 的关系 我们的目标是在真机验证通过后,将其合并到 SANE 项目中。 本仓库是暂存区:它记录了这项工作,并让扫描仪的所有者能够 从今天开始使用它。请参阅 [`CONTRIBUTING-UPSTREAM.md`](CONTRIBUTING-UPSTREAM.md),了解 将此转化为一个干净的合并请求的计划。 ## 许可证 GPL-2.0-or-later,与其派生自的 SANE `mustek_usb2` backend 保持一致。请参阅 [`COPYING`](COPYING)。 `mustek_usb2` backend 的版权归属于: - Copyright (C) 2000-2005 Mustek. - Copyright (C) 2001-2005 Henning Meier-Geinitz. 本仓库中针对 A3 1200 Pro 的添加内容均在相同的许可证下贡献。
标签:Cutter, SANE, 云资产清单, 扫描仪, 硬件驱动, 逆向工程