Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Nov 2000 22:42:52 +0000 (GMT)
From:      "Walter C. Pelissero" <walter@pelissero.org>
To:        Keith Walker <kew@icehouse.net>
Cc:        questions@freebsd.org
Subject:   Problem with USB printer
Message-ID:  <14880.16492.311270.383061@hyde.lpds.sublink.org>
In-Reply-To: <00112510022900.06194@mars.walker.dom>
References:  <00112510022900.06194@mars.walker.dom>

next in thread | previous in thread | raw e-mail | index | archive | help
Keith Walker writes:
 > Ok, a while back (couple of days ago) I posted a question about my Epson 900 
 > not working when attached via the USB cable.
 > 
 > I found the solution to the problem. Hopefully this will help others with 
 > Epson's that don't seem to work via the USB port.
 > 
 > The Epson's must have an initialization string sent to them to wake up the 
 > beast. This string only needs to be sent once, after plugging the printer in. 
 > Turning off the power doesn't seem to matter, just the power cord. Anyhow, 
 > sending the init string once per job is sufficient and harms nothing.

Well done!

Ok.  I put this line in my rc.local and even my Epson 860 works.

   printf "000\033\001@EJL 1284.4\n@EJL     \n" | tr 0 '\0' > /dev/ulpt0

There is only one problem left: this string is either incomplete or
not correct.

The proof is that after sending it to the printer the next printout is
corrupted.  So if you print graphics you get a bounch of random chars
because of synch loss, but if you try to print a plain ASCII file
you'll miss the first few characters (I experienced something like
50-60).

I'm trying to figure out what is missing or what is superfluous in
that init string.

In the meanwhile I had a look at the Gimp Print driver and I found
this procedure:

void
initialize_print_cmd(void)
{
  bufpos = 0;
  if (isUSB)
    {
      static char hdr[] = "\000\000\000\033\001@EJL 1284.4\n@EJL     \n\033@";
      memcpy(printer_cmd, hdr, sizeof(hdr) - 1); /* Do NOT include the null! */
      bufpos = sizeof(hdr) - 1;
    }
}

That looks a little bit different from what you mentioned.  I'm going
to try this version.  Let's see if it changes anything.

-- 
walter pelissero
http://www.pelissero.org


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14880.16492.311270.383061>