LinuxQuestions.org
Go Job Hunting at the LQ Job Marketplace
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices

Reply
 
Search this Thread
Old 06-26-2012, 08:30 AM   #1
chrisretusn
Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware
Posts: 470

Rep: Reputation: Disabled
USB Printer no longer recognized with cups 1.5.3


Running Slackware64-current. Printer is a Canon PIXMA MP-258. This printer is attached to this computers USB port.

Before updating to -current it worked (cups 1.4.8). After updating (cups 1.5.3) it quit.

The problem is not the driver, that works, I upgraded to gutenprint (5.2.8) prior to upgrading.

The problem is that the usb device is not recognized by cups, 'lpinfo -v' does not show the printer.

Code:
message log
kernel: [    8.515058] usb 1-3: new high-speed USB device number 3 using ehci_hcd
kernel: [    8.633687] usb 1-3: New USB device found, idVendor=04a9, idProduct=173a
kernel: [    8.635202] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
kernel: [    8.636710] usb 1-3: Product: MP250 series
kernel: [    8.638217] usb 1-3: Manufacturer: Canon
kernel: [    8.639710] usb 1-3: SerialNumber: 931088

lsusb output
Bus 001 Device 003: ID 04a9:173a Canon, Inc. 

cups 1.4.6 
~# lpinfo -v
network lpd
network http
direct hp
network socket
network beh
network ipp
network smb
direct scsi
direct hpfax
direct usb://Canon/MP250%20series

cups 1.5.3
~# lpinfo -v
network http
network ipp
network socket
direct hp
network smb
network ipps
network https
network beh
network lpd
direct hpfax

There is a what I believe to be a related bug located here: http://www.cups.org/str.php?L4128+Qversion:1.6

I tried recompiling with the patch applied without success.
I have also tried compiling with --enable-libusb set, though I believe this is now default. At any rate it did nothing.
I also tried blacklisting the kernel module usblp; which of course did nothing.

My work around solution was to go back to cups 1.4.6.

Definitely open to ideas.
Perhaps I will have to wait until cups 1.6?
Well it's past my bed time... off to bed...
 
Old 06-26-2012, 09:38 AM   #2
willysr
Senior Member
 
Registered: Jul 2004
Location: Jogja, Indonesia
Distribution: Slackware-Current
Posts: 2,529

Rep: Reputation: 407Reputation: 407Reputation: 407Reputation: 407Reputation: 407
In my case, it's still working
Code:
direct cnijusb:/dev/usb/lp0
network socket
network ipp
network http
network https
network ipps
network lpd
network smb
network beh
direct usb://Canon/iP1800%20series?serial=B0026E
 
Old 06-26-2012, 09:58 AM   #3
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 858

Rep: Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668
I think I *might* know what's going on here. Since even before CUPS 1.4.6, CUPS has been trying to migrate all USB printer support from the kernel usblp module to going through libusb instead. Until a patch was applied to CUPS 1.4.6, that also had similar problems with printers not being detected, and since your output shows a "direct usb" connection I can tell that your printer had been using a connection through the usblp kernel module.

The code in CUPS 1.5.x has changed to the point where it would be difficult to apply the patch restoring the old usblp backend, and as there's no upstream support for it really it should be left behind at this point (if possible). But what I'm thinking is that you've still got the usblp module loaded, and it is interfering with the libusb CUPS backend.

Here's what I'd like for you to try. First, take a look with lsmod and see if usblp is loaded. If so, remove it with 'modprobe -r usblp', and add a line for it in /etc/modprobe.d/blacklist.conf:

blacklist usblp

Then check and see if your printer is visible again. You may need to power cycle the printer and/or restart CUPS.

Let me know if this helps... if it does, probably we'll need to include this blacklist rule.
 
Old 06-26-2012, 10:09 AM   #4
willysr
Senior Member
 
Registered: Jul 2004
Location: Jogja, Indonesia
Distribution: Slackware-Current
Posts: 2,529

Rep: Reputation: 407Reputation: 407Reputation: 407Reputation: 407Reputation: 407
does upgrading libusb fixed this problem?
On my system, i tried to migrate to libusbx and no problems with USB-based printers
 
Old 06-26-2012, 11:52 AM   #5
allend
Senior Member
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware-current
Posts: 3,379

Rep: Reputation: 824Reputation: 824Reputation: 824Reputation: 824Reputation: 824Reputation: 824Reputation: 824
I have also had a problem with my USB printer since the upgrade. If I try to print the test page from the CUPS web interfacejob it stalls with a message "Waiting for printer to become available."
In the CUPS error log I have messages:
Quote:
E [27/Jun/2012:01:37:23 +1000] Filter "hpgltops" not found.
E [27/Jun/2012:01:37:23 +1000] Filter "pstoraster" not found.
Copying the filters hpgltops and gstoraster from my 13.37 system into /usr/lib/cups/filter and creating symlinks pstoraster -> gstoraster ( as discussed here http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=638933 ) clears the error log messages but does not stop the printer stalling.

I have no problem printing the test page to a virtual PDF printer using cups-pdf.

Like the OP, I tried blacklisting the usblp kernel module and rebooting, with no effect.

In my case I am doing this in Slackware64, with the cups-compat32-1.5.3-x86_64-1.txz and glibc-solibs-2.15_multilib-x86_64-4alien.txz packages installed as this printer uses a 32bit driver.
All was working fine before the upgrade with the cups-compat32-1.4.6-x86_64-1.txz and glibc-solibs-2.15_multilib-x86_64-2alien.txz packages installed.

Reverting to the old cups-compat32-1.4.6-x86_64-1.txz package makes no difference.

One thing I did notice with the virtual pdf printer is that the owner of the file was "ANONYMOUS" whereas previously it was my user name. Could there be a permissions issue?
 
Old 06-26-2012, 12:16 PM   #6
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 858

Rep: Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668
Ah... I see that the OP did blacklist usblp! Sorry, I should have read more closely. Unfortunately, that means that I don't currently have a good idea about what has caused CUPS to break (again), but I'm suspecting the removal of the usblp backend, since this looks all-too-much like the issues people were having with 1.4.x before that backend was restored.

Hopefully we won't have to revert to the older CUPS, but if that was working well (and this version isn't) it could be the best choice.
 
Old 06-26-2012, 03:49 PM   #7
dolphin77
Member
 
Registered: May 2009
Posts: 200

Rep: Reputation: 54
please don't revert back to 1.4.x - it has landscape printing broken...
 
Old 06-26-2012, 04:23 PM   #8
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 858

Rep: Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668
Tell us how to fix the issues with CUPS 1.5.x and then we won't, dolphin77. Otherwise, if we're between a rock and a hard place, we'll choose which looks the least painful.
 
Old 06-26-2012, 11:17 PM   #9
dolphin77
Member
 
Registered: May 2009
Posts: 200

Rep: Reputation: 54
OK will try to help, but do not have USB printer here (at least till weekend).

@OP: what output gives: /usr/lib/cups/backend/usb

PS is it Samsung?
 
Old 06-27-2012, 07:02 AM   #10
chrisretusn
Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware
Posts: 470

Original Poster
Rep: Reputation: Disabled
@dolphin77, PS, no it is a Canon.

The output of /usr/lib64/cups/backend/usb is included in the code block.

At the moment I am using the cups 1.5.3, with usblp blacklisted. So you don't have to scroll up, my printer is a Canon PIXMA MP-258, it is plugged in a usb port on this machine. This printer works fine with cups 1.4.6 and gutenprint 5.2.8. I am using Slackware64-current.

On this boot I tried something I have not tried yet. Boot with printer turned off.

I added a bold attribute to two line below that I had missed before. The first look perhaps that a udev rule is needed? The second, I have no clue, but it appear every time the printer is turned on.

Code:
# output of  /usr/lib64/cups/backend/usb (printer is off)
DEBUG: list_devices 
DEBUG: libusb_get_device_list=12

### Printer turned on 
# output of  /usr/lib64/cups/backend/usb
DEBUG: list_devices 
DEBUG: libusb_get_device_list=12
direct usb://Canon/MP250%20series?serial=931088&interface=1 "Canon MP250 series" "Canon MP250 series" "MFG:Canon;CMD:BJL,BJRaster3,BSCCe,IVEC,IVECPLI;SOJ:TXT01;MDL:MP250 series;CLS:PRINTER;DES:Canon MP250 series;VER:1.020;STA:10;FSI:00;HRI:ASI;MSI:DAT,E3;PDR:6;" ""

# /var/log/messages
Jun 27 17:56:47 racermach kernel: [ 3041.154066] usb 3-3: new high-speed USB device number 6 using ehci_hcd
Jun 27 17:56:47 racermach kernel: [ 3041.270798] usb 3-3: New USB device found, idVendor=04a9, idProduct=173a
Jun 27 17:56:47 racermach kernel: [ 3041.270801] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jun 27 17:56:47 racermach kernel: [ 3041.270803] usb 3-3: Product: MP250 series
Jun 27 17:56:47 racermach kernel: [ 3041.270805] usb 3-3: Manufacturer: Canon
Jun 27 17:56:47 racermach kernel: [ 3041.270806] usb 3-3: SerialNumber: 931088

# /var/log/syslog
Jun 27 17:56:49 racermach udev-configure-printer: no corresponding CUPS device found                                                                                                

# dmesg
[ 3041.154066] usb 3-3: new high-speed USB device number 6 using ehci_hcd
[ 3041.270798] usb 3-3: New USB device found, idVendor=04a9, idProduct=173a
[ 3041.270801] usb 3-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3041.270803] usb 3-3: Product: MP250 series
[ 3041.270805] usb 3-3: Manufacturer: Canon
[ 3041.270806] usb 3-3: SerialNumber: 931088
[ 3041.576491] Did not find alt setting 1 for intf 0, config 1

### Printer turned off
# /var/log/messages
Jun 27 18:03:16 racermach kernel: [ 3430.345756] usb 3-3: USB disconnect, device number 6

# dmesg
[ 3430.345756] usb 3-3: USB disconnect, device number 6
Well I have to go back to cups 1.4.6 right now, my daughter needs to print and so do I.

Hope the above information helps. If needed I can go back to 1.5.3 not a problem.
 
Old 06-27-2012, 07:20 AM   #11
chrisretusn
Member
 
Registered: Dec 2005
Location: Philippines
Distribution: Slackware
Posts: 470

Original Poster
Rep: Reputation: Disabled
After logging out of KDE (runlevel 3) I decided to try removing the blacklist for usblp and load it. Here are is the log data.
Code:
# dmesg
[ 3960.721873] usblp0: USB Bidirectional printer dev 7 if 1 alt 0 proto 2 vid 0x04A9 pid 0x173A
[ 3960.721886] usbcore: registered new interface driver usblp

# /var/log/messages
Jun 27 20:10:28 racermach kernel: [ 3960.721873] usblp0: USB Bidirectional printer dev 7 if 1 alt 0 proto 2 vid 0x04A9 pid 0x173A
Jun 27 20:10:28 racermach kernel: [ 3960.721886] usbcore: registered new interface driver usblp

# /var/log/syslog
Jun 27 20:10:30 racermach udev-configure-printer: no corresponding CUPS device found
 
Old 06-27-2012, 07:43 AM   #12
burjast
LQ Newbie
 
Registered: Mar 2009
Posts: 3

Rep: Reputation: 0
I have the same problem, and printer is Samsung (Bus 002 Device 005: ID 04e8:3426 Samsung Electronics Co., Ltd SCX-4500 Laser Printer)

disabling usblp did not help, and I didn't revert sw yet...
 
Old 06-27-2012, 08:41 AM   #13
allend
Senior Member
 
Registered: Oct 2003
Location: Melbourne
Distribution: Slackware-current
Posts: 3,379

Rep: Reputation: 824Reputation: 824Reputation: 824Reputation: 824Reputation: 824Reputation: 824Reputation: 824
Just found a solution that worked for me after seeing this. https://wiki.archlinux.org/index.php...de_permissions
I created a custom udev rule in a file /etc/udev/rules.d/10-usbprinter.rules containing
Quote:
ATTR{idVendor}=="04f9", ATTR{idProduct}=="0169", MODE:="0660", GROUP:="lp"
After rebooting, I now have printing and scanning working with my Brother DCP-110C.
To get the idVendor and idProduct values look at the output of 'lsusb'
It works whether usblp is blacklisted or not.
 
3 members found this post helpful.
Old 06-27-2012, 11:03 AM   #14
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 858

Rep: Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668Reputation: 1668
Thanks a lot, allend! You seem to have found the missing glue.

I added the appropriate udev line, didn't even blacklist usblp (which is nice, because some apps might like to use that interface), and when I rebooted all my queued documents that had been "waiting for printer to become available" began popping out of my Canon printer. Well, off to find a supported printer ID list or determine if there's a better way to do that than to enumerate them in a udev rule.

Why didn't I think of udev right away? I must be getting old...
 
Old 06-27-2012, 11:14 AM   #15
burjast
LQ Newbie
 
Registered: Mar 2009
Posts: 3

Rep: Reputation: 0
Quote:
Originally Posted by allend View Post
Just found a solution that worked for me after seeing this. https://wiki.archlinux.org/index.php...de_permissions
I created a custom udev rule in a file /etc/udev/rules.d/10-usbprinter.rules containing

After rebooting, I now have printing and scanning working with my Brother DCP-110C.
To get the idVendor and idProduct values look at the output of 'lsusb'
It works whether usblp is blacklisted or not.
I've got it working by this process, just deleted and readded printer after reboot. cheers!
 
  


Reply

Tags
cups, libusb, printer, slackware -current


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] CUPS no longer printing with Brother HL2170W laser printer lpallard Linux - Software 8 06-26-2011 04:45 AM
USB no longer recognized wcook1613 Linux - Newbie 1 05-27-2011 05:27 PM
[cups] "no printers found" - printer isn't recognized by CUPS over network Majin_Buu Linux - Server 3 06-18-2009 10:25 AM
cups to cups printing through network on usb printer checkmate3001 Linux - Server 2 02-16-2009 12:12 PM
Cups no longer working: printer useless realnerd Debian 3 02-28-2007 03:15 PM


All times are GMT -5. The time now is 01:03 AM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration