2006-03-02 15:32:20

by wixor

[permalink] [raw]
Subject: using usblp with ppdev?

Hi,
I have laptop withopt parallel port, and I'm trying to use usb->parallel
converter to connect to avr isp programmer. I'm trying, but it seems that
usblp does not register with parport, and ppdev doesn't see the device at
all. Is it the limitation of ieee1284? Is it possible to use usb->parallel


2006-03-02 16:56:06

by Greg KH

[permalink] [raw]
Subject: Re: using usblp with ppdev?

On Thu, Mar 02, 2006 at 04:32:17PM +0100, wixor wrote:
> Hi,
> I have laptop withopt parallel port, and I'm trying to use usb->parallel
> converter to connect to avr isp programmer. I'm trying, but it seems that
> usblp does not register with parport, and ppdev doesn't see the device at
> all. Is it the limitation of ieee1284? Is it possible to use usb->parallel

The linux-usb-devel mailing list is the better place for this...

Anyway, no, the usblp driver is not what you want, you probably want the
uss720 driver, which does register with parport.

hope this helps,

greg k-h

2006-03-02 17:46:34

by Thomas Sailer

[permalink] [raw]
Subject: Re: using usblp with ppdev?

On Thu, 2006-03-02 at 08:55 -0800, Greg KH wrote:

> Anyway, no, the usblp driver is not what you want, you probably want the
> uss720 driver, which does register with parport.

That's actually the reason for the existence of the uss720 driver. I'm
using it occasionally to program PIC microcontrollers.

This method is quite slow compared to a southbridge parport. But there
have been huge improvements to the speed and reliability in the last
couple of years. Kudos to Greg KH, Alan Stern, David Brownell et al.!

Tom


2006-03-03 13:12:49

by wixor

[permalink] [raw]
Subject: Re: using usblp with ppdev?

>
> Anyway, no, the usblp driver is not what you want, you probably want the
> uss720 driver, which does register with parport.
>
But the problem is the uss720 driver is limited to one chip and
doesn't see my cable! Is this chip the only one capable of doing
direct i/o on port pins? Thanks.

2006-03-03 17:07:58

by Greg KH

[permalink] [raw]
Subject: Re: using usblp with ppdev?

On Fri, Mar 03, 2006 at 02:12:46PM +0100, wixor wrote:
> >
> > Anyway, no, the usblp driver is not what you want, you probably want the
> > uss720 driver, which does register with parport.
> >
> But the problem is the uss720 driver is limited to one chip and
> doesn't see my cable! Is this chip the only one capable of doing
> direct i/o on port pins? Thanks.

What is the output of /proc/bus/usb/devices with your device plugged in?

thanks,

greg k-h

2006-03-06 14:31:34

by wixor

[permalink] [raw]
Subject: Re: using usblp with ppdev?

>
> What is the output of /proc/bus/usb/devices with your device plugged in?
>
T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MaxCh=0
D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=067b ProdID=2305 Rev= 2.02
S: Manufacturer=Proliftic Technology Inc.
D: Product=IEEE-1284 Controller
C:* #Ifs=1 Cfg#= 1 Atr=a0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=07(print) Sub=01 Prot=01 Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I: If#=0 Alt=1 #EPs=2 Cls=07(print) Sub=01 Prot=02 Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MaxPS=64 Ivl=0ms
E: Ad=82(I) Atr=02(Bulk) MaxPS=64 Ivl=0ms
I: If#=0 Alt=2 #EPs=3 Cls=ff(vend.) Sub=00 Prot=ff Driver=usblp
E: Ad=01(O) Atr=02(Bulk) MaxPS=64 Ivl=0ms
E: Ad=82(I) Atr=02(Bulk) MaxPS=64 Ivl=0ms
E: Ad=83(I) Atr=03(Int.) MaxPS=4 Ivl=1ms

2006-03-06 17:25:28

by Greg KH

[permalink] [raw]
Subject: Re: using usblp with ppdev?

On Mon, Mar 06, 2006 at 03:31:32PM +0100, wixor wrote:
> >
> > What is the output of /proc/bus/usb/devices with your device plugged in?
> >
> T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MaxCh=0
> D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
> P: Vendor=067b ProdID=2305 Rev= 2.02
> S: Manufacturer=Proliftic Technology Inc.
> D: Product=IEEE-1284 Controller
> C:* #Ifs=1 Cfg#= 1 Atr=a0 MxPwr=100mA
> I: If#= 0 Alt= 0 #EPs= 1 Cls=07(print) Sub=01 Prot=01 Driver=usblp
> E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
> I: If#=0 Alt=1 #EPs=2 Cls=07(print) Sub=01 Prot=02 Driver=usblp
> E: Ad=01(O) Atr=02(Bulk) MaxPS=64 Ivl=0ms
> E: Ad=82(I) Atr=02(Bulk) MaxPS=64 Ivl=0ms
> I: If#=0 Alt=2 #EPs=3 Cls=ff(vend.) Sub=00 Prot=ff Driver=usblp
> E: Ad=01(O) Atr=02(Bulk) MaxPS=64 Ivl=0ms
> E: Ad=82(I) Atr=02(Bulk) MaxPS=64 Ivl=0ms
> E: Ad=83(I) Atr=03(Int.) MaxPS=4 Ivl=1ms

That device says it is the USB Printer class, so odds are, it might not
do what you are trying to do here.

But if you want to play around and verify this, try modifying the USB
device table in the drivers/usb/misc/uss720.c file (look for the
structure called "uss720_table" and add a new entry with the vendor and
product id of your device there.)

good luck,

greg k-h

2006-03-07 17:02:13

by wixor

[permalink] [raw]
Subject: Re: using usblp with ppdev?

>
> But if you want to play around and verify this, try modifying the USB
> device table in the drivers/usb/misc/uss720.c file (look for the
> structure called "uss720_table" and add a new entry with the vendor and
> product id of your device there.)
>
Well, it seems the device doesn't like the driver or vice-verse. When
added entry to the uss720_table, /proc/bus/usb/devices reports that
the device is being handled by this driver, but when I plug the device
in, dmesg gets full of error reports, and the device file doesn't
appear in /dev . Now, my question is: is the cable named "usb to
parallel cable" an interface that converts classic printer to usb
printer? Shouldn't it be rather a real usb to parallel cable? Is it
some kind of protocol limitation that the device is unable to perform
per-pin i/o tasks or maybe the protocol isn't simply fully
implemented by the device? Or maybe I should use some another protocol
(and driver) to use advanced (?) functions? The uss720 driver
complains about usb error -32 (like: get_1284_register: usb error -32
[but: async_complete: urb error -32 - shouldn't it be USB error? a
typo?])

thanks for help

wixor

2006-03-07 17:22:37

by Greg KH

[permalink] [raw]
Subject: Re: using usblp with ppdev?

On Tue, Mar 07, 2006 at 06:02:12PM +0100, wixor wrote:
> >
> > But if you want to play around and verify this, try modifying the USB
> > device table in the drivers/usb/misc/uss720.c file (look for the
> > structure called "uss720_table" and add a new entry with the vendor and
> > product id of your device there.)
> >
> Well, it seems the device doesn't like the driver or vice-verse. When
> added entry to the uss720_table, /proc/bus/usb/devices reports that
> the device is being handled by this driver, but when I plug the device
> in, dmesg gets full of error reports, and the device file doesn't
> appear in /dev .

Ok, then your device is not of this type and will not work, sorry. I
suggest you go purchase a uss720 based device if you wish to do this
kind of thing.

> Now, my question is: is the cable named "usb to
> parallel cable" an interface that converts classic printer to usb
> printer? Shouldn't it be rather a real usb to parallel cable?

As the manufacturer about this, we have no idea :)

thanks,

greg k-h