• Commodore parallel cable, Was: XEP1541

    From Wolfgang Moser@wnah@d81.de to comp.sys.cbm on Thursday, July 03, 2003 12:03:19
    From Newsgroup: comp.sys.cbm

    Hi Daniel, Agemixer, Sam, Ray, Joe, ...,

    I'll try to conclude some things here, that may help
    to find a better solution for our problem(s).

    Discussion topic:
    The Commodore parallel cable used by floppy
    speeders and fast copy programs
    It's incarnations as XP1541 (XAP, XEP, XH) for the
    Star Commander and the PowerLoad cable for 64HDD

    Problem(s):
    1. The parallel cable itself doesn't carry ground.
    It must only be used in combination with an also
    connected serial cable. If only the parallel cable
    is connected between a 1541 VIA or 1571 (CIA) and
    some other device (Userport of C64 or C128, PC
    parallel port) and the serial cable is missing, it
    may burn the VIA/CIA chip. I take this as a common
    fact out of this discussion, there's no proof yet.

    2. As Ray stated:
    RC> I agree. On the other hand, adding additional
    RC> grounds to equipment that already has grounded
    RC> components can create problems too. A "ground
    RC> loop" can introduce hum and noise into a system
    RC> (including computer equipment) that's very
    RC> difficult to deal with sometimes. My stereo at
    RC> home runs off one outlet and my DSS receiver
    RC> off another. Connecting the two for better TV
    RC> sound from the amplifier produces an intermittant
    RC> hum in the sound and an annoying "lockup" problem
    RC> (picture freeze) in the DSS.
    RC>
    RC> Microprocessors hate ground loops.

    3. Another problem may be different ground levels,
    something Mr. Axel discussed with Joe Forster
    internally. I think, he meant, that it may be possible
    with the 1541 disk drive, that the serial port may
    carry a different ground level than VIA pin 1.

    4. But I could Mr. Axel's statement also interprete as
    Agemixer stated in another branch of this thread:

    AM> [...] If you have a PC source diffrent than your
    AM> commie monitor, it _could_ be possible that your
    AM> monitor or TV set rf-cable to your commie, then
    AM> the serial cable to the drive, drive parallel
    AM> ground to the PC is the shortest link for the TV
    AM> grounding. Even if your C64 and/or PC are
    AM> connected to an amplifier, you may hear the TV
    AM> draw noise when it is connected to your C64. If
    AM> the current is high enough between the leaking
    AM> currents between the devices of different phases
    AM> of grounding currents, the amperes may oxidize
    AM> the connectors or even melt the weakest link
    AM> first: it could be the tin connections, or even
    AM> motherboard copper, but the thin copper and tin
    AM> resistance take care that the ICs are blown first.


    Discussed solutions:

    I. A separate ground line for the parallel cable, but this
    introduces problems 2., 3. and 4.

    II. A bus concept as described by Agemixer. If I took him
    right, he proposes something like the following as a
    final solution:

    PC XEP1541
    parallel <=== DB25 cable ===> adaptor built
    port into the drive
    ||| || |
    ||+-GND-+| |
    Serial Parallel
    Connector cable to
    VIA/CIA

    The disk drive should _contain_ the XEP adaptor or it
    should be connected with very, very short cables. Both,
    the serial and the parallel cable should carry a (short)
    ground connection to the 1541 mainboard ground, the
    serial port ground and VIA pin1 (ground).
    There will be a "ground loop" ("receiver loop") again,
    if the adaptor is connected externally, but that could
    be solved by connecting only one single and screw fixed
    ground line from the drive case (and mainboard) ground
    to the adaptor.

    III. Leave anything as it is, but put recommendations into
    the docs of the Star Commander and onto the web pages
    of the XP15x1 cables (XAP, XEP, XH), that the parallel
    cable must not be connected without the serial cable.

    Costly solutions:
    -----------------

    IV. Agemixer: Extra bus drivers for the VIA chip to
    protect it.
    Disadvantage: This isn't possible easily. Since the
    VIA parallel port is bidirectional, you would need
    some extra circuits to switch the external drivers
    from input to output. Since the direction register
    is not available externally, you would have to
    construct a new VIA or CIA chip. Could be done with
    soem FPGA or CPLD chips, but I doubt, that someone
    will pay for it.

    V. Solution I. with some extra RF filters. I don't doubt
    that this will help much, since the ground loop is
    still there.

    Possible cheap solutions to reach the goal (not tested)
    -------------------------------------------------------

    VII. Ray Carlson:
    RC> I suggested he run all his hardware from one outlet
    RC> by using a power strip. It adds surge protection as
    RC> a bonus.

    So check your equipment for all the devices, that are
    connected with data cables or something, collect them
    alltogether and connect it to a single power outlet of
    you house.

    Agemixer:
    AM> So i put all of them to the same outlet. The
    AM> filter started made an awful noise, but when i
    AM> replaced it with a plain level attentuator, all
    AM> the hiss and humm vanished completely. [...] But
    AM> sometimes it is very easy... thru 1 x 16 amp fuse,
    AM> well thru-earthed until 1 cord extension cable,
    AM> finally multiple-socketed and all your devices
    AM> plugged there.

    An extra fuse for the power outlet and maybe a surge
    protection is really a good idea.

    Addionally you may want to check the polarity of each
    single device connected. Get a Multimeter and measure
    the ground levels of each pair of devices (not
    connected with any data cable, but with power only).
    If there are big voltage differencies, it could help
    to plug in the power connector of one of the devices
    the other way. Do it until all devices are on the same
    ground level. Take note, that some devices may not be
    fully grounded at all. Sam Gillet wrote about it.

    VI. To circumvent the effects of 3. and 4., Nicolas Welte
    proposed (internally) to get solution I., but put a
    little resistor of 10 Ohm between pin 1 of the
    VIA/CIA and the extra ground line of the parallel
    cable.

    Does this protect the VIA/CIA then, when the serial
    cable is not connected and the PC and 1541 drive are
    at different ground levels?


    We are still searching for a better, cheap and bullet-proof
    solution to protect our VIAs and CIAs, I think. Any comments
    and proposions are welcome. But think of the users: Nearly
    no one wants to pay more than 10 EUR for such a parallel
    cable, no one wants to do more than soldering simple wires
    instead of a heap of electronics to selfconstruct a cable.
    _That's_ probably the real problem.


    A personal statement and only my very personal opinion:
    The (simple) Commodore parallel cable (10 wires, 8 data,
    2 handshake) is established since 1985 (SpeedDOS). It's
    derivatives (XP1541, only 8 data wires) were introduced
    sometime around 1997. Many Commodorians implicitly knew of
    the problems with such cables, after they shot their
    Userport, Joystick ports (C64 CIA) or the drive's VIA.
    Since we (people like me) always looked for the cheapest
    possible solution to make something possible, we were
    consequently overlooking the worst case by principle.
    We learnt to handle our computers with care, always
    switching them off, when doing some cabling and always
    checking correct grounding. Therefore expensive protection
    circuits were mostly decided "useless", since they didn't
    bring a higher performance or whatever.
    Instead of buying and building expensive protection
    circuits we socketed our chips for the worst case (in the
    average 2 chips per year)...


    This personal statement in mind, we shouldn't discard the
    attempt to put a more protection into the parallel cable,
    if the expense is not too high.


    Womo

    PS: Hopefully Google won't miss this article.

    --- Synchronet 3.18b-Win32 NewsLink 1.113
  • From Wolfgang Moser@wnah@d81.de to comp.sys.cbm on Monday, July 07, 2003 20:14:42
    From Newsgroup: comp.sys.cbm

    Hello fellows,

    Joe had a little talk with Mr. Axel again and sent me a
    translated verison of it. I put parts of it here:

    Internally mainly solution VI. was discussed:
    VI. To circumvent the effects of 3. and 4., Nicolas Welte
    proposed (internally) to get solution I., but put a
    little resistor of 10 Ohm between pin 1 of the
    VIA/CIA and the extra ground line of the parallel
    cable.

    Mr. Axel writes about this solution:
    Well, yes, this is how "book smelling" electronics look
    like. But I have to oppose with Nicolas' statement because:
    If the resistor's value is small (R<100-200 Ohm) then, in
    the better case, it's as if were GND, in the worse case, we
    just added an RC oscillating circuit into the GND line,
    which - depending on the status of the data lines - will
    quite nicely oscillate. If the resistance value is higher
    (maybe, in the magnitude of kOhm's) then we will win nothing
    at all and there's still a chance for an RC oscillating
    circuit... Take into account that what kills the VIA is not
    a 5-10V component but an impulse of, at least, a magnitude
    higher. Where could this come from? From anywhere. It could
    be an ungrounded PC, perhaps, a "comfortable" wire jungle of
    a few C64 components (TV/monitor-C64-1541), onto which the
    beloved user sometimes kicks the PC, too. From this line
    it's enough if e.g. the TV/monitor pulls away the GND point
    of the machine-drive pair by a magnitude of 10V's (don't
    forget, neither the C64 or the 1541 is grounded, that stuff
    has double isolation). And, if there's such a potential
    difference between the ground of the PC and that of the
    1541, then connecting wires while the machines are switches
    on results in sparks flying. Another great killer is if the
    PC is in a different power outler than the C64's monitor (in
    case of multiple phases). Perhaps, the PC is grounded and
    the monitor isn't (or vice versa). Another reason for the
    death of a VIA is when the machine is on _and_ it's grounded
    but the user is plugging the Cannon 15 plug onto the 1541 at
    an angle. (The plug is wide enough so that the pins on the
    edge are already contacting but the GND is not yet.)
    Grounding the case of the Cannon is no solution either
    because, at such an "at an angle" plugging, the case may
    dilate well enough (when being abused) that it will again be
    the data line that gets contact first...

    Joe Forster stated:
    - the second GND connection (on the parallel cable) will
    give complete protection, even with the resistor, if the
    serial cable is not connected.

    This WOULD be true if we were talking about direct current
    that changes slowly (f<1kHz). However, in this cable,
    there's a 3-400kHz rectangle signal, with all its harmonical
    components and distortion because of the cable, plus - which
    is a horror for TTL IC's - the potential differences, which
    can't be handled with a resistor.

    The totally secure solution would be that we add some nice
    auxiliary electronics to the part of the parallel cable
    that is inside the 1541. This would completely deattach
    the 1541 electronically from the outer connector (e.g. by
    using optoconnectors, like 4N25 and others). Note: The VIA

    Ouhhh, groovy! Optocouplers are really a cool idea. A little
    bit expensive and with the same problems as solution IV., but
    really a cool idea!

    can still die if the user keeps plugging _only_ the serial
    cable and the potential difference is high enough (out of
    my own experiences).
    Back then, even the C64 manual warned explicitly about
    connecting device only when they are _switched off_.

    Mr. Axel further writes, that an extra ground line for the
    parallel cable part results in a ground loop. Regardless if
    an additional resitors is used or not. He comes to similar
    results as this news threads.

    Mr Axel points another topic:
    If R>2-300 Ohm (practically 1kOhm) then it lost its function
    of protection: if only the serial cable is plugged in then,
    because of the GND "crawling away", the signal levels can
    get into the forbidden territory or, in an extreme case, a
    pin can even become negative (if 6 VIA pins are in 1, they
    can pull the GND level because current is flowing through
    them. From this point, GND is not 0V anymore, rather 1-1.5V
    and neither is data +5, rather 5-1/5-1.5 4-3.5V. If, in such
    a case the PC pulls some data pin to 0, that will also act
    as another - independent - ground signal whose potential is
    lower than the official ground, therefore, from the 1541's
    point of view, negative signals will arrive at the VIA pins.

    I already heard about such things, but didn't study them
    in depth. Don't know, how realistic it would be in the case
    of our Scenario (PC to Commodore disk drive).


    At last Mr. Axel recommends to point out in the Star Commander
    docs, that both machines beeing connected should be switched
    off. Further always the serial cable must be connected, when
    the parallel cable is used.


    This would result in solution III then...


    Womo



    --- Synchronet 3.18b-Win32 NewsLink 1.113
  • From Daniel Karlsson@daniel.j.karlsson@telia.com to comp.sys.cbm on Tuesday, July 08, 2003 01:09:49
    From Newsgroup: comp.sys.cbm

    Wolfgang Moser wrote:
    [snip...]

    At last Mr. Axel recommends to point out in the Star Commander
    docs, that both machines beeing connected should be switched
    off. Further always the serial cable must be connected, when
    the parallel cable is used.


    This would result in solution III then...


    It seems as the most reasonable solution. I for my part have fixed my
    1541-II now and I have resoldered the XEP-cable so all lines (i.e. both the parallel and the serial lines) go trough the game plug. This way the
    parallel part of the connection can't be attached to the PC without the
    ground line of the serial part. This is of course no sugestion that the XEP should be redesigned this way, but for my needs this seemd as the best sollution. The positive thing is that it seems like it's just 2 VIAs that's been wrecked, the other problems seem to be due to something else. Thank you all for your help and I hope and think that this will lead to clearer info
    on the construktion page on how to avoid to damage our precious Commodore equipment.

    Regards
    /djk


    --- Synchronet 3.18b-Win32 NewsLink 1.113