1141cc406Sopenharmony_ciSANE and OpenBSD
2141cc406Sopenharmony_ci----------------
3141cc406Sopenharmony_ci
4141cc406Sopenharmony_ciBuilding:
5141cc406Sopenharmony_ci---------
6141cc406Sopenharmony_ciDon't forget to use GNU make (gmake). E.g. "MAKE=gmake ./configure".
7141cc406Sopenharmony_ciSANE should compile and install out-of-the-box.
8141cc406Sopenharmony_ci
9141cc406Sopenharmony_ciIf some libraries and headers (like libjpeg) are installed in /usr/local/, adding
10141cc406Sopenharmony_ci"-I/usr/local/include/ -L/usr/local/lib/" to the CPPFLAGS environment variable
11141cc406Sopenharmony_cibefore running configure may be necessary to get them detected.
12141cc406Sopenharmony_ci
13141cc406Sopenharmony_ciSince release 3.9, SANE is available from OpenBSD ports.
14141cc406Sopenharmony_ci
15141cc406Sopenharmony_ciSCSI-scanners:
16141cc406Sopenharmony_ci--------------
17141cc406Sopenharmony_ciSANE only supports the generic /dev/uk? devices. /dev/ss? won't work. If your
18141cc406Sopenharmony_ciscanner is detected by the ss driver, disable the driver with the "config"
19141cc406Sopenharmony_ciutility or compile a new kernel without ss. Set a link /dev/scanner to
20141cc406Sopenharmony_ci/dev/uk0 (or whatever you use) and/or edit your backend's config file
21141cc406Sopenharmony_ciappropriately. Don't forget to set up permissions to the device file correctly
22141cc406Sopenharmony_cifor access by a non-root user (read/write).
23141cc406Sopenharmony_ci
24141cc406Sopenharmony_ciUSB-scanners:
25141cc406Sopenharmony_ci-------------
26141cc406Sopenharmony_ciUSB-Scanners are supported in principle since OpenBSD 2.9. The USB scanner
27141cc406Sopenharmony_cidriver "uscanner" and access over libusb is supported.
28141cc406Sopenharmony_ci
29141cc406Sopenharmony_ciTo get your scanner detected by the uscanner driver, it may be necessary to
30141cc406Sopenharmony_ciadd its vendor and device ids to the kernel and recompile
31141cc406Sopenharmony_ci(sys/devs/usb/uscanner.c). With OpenBSD 3.0 there is also a bug concerning
32141cc406Sopenharmony_ciuscanner that prevents accessing the /dev/uscanner devices.  Get a newer
33141cc406Sopenharmony_cikernel in this case. If your MAKEDEV won't make /dev/uscanner0 do it manually:
34141cc406Sopenharmony_ci"mknod /dev/uscanner0 c 77 0" for the first scanner. Edit your backend's
35141cc406Sopenharmony_ciconfiguration file appropriately.
36141cc406Sopenharmony_ci
37141cc406Sopenharmony_ciIf you want to use libusb, your scanner should *not* be claimed by the
38141cc406Sopenharmony_ciuscanner driver. Also make sure that the ugen driver is NOT compiled with
39141cc406Sopenharmony_ciDIAGNOSTIC. If it is, you will get errors like "ugenioctl: USB_SET_TIMEOUT,
40141cc406Sopenharmony_cino pipe". Make sure, that /dev/ugen* and /dev/usb* devices are available. Use
41141cc406Sopenharmony_ci/dev/MAKEDEV to create them, if necessary.
42141cc406Sopenharmony_ci
43141cc406Sopenharmony_ciFor some backends you must use libusb. The uscanner driver won't work because
44141cc406Sopenharmony_ciautomatic detection, control messages, or interrupt endpoints are needed.
45141cc406Sopenharmony_ci
46141cc406Sopenharmony_ciWhen using libusb, you need read/write permissions to ugen(4) (/dev/ugen*.*) and
47141cc406Sopenharmony_cithe usb(4) controller (/dev/usb*) your scanner is connected to.  Consider adding
48141cc406Sopenharmony_cia group usb and setting the device permissions using the hotplugd(8) attach
49141cc406Sopenharmony_ciand detach scripts.  See tools/openbsd for an example.
50141cc406Sopenharmony_ci
51141cc406Sopenharmony_ciParport-scanners:
52141cc406Sopenharmony_ci-----------------
53141cc406Sopenharmony_ciI don't have any information about these. Please contact me or the SANE mailing
54141cc406Sopenharmony_cilist if you succeeded in using one of these.
55141cc406Sopenharmony_ci
56141cc406Sopenharmony_ci2005-12-23 Henning Meier-Geinitz <henning@meier-geinitz.de>
57