AirSane
AirSane copied to clipboard
Airsane discards backend without scan area options (`ricoh2`)
https://github.com/SimulPiscator/AirSane/blob/776acdc8dce6c6834bded03e2741765ac4b9853a/server/scanner.cpp#L607-L608
Full log (spoiler)
git commit: a908079 (branch HEAD, rev 280+)
build date: 2024-03-10T13:40:19Z
reading access rules from file /etc/airsane/access.conf
start time is 14287.55
reading device options from '/etc/airsane/options.conf'
enumerating devices...
sane_init(nullptr, nullptr)
sane_get_devices() ...
... sane_get_devices() -> SANE_Status Success
sane_exit()
found: ricoh2:libusb:001:002 (Ricoh Aficio SP-100SU)
stable unique name: ricoh2:Ricoh Aficio SP-100SU:1
uuid: f59be082-7322-551d-8b38-2e32f8840b53
sane_init(nullptr, nullptr)
sane_open(ricoh2:libusb:001:002) -> 0xb45a7790
sane_close(0xb45a7790)
sane_exit()
error: missing scan area parameter(s)
end time is 14296.45
startup took 8.90 secconds
listening on 127.0.0.1:8090
listening on 192.168.54.1:8090
listening on 192.168.0.13:8090
listening on [::1]:8090
listening on [fe80::208:22ff:fef3:a8c6]:8090
allowing 127.0.0.1: access file is empty
Airsane does not accept printers which backend does not supply scan area parameters. One of such backend is ricoh2.
SANE documentation states that the frontend MUST accept scanners with this parameter missing.
A frontend must work properly with any or all of these options missing.
Also filled bug in sane: https://gitlab.com/sane-project/backends/-/issues/750
Thanks! Though I don't know how to fix it. I'm getting the maximum scan area from those parameters, and eSCL requires me to publish that. So I would need to publish a fake scan area, and ignore any scan area user settings. I'm not sure whether that works out.
So I would need to publish a fake scan area, and ignore any scan area user settings.
Yes, I guess the default value would be Letter or A4 for most devices.
eSCL will now announce a max scan area width of 216mm (US Letter) and a max scan area height of 297mm (A4). That should accommodate for most cases.
I need to ask you to test with the Ricoh scanner because I don't have such a device available.
It detects the scanner now but fails to scan. Can't tell whether this is an AirSane fail or just the backend, will debug further in several weeks.
P.S. also just wanted to be sure that you have received my emails and not interested in the donation.
Thanks for debugging it.
Regarding the donation, "not interested" would not be quite accurate. I just don't think it is the time now. Anyway, I am very happy with the popularity boost you gave AirSane through your project, thanks a lot!
Works now, thanks! Not sure if it's 100% bug free (apparently there's still dimension difference somewhere, as Linux scanning utilities report error at the end of the page, but it scans, the data is not discarded), but it works.