Menu

FreeBSD 7.0-RELEASE+CUPS+gutenprint+Epson

Help
2008-04-12
2013-04-17
  • Steven Friedrich

    I'm trying to get an Epson Stylus CX8400 working under CUPS on FreeBSD 7.0-RELEASE.

    I have previously configured HP Deskjet 560C and a Brother HL-6050DN.

    The gutenprint User's Manual states there are backends for Canon and Epson. I cannot find the Epson backend and have filed a problem report with freebsd-ports. I asked on -ports and -questions, but it's been over a week and no helpful responses.

    Does anyone have a Canon or Epson working under CUPS on FreeBSD?

    Do you have a backend in /usr/local/libexec/cups/backend?

     
    • Robert Krawitz

      Robert Krawitz - 2008-04-12

      The user's manual is out of date -- you don't need the Canon or Epson back ends, and we don't distribute them any more.  You should be able to use the standard USB back end.

       
    • Steven Friedrich

      Thanks for the response.

      I have asked for about two weeks now, for info at the FreeBSD mailing lists, -ports and -questions. No one seems to know anything about CUPS, gutenprint and Epsons.  I had an HP Deskjet 560C and had wrestled with CUPS for a LONG time and I got it to work fairly well.  I bought a Brother monolaser and it worked out great because it's a Postscript printer and Brother supplied a .ppd.

      I've been using CUPS for several years and I know how to configure printers from the web interface, etc.

      I set the LogLevel to debug and I was expecting to find an error msg regarding a broken pipe due to a missing filter or backend.

      I couldn't find any errors in /var/log/cups/error_log.

      As far as CUPS is concerned, it printed the file.

      I have been trying to print two things.
      1. CUPS has a button to print a test page. As you know, their test page includes graphics.
      2. A simple text file from Kate.

      The printer mostly just feeds sheet after sheet, occasionally printing some garbage.

      I appear to be missing some magic 8o)

       
      • Robert Krawitz

        Robert Krawitz - 2008-04-15

        I've asked someone with a strong BSD background if he may be able to assist you with this.

         
      • Greg Troxel

        Greg Troxel - 2008-04-15

        I have been using cups and gutenprint to print on an Epson Stylus Photo 1200 under NetBSD, mostly with success.   To debug this, there is at least one thing to check for, and then the next step is to separate the various pieces.   The USB backend in cups now reads from the ulpt(4) device, and can block if that blocks.  The USB lpt drive in *BSD used to not support reading, and then did, but doesn't support FIONBIO. Cups would call read with 1024 bytes or somethihng and the driver would loop waiting for them to come in.  I fixed up the driver in NetBSD-current to deal with reading better, and now can print with cups.

        To debug, use gutenprint with print-to-file, and get an output file.  Without cups running, cat this onto the printer.  Make sure escputil -n runs first, or disable cups and boot clean after powering everything off.   I am trying to get a Stylus PHoto 1270 to work, and it works this way, but I am still having some issues with cups.

        So, it's very likely that your problem is not gutenprint, but cups/usb-driver.

        If you're up to reading and fixing kernel code, I can point you to my ulpt changes, or just look in NetBSD CVS at src/sys/dev/usb/ulpt.c and make sure you have at least rev 1.79.

         
    • Steven Friedrich

      I forgot to add that I also tried the escputil -sr /dev/ulpt0 to get status and it says the device is busy. I've tried this many times and have never gotten status.

      Someone suggested that I take the umass driver out of my kernel and then try to configure the printer and then hand-load the umass driver so I could use floppies, thumb drives, etc.

      It made no diff.

       
      • Greg Troxel

        Greg Troxel - 2008-04-15

        Probably this should attach as ulpt.  what shows up when you plug it in?

         
    • Steven Friedrich

      Here's my info from dmesg:
      dmesg|grep lpt
      ulpt0: <EPSON USB2.0 MFP(Hi-Speed), class 0/0, rev 2.00/1.00, addr 2> on uhub4
      ulpt0: using bi-directional mode

      usbdevs -vd
      Controller /dev/usb0:
      addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00
        uhub0
      port 1 powered
      port 2 powered
      Controller /dev/usb1:
      addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00
        uhub1
      port 1 powered
      port 2 powered
      Controller /dev/usb2:
      addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00
        uhub2
      port 1 powered
      port 2 powered
      Controller /dev/usb3:
      addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00
        uhub3
      port 1 addr 2: low speed, power 98 mA, config 1, USB Receiver(0xc518), Logitech(0x046d), rev 42.02
         ums0
      port 2 powered
      Controller /dev/usb4:
      addr 1: high speed, self powered, config 1, EHCI root hub(0x0000), Intel(0x0000), rev 1.00
        uhub4
      port 1 powered
      port 2 powered
      port 3 addr 2: high speed, self powered, config 1, USB2.0 MFP(Hi-Speed)(0x0839), EPSON(0x04b8), rev 1.00
         ulpt0
      port 4 powered
      port 5 powered
      port 6 powered
      port 7 powered
      port 8 powered

      Previously I had a umass driver built into the kernel and someone on FreeBSD lists suggested I remove it from the kernel and load it manually later.
      I built a new kernel without the umass driver, but it didn't help the printer anomaly.

      escputil -sr /dev/ulpt0
      Escputil version 5.1.7, Copyright (C) 2000-2006 Robert Krawitz
      Escputil comes with ABSOLUTELY NO WARRANTY; for details type 'escputil -l'
      This is free software, and you are welcome to redistribute it
      under certain conditions; type 'escputil -l' for details.

      Cannot open /dev/ulpt0 read/write: Device busy

      Hey, this worked:
      escputil -qudr /dev/ulpt0
      Epson Stylus CX8400

      This returned no status:
      escputil -qusr /dev/ulpt0

      WOW, I just got a nozzle pattern printed
      escputil -qun

      I tried printing from Kate again. No joy.

       
      • Greg Troxel

        Greg Troxel - 2008-04-15

        Your results are consistent with the problem reading from ulpt(4).  I expect that if you turn off your spooling systems and print to a file (perhaps with the gutenprint gimp plugin), and use cat, that you will get reasonable output.  If so, I think as a next step there are two reasonable choices.  One is to merge my driver changes from NetBSD.  The other is to modify the cups source for the usb backend to make it never try to read form the printer.

         
        • HPS

          HPS - 2008-04-17

          Hi,

          Can it be that the existing ULPT does not support non-blocking reads and writes ?

          I have an USB patchset which you can try if you want, where ULPT supports non-blocking reads and writes:

          svn --username anonsvn --password anonsvn \       checkout svn://svn.turbocat.net/i4b
          #
          # The following commands will
          # install the driver on FreeBSD:
          #
          cd i4b/trunk/i4b/FreeBSD.usb
          make S=../src package
          make install

          Then you compile a new kernel.

          Please let us know your results so that we can get this fixed in the official FreeBSD aswell.

          --HPS

           
    • Steven Friedrich

      I appreciate your effort, but I must say that modern printers MUST be read
      from to get status info, ink levels, etc.

      Disabling all reads would be a bad thing.

       
      • Greg Troxel

        Greg Troxel - 2008-04-17

        With my changes to NetBSD-current, reading works.  I was suggesting making cups not read at all in case bringing that patch over was too daunting.

         
        • Steven Friedrich

          I don't have commit privs at FreeBSD.  Do you or do you have access to someone who does?

           
          • Greg Troxel

            Greg Troxel - 2008-04-17

            No, I do not have commit privileges at FreeBSD.  I would suggest that you fix your  own system by porting my patch and then file a PR, as a PR with a tested patch will likely get more attention that a suggestion to port a change.

             

Log in to post a comment.