Cannot detect scanner (MFP)

Hi all,
I have a Samsung MFP (Xpress C460FW).
I had it working flawlessly both as a printer and as a scanner with my previous distro (PCLinuxOS).
I am now on Tumbleweed because I like it very much, but I cannot use my scanner anymore.
I have to say that my printer is connected via wifi.

I installed the Samsung Unified Drivers from Samsung web site (same procedure as I did with PCLinuxOS). The printer worked immediately without problems, but Yast could not detect the scanner.

I followed every guide I could (it seems there are a lot of people having this problem), particularly this one.
I put my network card in the internal zone of the firewall. If I understand correctly, this should disable any firewall protection for that network card. My PC is a desktop and my network is already protected by the firewall in my router, so I think this should not be a problem.

Then I mounted the old PCLinuxOS partition just to compare the configuration files in /etc/sane.d. They seem identical.
All Samsung ULD does is installing a file called smfp-samsung.conf in /etc/sane.d. I enabled it (and ‘net’) in /etc/sane.d/dll.conf.

However, no matter what I do, Yast cannot see the scanner.
Also, when I am scanning for scanners, Yast is always warning me about setting up correctly the firewall, but I do not know if this is a standard warning or if it has actually detected something wrong with my firewall configuration.

The sane-find-scanner script isn’t finding anything, too.

I am out of ideas, and particularly frustrated because on PCLinuxOS it worked flawlessly without having to do anything special.

Any help would be really appreciated.

T.I.A.

Cris

I’m not familiar with this Samsung hardware, but I note that there is a universal driver package available from Samsung

http://driverssupports.com/2014/05/samsung-multifunction-xpress-c460fw-driver-download.html

It comes with install scripts (for both printer and scanner) which should be able to take care of the configuration process for you.

Then I mounted the old PCLinuxOS partition just to compare the configuration files in /etc/sane.d. They seem identical.
All Samsung ULD does is installing a file called smfp-samsung.conf in /etc/sane.d. I enabled it (and ‘net’) in /etc/sane.d/dll.conf.

Do you happen to know the IP address of the device? Can you ping it successfully?

That’s the driver I was speaking about. It is called the Universal Linux Driver package (or ULD for friends :wink: ). However I downloaded it directly from the Samsung site. The site you reported has an older release.

To reply to your other message: yes, I know the address of the printer. I can ping it correctly. I can also correctly connect to the web page of the printer at the same address (this kind of printers offer an integrated web server which serves a few administration and diagnostic pages).

However, Yast does not detect the scanner.

Cris

It should not be necessary to use YaST to configure the scanner. The ULD should take care of that for you. (Check that the IP address appears as an entry in the relevant .conf file. Have you tried using a scanner utility yet?

Yes, I have tried with both Skanlite and AcquireImages but they don’t see anything.
I have the IP address listed in the net.conf file, and the net backend is enabled in the dll.conf file.

Cris

FWIW, this thread mentions uncommenting the smfp entry in dll.conf. Did you do that?

https://forums.opensuse.org/showthread.php/506511-Sane-and-Dell-B1265dfw-Mono-MFP-printer-Network-scanning-how-to

It would be interesting to observe which port(s) the scanner device is listening on

nmap <IP address of scanner>
  • There will be a mixture of ports due to the printer and in-built http server running, but at least one for the scanner

Do you also have ‘smfp’ present and uncommented in dll.conf?

Hi Deano!

Yes, I have smfp present and enabled in dll.conf. I have three backend enabled: net, epson2 and smfp.

Here is the result of running nmap againt the IP address of my printer/scanner:

Starting Nmap 7.00 ( https://nmap.org ) at 2015-12-04 16:01 CET
Nmap scan report for 192.168.1.6
Host is up (0.025s latency).
Not shown: 993 closed ports
PORT      STATE SERVICE
80/tcp    open  http
427/tcp   open  svrloc
515/tcp   open  printer
631/tcp   open  ipp
5200/tcp  open  targus-getdata
9100/tcp  open  jetdirect
10001/tcp open  scp-config

Nmap done: 1 IP address (1 host up) scanned in 15.03 seconds

Here is the result of running sane-find-scanner:

cris@PolariSuse:~> sudo sane-find-scanner 

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.

found USB scanner (vendor=0x0ca6 [CASTLES], product=0x0010 [EZ100PU Smart Card Reader]) at libusb:003:004
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

The detected USB scanner really is a smart card reader.

Here is the result of running scanimage:

cris@PolariSuse:~> scanimage -L

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

Cris

Ok, it’s not entirely clear to me which port is used for scanner communication, but I’m guessing port 5200 might be it. In any case, if you stop the firewall for test purposes, does this help with scanning?

systemctl stop SuSEfirewall2

FWIW, a similar question asked here. The OP demonstrated that firewall was the cause of the problem.

Unfortunately, still no joy… :frowning:

cris@PolariSuse:~> sudo systemctl stop SuSEfirewall2
root's password:
cris@PolariSuse:~> sudo systemctl status SuSEfirewall2
● SuSEfirewall2.service - SuSEfirewall2 phase 2
   Loaded: loaded (/usr/lib/systemd/system/SuSEfirewall2.service; enabled; vendor preset: disabled)
   Active: inactive (dead) since ven 2015-12-04 23:14:24 CET; 6s ago
  Process: 18600 ExecStop=/usr/sbin/SuSEfirewall2 systemd_stop (code=exited, status=0/SUCCESS)
  Process: 1548 ExecStart=/usr/sbin/SuSEfirewall2 boot_setup (code=exited, status=0/SUCCESS)
 Main PID: 1548 (code=exited, status=0/SUCCESS)

dic 04 15:11:17 PolariSuse systemd[1]: Starting SuSEfirewall2 phase 2...
dic 04 15:11:17 PolariSuse SuSEfirewall2[1592]: Setting up rules from /etc/sysconfig/SuSEfirewall2 ...
dic 04 15:11:18 PolariSuse SuSEfirewall2[2186]: Firewall rules successfully set
dic 04 15:11:18 PolariSuse systemd[1]: Started SuSEfirewall2 phase 2.
dic 04 23:14:24 PolariSuse systemd[1]: Stopping SuSEfirewall2 phase 2...
dic 04 23:14:24 PolariSuse systemd[1]: Stopped SuSEfirewall2 phase 2.

cris@PolariSuse:~> sudo sane-find-scanner

  # sane-find-scanner will now attempt to detect your scanner. If the
  # result is different from what you expected, first make sure your
  # scanner is powered up and properly connected to your computer.

  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.

found USB scanner (vendor=0x0ca6 [CASTLES], product=0x0010 [EZ100PU Smart Card Reader]) at libusb:003:004
  # Your USB scanner was (probably) detected. It may or may not be supported by
  # SANE. Try scanimage -L and read the backend's manpage.

  # Not checking for parallel port scanners.

  # Most Scanners connected to the parallel port or other proprietary ports
  # can't be detected by this program.

cris@PolariSuse:~> scanimage -L

No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).

Cris

Yay! Got it at last!!!

By googling around I learned how to get sane to show me a detailed debug log:

SANE_DEBUG_DLL=128 scanimage -L

By launching the command above I noticed that the smfp backend wasn’t being found. The search was done in /opt/kf5/lib64 and /usr/lib64/sane.
So I looked in my old PClinuxOS partition and I found this in /usr/lib64/sane:

lrwxrwxrwx 1 root root     33 giu 11  2014 libsane-smfp.so -> /usr/lib64/sane/libsane-smfp.so.1
lrwxrwxrwx 1 root root     37 giu 11  2014 libsane-smfp.so.1 -> /usr/lib64/sane/libsane-smfp.so.1.0.1
lrwxrwxrwx 1 root root     50 giu 11  2014 libsane-smfp.so.1.0.1 -> /opt/smfp-common/scanner/lib/libsane-smfp.so.1.0.1

The moment I saw this I knew what to do. After creating the same symlinks on OpenSUSE’s root partition, it finally worked!!

cris@PolariSuse:~> scanimage -L
device `smfp:net;192.168.1.6' is a SAMSUNG C460 Series on 192.168.1.6 Scanner

It would be good to know why the ULD setup program failed creating these symlinks, however.

Thank you Deano for all your help!!

I hope this willl save some headaches to other people having the same issue.

Cris

Well done. Yes, the debug idea was a good logical step to help understand where things were not working. :slight_smile: