# SANE setup of UMAX 2100u scanner



## Deleted member 9563 (Dec 15, 2010)

I have been trying to set up a *UMAX Astra 2100u* scanner but not having much luck.  So far I have been unable to scan anything. I can detect the device as root, but a user in the wheel group cannot, and *Xsane* cannot find the device either. The device is listed as being supported by SANE.

I will list the steps and information below, and perhaps someone has a suggestion or can spot an error: 

`# dmesg | grep ugen`

```
-snip-
ugen0.5: <vendor 0x1606> at usbus0
```

`# sane-find-scanner -q`

```
found USB scanner (vendor=0x1606, product=0x0130, chip=PV8630/LM9830) at
 libusb:/dev/usb:/dev/ugen0.5
```

`# scanimage -L`

```
device `umax1220u:libusb:/dev/usb:/dev/ugen0.5' is a UMAX Astra 2100U
 flatbed scanner
```

`# edit /usr/local/etc/sane.d/umax1220u.conf`

```
# Options for the umax1220u backend
# Autodetect the UMAX Astra 1220U
usb 0x1606 0x0130
usb /dev/ugen0.5
```

To:
 /etc/devfs.rules
I added:

```
[system=5]
add path ugen0.2 mode 0660 group wheel
add path usb/0.2.0 mode 0666 group wheel
```

And in:
/etc/rc.conf
I have:

```
devfs_system_ruleset="system"
```


----------



## Deleted member 9563 (Dec 15, 2010)

I noticed the discrepancy in /etc/devfs.rules and I changed it to this

```
[system=5]
add path ugen0.5 mode 0660 group wheel
add path usb/0.5 mode 0666 group wheel
```

However, it doesn't make any difference. The handbook scanner section is somewhat vague about the numbers - or where to get them.


----------



## wblock@ (Dec 15, 2010)

You can't count on a USB device always showing up at a fixed address.  So for /etc/devfs.rules:

```
add path 'ugen*' mode 0660 group operator
add path 'usb/*' mode 0660 group operator
```

Or "group wheel" if you like, but "operator" is the standard.  Your normal user has to be a member of whichever you choose.

After you change devfs.rules, restart devfs as root:
`# service devfs restart`

Just the vendor and product IDs are adequate in the SANE config file:

```
usb 0x1606 0x0130
```

If that doesn't do it, you can use devd(8) to set owner and permissions whenever the device is detected.  I can show an example, but hopefully it won't be necessary.


----------



## Deleted member 9563 (Dec 16, 2010)

Thanks wblock. I changed the SANE config file and the  /etc/devfs.rules as well. However I left the "group wheel". Then I tried command line access as user again and this time got the appropriate response. Next I tried Xsane and it opened up this time, but locked up.

I then replugged the scanner which resulted in no recognition from the command line and, again, no ability to start Xsane. I tried "operator" in the  /etc/devfs.rules with the same results.

I don't know if there is another problem at play here. The user is a member of "group wheel".

```
$ id -Gn
eileen wheel
```
`# id -Gn` gives the same output.

The /etc/group file has a group called "saned" and I added the user to that, but it doesn't show up, and the instructions for group permissions in the handbook scanner section didn't work either. I am going to read about the /etc/group file since the command line commands don't seem to operate as I had expected in this case.


----------



## wblock@ (Dec 16, 2010)

When you install graphics/sane-backends, the pkg-message it shows at the end gives an example of /etc/devd.conf entries.  These work for me.  My normal user is a member of the saned group, although I don't recall doing that and it might be years old and now unneeded.


----------



## Deleted member 9563 (Dec 16, 2010)

I found that pkg-message. Here is what I added to the end of /etc/devd.conf


```
attach 100 {
        device-name "ugen0.5";
        match "vendor" "0x1606";
        match "product" "0x130";
        action "usb_devaddr=`echo $device-name | sed 's#^ugen##'` && \
                chown cups:saned /dev/usb/${usb_devaddr}.* && \
                chmod 660 /dev/usb/${usb_devaddr}.*";
};
```

To confirm, here is the current relevant line at the end of dmesg is this:

```
ugen0.5: <vendor 0x1606> at usbus0
```

It still doesn't work.

I added the user to both "saned" and "cups" groups which made the device recognized as user, but still not as root. I thought that root had access to all groups, however I added root to those groups as well. Still, root does not recognize the device.


----------

