3 ms·
That really sucks for hotplugging since TRS connectors sliding in basically make random connections before seating properly. Granted, you shouldn't hotplug TTL
by eqvinox 5mo ago
That really sucks for hotplugging since TRS connectors sliding in basically make random connections before seating properly.
Granted, you shouldn't hotplug TTL serial, but everyone™ does it anyway. (In some situations you're even forced to, to avoid reverse powering something.)
- foresto 5mo agoThey're not random connections; they're predictable. I'm not worried about Tx briefly touching Rx or ground in these devices.
- eqvinox 5mo agoRandom in the time sense. You'll get junk on your serial line, depending on the scenario that can matter a lot.
- foresto 5mo agoMy scenario is connecting terminal emulators to getty or u-boot, which I think is a common one. A blip of line noise when plugging in would be barely considered an annoyance, easily cleared by pressing Backspace. But yes, if someone happens to be using their serial line for some kind of sensitive signaling, then I would agree that choosing a more isolated connector (or just avoiding hotplug) would make sense.
- eqvinox 5mo agoThing is, for a serial TTL connector to become ubiquitous, it needs to cover at least something like 99% of scenarios. Or maybe 95%. 3.5mm TRS ain't that, and thus just increases general diversity in connectors.
- exmadscientist 5mo agoIn my experience noise on hot-plugging the serial adapter is a complete nonissue. I'm sure it matters for you, sometimes. But for this kind of embedded work, I'd say it's important far, far less than 1% of the time.
- eqvinox 5mo agoIn my experience with... it's maybe 20? ... embedded boards, junk during boot breaks the boot flow for about half of them. And attaching quickly after target powerup is very often the crux of the exercise, to get to the bootloader fast enough before it moves on, but also you don't have the shifters (or Vref pin) in place to be able to attach beforehand...
- jaeckel 5mo agoSince I once had the case where junk on the line (from a wiggly connection) caused Magic Sysrq requests I'm fully on your side. No junk tolerated for potential hot plug connections.
- foresto 5mo agoWhat byte sequence on a Tx/Rx/Gnd serial line can trigger Sysrq key sequences?
- eqvinox 5mo agoIt's not a byte sequence, it's a BREAK == pulling the line low for longer than a byte, i.e. invalid serial framing on the stop bit.
- foresto 5mo agoI'm aware of serial breaks, but this is the first I've heard of them being interpreted as SysRq by Linux. That could be handy. Thanks for the tip. I assume the possibility of spurious Rx state is why FTDI chose to wire Rx to the tip pin of the female TRS connector: It's the last pin to make contact with anything when plugging in, and therefore least likely to be bridged to ground. I suppose the mechanical design of any particular jack would determine whether it's possible at all.
- numpad0 5mo agoThere's a small risk of CPUs and I/O pins getting fried if GND levels aren't equalized first and instead that equalizing force would go through those pins. One could argue that it's hardware designer's responsibility to save users from such things, but then again, using a better connector than TRS can be one of them.
- foder 5mo agoI've been using this ftdi cable too for the last 15 years or so and, while trs isn't a great connector, I haven't had any issues in practice. It works well for capturing serial logs, a console or software updates in development. The advantage i saw was that I could order 50 cables from a distributor and give one to everyone that works on the device. If someone needs one on the other side of the world, they can get one from a local suppliers. Hot plugging hasn't been a problem in my designs, I add a series resistors to the uart net and ESD protection if software developers will use it. When I use it for other devices, like routers, SBCs and IP cameras I avoid hot plugging and leaving it connected when the device isn't powered.