cwillu 2 months ago

A “real” parallel port provides interrupts on each individual data line of the port, _much_ lower latency than a USB dongle can provide. Microseconds vs milliseconds.

  • YZF 2 months ago

    A standard PC parallel port does not provide interrupts on data lines.

    The difference is more that you can control those output lines with really low latency and guaranteed timing. USB has a protocol layer that is less deterministic. So if you need to generate a step signal for a stepper motor e.g. you can bit bang it a lot more accurately through a direct parallel port than a USB to parallel adapter (which is really designed for printing through USB and has very different set of requirements).

    • cwillu 2 months ago

      Are you sure about that? I'd have bet money that the input lines have an interrupt assigned, and googling seems to agree.

      • YZF 2 months ago

        I used the parallel port extensively. I've had the IBM PC AT Technical Reference that had a complete reference to the parallel port. I've read it many times.

        But alas, it was decades ago, so it's possible I'm wrong ;)

        This is the closest reference I can find: https://www.sfu.ca/phys/430/datasheets/parport.html

        The card does have an interrupt but only the ACK signal can interrupt. Not the Data lines. ACK makes sense since it would be part of the printing protocol, you'd send another byte each interrupt.

  • bubaumba 2 months ago

    I think it's possible do to it all on raspberry pico. Having pico doing low level driving and javascript in browser taking high level, feeding pico and providing UI. That would be close to perfect solution