Parallel to serial to ST-506 to 5-bit teletype to...

A reader writes:

This seemed right up your alley. I saw this on Gizmodo this morning:

Plug-adapter chain

I initially dismissed it as totally fake. After all, it's just a string of pin adapters, and you can't get a flash drive to talk to a parallel port.

But then I thought some more. What if one were to replace the crystal in the USB drive with one of a much lower frequency, and then write a virtual device driver which implements USB using the parallel port pins? This would, of course, make the USB device useless on a regular USB interface, but it seems like it would be possible. And there's also the question of "why on earth would you want to?", but if you're the type to ask that question, you probably wouldn't have seen it in the first place.

Do you have any insight as to why such an approach would or would not work technically?

Ammon

Improbable assemblage

(Anyone can do it!)

This reminds me of the hardware dongle, one of the many wonderful creations of the copy-control industry. Nowadays I think copy-protection dongles are all USB, but there was a time when some lucky users had to daisy-chain multiple parallel-port doodads in order to run multiple protected apps at once.

As you say, there'd surely be some way to connect a USB thumb drive to a parallel port, but not with standard computer-store products. (No, you can't just take a USB-to-parallel adapter and turn it around.)

I'm sure this sort of trick has actually been done many times, to connect modern storage to legacy systems. I don't think it'd be a huge job for one of the modern easy-to-program microcontrollers (Arduino, etc). If you've got some 35-year-old industrial computer that still works fine except its moving-parts storage keeps crapping out when the mining dust or machine-shop shavings get into it, hacking up some way to replace its ancient hard (or floppy, or optical, or tape) drive with Flash RAM is attractive.

There's more than one part of the hack-as-presented that couldn't possibly work, but what I immediately noticed was the green USB-to-mini-DIN adapter, which is probably one of those standard adapters for connecting a USB mouse to a PS/2 port, several of which can usually be found in the desk drawers of anybody who's been using a PC for the last ten years.

Those mouse adapters are, as you say, just pin-adapters, containing no logic; you could in principle do the same job with paper-clips and tape. Mice that work with these distinctive green adapters all have USB and PS/2 compatibility built in, and use one or the other depending on what they reckons they're plugged into. I think any of the green adapters will work with any such mouse, but they won't work with a USB-only mouse, and they definitely won't work with USB devices in general.

This sort of thing is one of the standard causes of support people banging their heads on the desk.

Theorem: The guy who's daisy-chained adapters so he can plug his XT keyboard into his iPad is preferable to the guy who's managed to plug a PCI card into a memory slot by just pushing really, really hard.

Discuss.

11 Responses to “Parallel to serial to ST-506 to 5-bit teletype to...”

  1. Itsacon Says:

    Theorem: The guy who's daisy-chained adapters so he can plug his XT keyboard into his iPad is preferable to the guy who's managed to plug a PCI card into a memory slot by just pushing really, really hard.

    Disagree. The guy who managed to destroy his mainboard by jamming in a PCI card is only bugging one tech support guy, and not for very long (if the TS guy knows what questions to ask).

    The guy with the Ipad won't shut up for years (or till the Ipad 2 comes out, whichever comes first) telling everyone about how great it is and how everyone should buy one, and how they can use it to do things they didn't even know they wanted to do untill Steve Jobs told them they wanted to.

  2. Keris Says:

    This reminds me of the hardware dongle, one of the many wonderful creations of the copy-control industry. Nowadays I think copy-protection dongles are all USB, but there was a time when some lucky users had to daisy-chain multiple parallel-port doodads in order to run multiple protected apps at once.

    Oh yes, I remember that like it was last year. Because where I work, it damn near was.

    Gerber, up until recently, was parallel port dongle only (if you've ever used or seen their software, this won't surprise you). And it wasn't just a single one for the package. No, there was one for each major component. We had four. And, to make it even more fun, they had to be plugged in a certain order to work; plug the wrong way, and it may let one part run. And, like everything about their software/hardware relations, this isn't documented and their support were shocked and amazed when we demonstrated it to them.

    One coworker's ingenious solution to having a giant stack of heavy dongles hanging off the motherboard port was to source some of those old parallel port motherboard header to expansion slot cables, and then invert it so that the dongles plugged up inside the case, the extension cable plugs into the mobo port, and the students can't futz up the things.

    Now they do it all with a network license server. The software is still a pile of bugs and unpredictable behavior, but at least it's not because the port went bad, the extension cable got munched, or we put it back together wrong when they wanted the class moved for the 100th time.

    Back before my time, we had these kind of things for damn near everything (3ds max, Lightwave, AutoCAD, etc.). Can you imagine the dongle train? We keep one of these pinned to the wall in the back, so that whenever we curse the license server for being fickle, we can remind ourselves of the hell we used to have to deal with.

    Of course, we still have one dongle left: Avid. Thankfully it's USB. And we used the same sort of internalizing trick, only with the glut of Apple keyboard extensions we get and some zip ties to keep people from just fishing out a multi-thousand dollar dongle.

  3. Keris Says:

    I think any of the green adapters will work with any such mouse, but they won't work with a USB-only mouse, and they definitely won't work with USB devices in general.

    I thought that too, until one day we tried mixing a Microsoft one with a Logitech one. They wouldn't work on the other mouse. I doubt there's any Apple iPod Shuffle headphone level trickery going on. More likely that they just adapt the pins differently, and thus don't engage the hardware check right.

    I've never really tried with the cheapo off-brand ones. Anymore, we just toss the things in the trash instantly. If we ever need to hook a mouse up to a machine with only PS/2 ports, we can just fish out a mouse from a recent HP business desktop model; even in 2010, they ship with PS/2 mice and keyboards.

  4. Chazzozz Says:

    Surprisingly, the building maintenance system vendor at my most recent place of employment also still used a hardware dongle. Prior to my leaving one of the last tasks I had to do was upgrade the desktop the BMS was running on, and it was imperative that it sported a parallel port so the dongle could be plugged in.

    They told me that the dongles have since largely gone to USB...but the problem there is unknowing users see it and think, "Hmmm, someone forgot their flash drive, I might just take that." They highly recommend that the dongle be either plugged in internally or else chained to the case.

  5. Fallingwater Says:

    I don't think there ever was a better incentive for piracy than the dongle. Even the demented protections they use now (or used to use; see the mostly-failed Starforce) don't quite drive users to the same level of desperation as having a big, long chain of dongles coming out their parallel ports. Especially fun if at the end of said chain one had to plug in a printer...

  6. corinoco Says:

    *cough* Autodesk and all CAD software in the 1980s-90s *cough* Dongle HELL. Every bit of software had one, each add-on had one, each one said in the install guide "Ours MUST be first in the chain", one slight bump to the desk and your software would crash, and yes, plugging in a printer was like summoning a Baatezu, involving arcane rituals, much swearing and the cutting of fingers on sharp bits if metal.

    As for the pictured chain - sure you can do that. I'll give you $1 if you switch it on...

  7. jnz Says:

    Gerber, up until recently, was parallel port dongle only

    I'm as much of a fan of Elyse Porterfield as the next guy but what does she have to do with parallel port dongles?

  8. Keris Says:

    I'm as much of a fan of Elyse Porterfield as the next guy but what does she have to do with parallel port dongles?

    That would have been my VM at work screwing up and not syncing the clipboard properly. And then me not seeing it was wrong. ^_^; This would be the company of evil I spoke of.

  9. dr_w00t Says:

    That would have been my VM at work screwing up and not syncing the clipboard properly. And then me not seeing it was wrong.

    That could have gone much much worse than it did...

  10. Daniel Rutter Says:

    That could have gone much much worse than it did...

    Obligatory NSFW bash.org search.

  11. Jonadab Says:

    There *are* cases where chaining together multiple pin adapters in sequence can be functional, useful, and possibly even a recommended configuration. One in particular that I have encountered involved the DB25 serial port on the back of a UPS. Into this was plugged the special cable (which probably came with the PowerChute software), the other end of which was DB9. A DB9-to-MMJ adaptor was connected to that end, and the Modified Modular Jack (MMJ) on one end of a standard CAT4 cable plugged into that. The MMJ on the other end of the CAT4 cable plugged into an MMJ-to-RJ45 adaptor, which plugged into one of the eight ports on a DECserver (which, despite the name, is not what most folks these days would call a server; it's a piece of networking equipment, sort of like a router only different, which allows up to eight serial devices, usually dumb terminals, to be connected to a DECNET network; the actual server in our setup was an AlphaServer DS10, which was connected by CAT5 to a hub that connected to the terminal servers via thin coax).

    To the untrained eye, this actual working configuration would hardly seem more wildly unlikely than the one pictured. For one thing, anyone who doesn't know better would assume the RJ45 ports on the DECserver were meant for ethernet, and you wouldn't have to go far to find someone who would guess the DB25 port on the back of the UPS was parallel. In actuality, however, everything from the UPS to the terminal server was serial (RS232, I *think*), so it really was just a matter of exactly the right pin adaptations to get things all hooked up and working.

    But yeah, the pictured configuration wouldn't work, because in that case there are indeed completely different types of signaling involved, so you'd need more than just pin adapters to bridge the gap.

    Keris: sticking a USB dongle inside the case should be trivial: most motherboards these days come with about four more USB headers than you actually need, each supporting two ports. Take the expansion-slot bracket off a cable meant to shunt two extra ports out the back (WHY would anyone need to do that, when every motherboard has at least six rear ports and nobody ever uses more than two?), or scavenge a front-USB-port cable from the case of a dead computer, zip-tie it inside the case somewhere, and Bob is your uncle. Replace the phillips-head case screws with something mildly exotic, like those square Canadian ones or an unusual torx size, and you should be safe from kids fooling around who don't know the dongle is worth anything.

    (Of course, if you want to protect against thieves who know the dongle's real value, you still have to physically secure the case, and I don't mean with an easily-boltcuttered or "kicked" Master padlock.)


Leave a Reply