Re: USB to parallel converters

From: Wolfgang Moser <womo_at_news.trikaliotis.net>
Date: Wed, 23 Jun 2010 21:40:29 +0200
Message-ID: <hvtnvc$rga$1@vs5413.trikaliotis.net>
Nate,

Nate Lawson schrieb:
> Anders Carlsson wrote:
>> While I have no practical experience of USB to parallel converters, I
>> wouldn't expect much from them. Recently I bought two cheap USB to RS232
>> converters: one HL-340 based and one PL-2303 based. I managed to get the
>> HL-340 to speak to a serial EPROM programmer, but failed miserably to
>> use both with C2N232I which was my intended use. I have looked up the
>> matter and there are several factors such as choice of chipset, whether
>> the adapter also have voltage level converters onboard, of course
>> drivers and more. Since not even serial communication seems to be
>> possible to "get right", I think you can look for a long while to find a
>> USB adapter that better simulates a parallel port.
> 
> Short answer: USB/LPT adapters will not work for driving hardware.
> PCI/cardbus/expresscard adapters may work, depending on their design.

this is true, but...

please have a look onto the page I posted a link to. Although you are
right about latency and such, Henrik Haftmann found a way to let most
old DOS based programming dongles and software work even under modern
Windows OSes.

> 
> The USB bus is high latency, high bandwidth. The onboard LPT port is low
> latency but less available in laptops or modern PCs. The USB bus works
> on a packet basis and is more like a network than port. To send a single
> bit, you actually have to send ~10 bytes and transmission of those bytes
> starts on a ~1 ms boundary.
> 
> If you connect a USB/LPT adapter, the host PC will send data to it over
> USB and thus has the above limitations. Hobbyist hardware connected to
> the LPT port depends on microsecond-accurate bit twiddling, which just
> isn't possible over USB.
> 
> Beyond this, your USB/LPT adapter likely won't be compatible with the
> in/out IO port programming model unless the BIOS supports this mode. I
> don't know much about support for this, but usually you have to go
> through the Windows kernel API and your programmer code may not support
> that kind of LPT access. So even with the right adapter, your code might
> not work without rewriting it.
> 
> A PCI or cardbus (PCI over external pins) adapter gets mapped into the
> BIOS as if it is an onboard device. So you have more chance of success
> that way.
> 
>> Then again, there may be some people with experience of the X-series
>> cables, connected to modern computers via USB adapters. I know a few
>> years ago it was pretty much hit and miss if you tried to wire up e.g.
>> an XE1541 via a USB adapter.
> 
> Depending on the speed of the external device, you might get away with
> it. An IEC device speaking the normal protocol is quite slow and the
> handshaking allows the host to set the IO rate. So it may work. However,
> speeder modes or parallel transfers will not work.
> 
> I created the xum1541 adapter for supporting high speed and parallel IEC
> devices. What it does is transfer an entire command to the
> microcontroller, which then twiddles the bits of the IEC bus at high
> speed and transfers the data back over USB. This works fine.
> 
> http://www.root.org/~nate/c64/xum1541/
> 
> We're continuing work on getting a custom board made for this so those
> who can't solder can have this device also. However, no ETA yet on when
> it will be available.
> 


Womo

       Message was sent through the cbm-hackers mailing list
Received on 2010-06-23 20:00:11

Archive generated by hypermail 2.2.0.