Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

[Solved] Can print to but not scan from Panasonic KX-MB1520

Need help with peripherals or devices?
Post Reply
Message
Author
User avatar
gurfle
Posts: 367
Joined: 2009-06-04 02:08
Location: Seattle, Washington, US

[Solved] Can print to but not scan from Panasonic KX-MB1520

#1 Post by gurfle »

4/16/2013 Edit: Just on a whim, I thought of trying simple-scan and it works like a charm now :D in spite of sane-find-scanner -v -v -f continuing to say " # No USB scanners found." as noted here. See "Edit" at top of my followup post for the real solution to the initial scan failures prompting this post.

But now I wonder: How is this possible :?:

Code: Select all

find /dev -name "*scan*" -print
returns nothing :!: And that is probably why sane-find-scanner thinks there is nothing also . . .
_____End-of-Edit

It's a nice, uncomplicated piece of hardware, and I feel like I'm just missing some small piece of the configuration puzzle to get the scanning function to work. I read that Panasonic may not be the best Linux supporter, but they have put out a .deb package that's supposed to work with sane for this model, so it seems like there is hope :)

First lsusb appears to recognize something relavent:

Code: Select all

Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 04b4:0001 Cypress Semiconductor Corp. Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 04da:0f0b Panasonic (Matsushita) 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
I have installed the two driver packages provided by Panasonic for each function (Printer Driver and Scanner Driver).

However, when I do "ls -al /dev/usb" all I get is the printer:

Code: Select all

drwxr-xr-x  2 root root     60 Apr 14 18:13 .
drwxr-xr-x 15 root root   3520 Apr 14 18:13 ..
crw-rw----  1 root lp   180, 0 Apr 14 18:13 lp0
No scanners are shown, which may explain why sane doesn't find anything. "sane-find-scanner -v -f" yields:

Code: Select all

This is sane-find-scanner from sane-backends 1.0.21

  # 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.

searching for SCSI scanners:
checking /dev/scanner... failed to open (Invalid argument)
checking /dev/sg0... failed to open (Access to resource has been denied)
checking /dev/sg1... failed to open (Invalid argument)
checking /dev/sg2... failed to open (Access to resource has been denied)
checking /dev/sg3... failed to open (Invalid argument)
checking /dev/sg4... failed to open (Invalid argument)
checking /dev/sg5... failed to open (Invalid argument)
checking /dev/sg6... failed to open (Invalid argument)
checking /dev/sg7... failed to open (Invalid argument)
checking /dev/sg8... failed to open (Invalid argument)
checking /dev/sg9... failed to open (Invalid argument)
checking /dev/sga... failed to open (Invalid argument)
checking /dev/sgb... failed to open (Invalid argument)
checking /dev/sgc... failed to open (Invalid argument)
checking /dev/sgd... failed to open (Invalid argument)
checking /dev/sge... failed to open (Invalid argument)
checking /dev/sgf... failed to open (Invalid argument)
checking /dev/sgg... failed to open (Invalid argument)
checking /dev/sgh... failed to open (Invalid argument)
checking /dev/sgi... failed to open (Invalid argument)
checking /dev/sgj... failed to open (Invalid argument)
checking /dev/sgk... failed to open (Invalid argument)
checking /dev/sgl... failed to open (Invalid argument)
checking /dev/sgm... failed to open (Invalid argument)
checking /dev/sgn... failed to open (Invalid argument)
checking /dev/sgo... failed to open (Invalid argument)
checking /dev/sgp... failed to open (Invalid argument)
checking /dev/sgq... failed to open (Invalid argument)
checking /dev/sgr... failed to open (Invalid argument)
checking /dev/sgs... failed to open (Invalid argument)
checking /dev/sgt... failed to open (Invalid argument)
checking /dev/sgu... failed to open (Invalid argument)
checking /dev/sgv... failed to open (Invalid argument)
checking /dev/sgw... failed to open (Invalid argument)
checking /dev/sgx... failed to open (Invalid argument)
checking /dev/sgy... failed to open (Invalid argument)
checking /dev/sgz... failed to open (Invalid argument)
  # No SCSI scanners found. If you expected something different, make sure that
  # you have loaded a kernel SCSI driver for your SCSI adapter.

searching for USB scanners:
checking /dev/usb/scanner... failed to open (Invalid argument)
checking /dev/usb/scanner0... failed to open (Invalid argument)
checking /dev/usb/scanner1... failed to open (Invalid argument)
checking /dev/usb/scanner2... failed to open (Invalid argument)
checking /dev/usb/scanner3... failed to open (Invalid argument)
checking /dev/usb/scanner4... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner7... failed to open (Invalid argument)
checking /dev/usb/scanner8... failed to open (Invalid argument)
checking /dev/usb/scanner9... failed to open (Invalid argument)
checking /dev/usb/scanner10... failed to open (Invalid argument)
checking /dev/usb/scanner11... failed to open (Invalid argument)
checking /dev/usb/scanner12... failed to open (Invalid argument)
checking /dev/usb/scanner13... failed to open (Invalid argument)
checking /dev/usb/scanner14... failed to open (Invalid argument)
checking /dev/usb/scanner15... failed to open (Invalid argument)
checking /dev/usbscanner... failed to open (Invalid argument)
checking /dev/usbscanner0... failed to open (Invalid argument)
checking /dev/usbscanner1... failed to open (Invalid argument)
checking /dev/usbscanner2... failed to open (Invalid argument)
checking /dev/usbscanner3... failed to open (Invalid argument)
checking /dev/usbscanner4... failed to open (Invalid argument)
checking /dev/usbscanner5... failed to open (Invalid argument)
checking /dev/usbscanner6... failed to open (Invalid argument)
checking /dev/usbscanner7... failed to open (Invalid argument)
checking /dev/usbscanner8... failed to open (Invalid argument)
checking /dev/usbscanner9... failed to open (Invalid argument)
checking /dev/usbscanner10... failed to open (Invalid argument)
checking /dev/usbscanner11... failed to open (Invalid argument)
checking /dev/usbscanner12... failed to open (Invalid argument)
checking /dev/usbscanner13... failed to open (Invalid argument)
checking /dev/usbscanner14... failed to open (Invalid argument)
checking /dev/usbscanner15... failed to open (Invalid argument)
  # No USB scanners found. If you expected something different, make sure that
  # you have loaded a kernel driver for your USB host controller and have setup
  # the USB system correctly. See man sane-usb for details.

  # Not checking for parallel port scanners.

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

  # You may want to run this program as root to find all devices. Once you
  # found the scanner devices, be sure to adjust access permissions as
  # necessary.
done
After installation of the Panasonic ScanDriver package the following updates to the sane library were in place:

Code: Select all

nick@debhome:~$ ls -al /usr/lib/sane/*pana*
lrwxrwxrwx 1 root root     20 Apr 14 18:04 /usr/lib/sane/libsane-panamfs.so -> libsane-panamfs.so.1
lrwxrwxrwx 1 root root     24 Apr 14 18:04 /usr/lib/sane/libsane-panamfs.so.1 -> libsane-panamfs.so.1.0.1
-rwxr-xr-x 1 root root 331651 Aug  8  2012 /usr/lib/sane/libsane-panamfs.so.1.0.1
nick@debhome:~$
Also, /etc/sane.d/panamfs.conf was created and "panamfs" shows up in /etc/sane.d/dll.conf. The contents of panamfs.conf is

Code: Select all

#
# Panasonic Multi-Function Station scanners

DBG_LEVEL 0

/dev/scanner


# KX-MC6000
usb 0x04da 0x1509

# KX-MC6015
# KX-MC6020
usb 0x04da 0x150a

# KX-MC6040
usb 0x04da 0x150b

# KX-MC6255
# KX-MC6260
usb 0x04da 0x1511

# DP-MC210
usb 0x04da 0x0f05

# KX-MB3000/DP-MB300 series
usb 0x04da 0x0f06

# KX-MB2000 series
usb 0x04da 0x0f07

# KX-MB2060 series
usb 0x04da 0x0f08

# KX-MC6280N
usb 0x04da 0x0f09

# KX-MB1500 series
usb 0x04da 0x0f0b



# Network
#
# to auto seach scane
# net autodiscovery
#
#
# net 192.168.1.123
#
net autodiscovery


network KX-MC6

network DP-MC2

network KX-MB3

network DP-MB3

network KX-MB2

network KX-MB1
Since it appears that sane-find-scanner looks for usb scanners in /dev/usb, not /dev, I tried changing /dev/scanner to /dev/usb/scanner or /dev/usb/scanner0 with no success :(

Perhaps there is some problem recognizing two separate items on the same usb device?

Thanks in advance for all your advice.

Nick
Last edited by gurfle on 2015-07-03 18:07, edited 7 times in total.

User avatar
gurfle
Posts: 367
Joined: 2009-06-04 02:08
Location: Seattle, Washington, US

Re: Can print to but not scan from Panasonic KX-MB1520

#2 Post by gurfle »

4/16/2013 Edit: Fixing /lib/udev/rules.d/10-libsane.rules as shown below did the trick, though why sane-find-scanner continues to conclude there are no USB scanners (as detailed in the rest of this post) remains a mystery :?

Quick Update:

sane-find-scanner -v -v -f actually does see both scanner and printer on USB device 001:003:

Code: Select all

<device descriptor of 0x04da/0x0f0b at 001:003 (Panasonic KX-MB1520)>
bLength               18
bDescriptorType       1
bcdUSB                2.00
bDeviceClass          0
bDeviceSubClass       0
bDeviceProtocol       0
bMaxPacketSize0       64
idVendor              0x04DA
idProduct             0x0F0B
bcdDevice             1.00
iManufacturer         1 (Panasonic)
iProduct              2 (KX-MB1520)
iSerialNumber         3 (01DX02022533)
bNumConfigurations    1
 <configuration 0>
 bLength              9
 bDescriptorType      2
 wTotalLength         69
 bNumInterfaces       2
 bConfigurationValue  1
 iConfiguration       4 (Default Configurataion)
 bmAttributes         192 (Self-powered)
 MaxPower             2 mA
  <interface 0>
   <altsetting 0>
   bLength            9
   bDescriptorType    4
   bInterfaceNumber   0
   bAlternateSetting  0
   bNumEndpoints      5
   bInterfaceClass    6
   bInterfaceSubClass 1
   bInterfaceProtocol 255
   iInterface         6 (Scanner USB Interface)
    <endpoint 0>
    bLength           7
    bDescriptorType   5
    bEndpointAddress  0x81 (in 0x01)
    bmAttributes      3 (interrupt)
    wMaxPacketSize    32
    bInterval         11 ms
    bRefresh          0
    bSynchAddress     0
    <endpoint 1>
    bLength           7
    bDescriptorType   5
    bEndpointAddress  0x82 (in 0x02)
    bmAttributes      2 (bulk)
    wMaxPacketSize    512
    bInterval         0 ms
    bRefresh          0
    bSynchAddress     0
    <endpoint 2>
    bLength           7
    bDescriptorType   5
    bEndpointAddress  0x03 (out 0x03)
    bmAttributes      2 (bulk)
    wMaxPacketSize    512
    bInterval         0 ms
    bRefresh          0
    bSynchAddress     0
    <endpoint 3>
    bLength           7
    bDescriptorType   5
    bEndpointAddress  0x05 (out 0x05)
    bmAttributes      2 (bulk)
    wMaxPacketSize    512
    bInterval         0 ms
    bRefresh          0
    bSynchAddress     0
    <endpoint 4>
    bLength           7
    bDescriptorType   5
    bEndpointAddress  0x86 (in 0x06)
    bmAttributes      2 (bulk)
    wMaxPacketSize    512
    bInterval         0 ms
    bRefresh          0
    bSynchAddress     0
  <interface 1>
   <altsetting 0>
   bLength            9
   bDescriptorType    4
   bInterfaceNumber   1
   bAlternateSetting  0
   bNumEndpoints      1
   bInterfaceClass    7
   bInterfaceSubClass 1
   bInterfaceProtocol 1
   iInterface         5 (Printer USB Interface)
    <endpoint 0>
    bLength           7
    bDescriptorType   5
    bEndpointAddress  0x04 (out 0x04)
    bmAttributes      2 (bulk)
    wMaxPacketSize    512
    bInterval         0 ms
    bRefresh          0
    bSynchAddress     0
but then still says:

Code: Select all

  # No USB scanners found. If you expected something different, make sure that
  # you have loaded a kernel driver for your USB host controller and have setup
  # the USB system correctly. See man sane-usb for details.
So on some level the scanner is detected, but then sane just won't do anything with it :?

I also realized that /lib/udev/rules.d/10-libsane.rules needed to have this added to it:

Code: Select all

# Panasonic MFS scanners
ATTRS{idVendor}=="04da", ATTRS{idProduct}=="0f0b", MODE="0664", GROUP="scanner", ENV{libsane_matched}="yes"
EDIT: In stretch, the file is /lib/udev/rules.d/60-libsane.rules

Finally, for the record, especally if anybody else is searching around for dirvers and instructions for this machine, they are here. It took me and hour, and only after some very un-obvious google keyword-entry, to stumble accross it. Panasonic really doesn't seem to want anyone to find it, even though they went to the trouble of putting some half-way decent deb and rpm packages together and posting them on this website :?:
Last edited by gurfle on 2017-07-02 23:01, edited 1 time in total.

davemc50
Posts: 1
Joined: 2017-01-01 08:14

Re: [Solved] Can print to but not scan from Panasonic KX-MB1

#3 Post by davemc50 »

Thanks gurfle for the good follow through.

Jan 2017 and the final step you list downloading from Panasonic still works on Kubuntu 14.04 with a KX-MC6260CX :D

User avatar
gurfle
Posts: 367
Joined: 2009-06-04 02:08
Location: Seattle, Washington, US

Re: [Solved] Can print to but not scan from Panasonic KX-MB1

#4 Post by gurfle »

glad to have provided help, davemc50.

The instructions I outline in this thread continue to work for deban squeeze through jessie. They also apply to stretch, but there this additional patch is required to get cups working with the printer:

Code: Select all

ln -s /usr/lib/x86_64-linux-gnu/libgs.so.9 /usr/lib/libgs.so
I was able to solve this bug thanks to this post by Roman_Grachev.

Post Reply