Reverse Engineering a printer's USB Protocol - Embedded

This is a discussion on Reverse Engineering a printer's USB Protocol - Embedded ; I have an old 486 linux box that I use for some serial rs232 data logging. I also have an *old* canon printer that worked with windows,that Id like to use with the logger, but it doesnt have any linux ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: Reverse Engineering a printer's USB Protocol

  1. Reverse Engineering a printer's USB Protocol

    I have an old 486 linux box that I use for some serial rs232 data
    logging. I also have an *old* canon printer that worked with
    windows,that Id like to use with the logger, but it doesnt have any
    linux drivers.

    So, I would like to make a linux driver for it, but Im not a usb
    expert... would such a project be too lofty a goal?? Is it reasonable
    to think that the protocol could be extracted and implemented in
    linux?? If not, how are (usb) windows device drivers normally ported to
    linux?

    Just poking around, Ive installed some evaluation versions of software
    based usb analyzers, and have sent over a paper feed, reset, etc, and
    monitored the traffic spurts, although Im not exactly sure what Im
    looking at (or if its even meaningful)... if I posted some of the
    traffic I see, would someone be able to point me in the right direction
    as to how to proceed?

    Thanks!
    Ben


  2. Re: Reverse Engineering a printer's USB Protocol

    On 28 Oct 2006 22:22:25 -0700, benn686@hotmail.com wrote:

    >I have an old 486 linux box that I use for some serial rs232 data
    >logging. I also have an *old* canon printer that worked with
    >windows,that Id like to use with the logger, but it doesnt have any
    >linux drivers.


    Old and USB sounds strange.

    If the printer is really old, it should contain a real character
    generator ROM, so you just send ASCII characters to it.

    However, most new cheap printers are just WinPrinters without a
    character generator ROM and the driver is running on Windows is
    generating the bit maps and send them to printer. The bit map protocol
    is often proprietary and kept secret, so these printers are only
    usable with Windows machines, unless the printer manufacturer supplies
    the driver to other operating systems (unlikely).

    Paul


  3. Re: Reverse Engineering a printer's USB Protocol

    On Sun, 29 Oct 2006 12:32:22 +0200, Paul Keinanen wrote:

    > On 28 Oct 2006 22:22:25 -0700, benn686@hotmail.com wrote:
    >
    >>I have an old 486 linux box that I use for some serial rs232 data
    >>logging. I also have an *old* canon printer that worked with
    >>windows,that Id like to use with the logger, but it doesnt have any linux
    >>drivers.

    >
    > Old and USB sounds strange.
    >
    > If the printer is really old, it should contain a real character generator
    > ROM, so you just send ASCII characters to it.
    >
    > However, most new cheap printers are just WinPrinters without a character
    > generator ROM and the driver is running on Windows is generating the bit
    > maps and send them to printer. The bit map protocol is often proprietary
    > and kept secret, so these printers are only usable with Windows machines,
    > unless the printer manufacturer supplies the driver to other operating
    > systems (unlikely).
    >
    > Paul


    I've taken to using an old windows2000 machine to handle this. I have the
    normal vendor-supplied driver installed. Then I create a postscript
    printer, loop it through ghostview which then outputs to the windows
    printer. It works pretty good and now any platform (even ones that don't
    know anything _but_ postscript) can use the printer.

    Next time, however, I will probably not buy an HP.



  4. Re: Reverse Engineering a printer's USB Protocol

    There is a device called "kitty usb bus analyzer", I know of, that might
    help. (I never used it.)

    -Michael

+ Reply to Thread