Evolution of usb connector? - Page 1
Forum section: electronics / projects

author: coppercone2
author_rank: Super Contributor
timestamp: December 16, 2018, 10:22:12 am
content: So i was looking at the various usb connector types.What exactly does the enginnering process for connectors look like? How come the usb connector did not start in the micro size?Was there real unknowns about the connector manufacturing process and durability relating to physics of plating and stamping and all that stuff or was the tooling required for smaller tooling made more economical since the rise of usb?Or is it more like multitools where you can probobly make yhe latest leatherman in 1920 but it was just not specced that way for some reason? Or are there deficencies in the smaller usb connectors so it was some kind of engoneering tradeoff?

author: Mechatrommer
author_rank: Super Contributor
timestamp: December 16, 2018, 11:10:26 am
content: https://en.wikipedia.org/wiki/USBhttps://www.autodesk.com/products/eagle/blog/usb-one-port-revolution/

author: 001
author_rank: Super Contributor
timestamp: December 16, 2018, 12:03:15 pm
content: Quote from: coppercone2 on December 16, 2018, 10:22:12 amSame idea tooI cant understand why USB connectors so crappy and strangeIt will be more ergonomic to keep it symmetric like old audio jacks

author: bloguetronica
author_rank: Frequent Contributor
timestamp: December 16, 2018, 02:20:24 pm
content: Hi,It should be obvious why the USB connector did not started to be manufactured in the micro size. The USB standard was created to replace a multitude of connectors like the PS/2, DIN 9 and the like. If you see the size of those connectors, you can easily see that the standard A or B connectors are actually small and indeed a breakthrough.Then the mini USB came to be. It was smaller, but flawed in design. The standard between mini-A and mini-B was not clear, and the connectors didn't last, especially the female ones. In order to "solve" the mini connector "blunder", the micro USB connector was created. The micro USB is not much smaller when compared to the mini version, but it is far more reliable.Also, if you think, the standard A and B connectors are less of a technical challenge, and it is natural why they were made first, although the reason is that the mini version was not a necessity at the time, when the USB standard was first created.Kind regards, Samuel Lourenço

author: ajb
author_rank: Super Contributor
timestamp: December 17, 2018, 01:16:53 am
content: Also, if you look at the state of the art in consumer technology when USB was developed, there simply wasn't any real pressure for the connectors to be any smaller. It wasn't until later on when smartphones became a big thing that there was pressure for a smaller, more reliable standard connector.

author: coppercone2
author_rank: Super Contributor
timestamp: December 17, 2018, 01:23:23 am
content: how come the reliability of the mini was bad?

author: james_s
author_rank: Super Contributor
timestamp: December 17, 2018, 04:33:41 am
content: Because smaller connectors are like smaller anything, there's less material so they are less strong. The mini and micro USB connectors still suck in terms of strength but they're usually used on small lightweight devices where it's less of an issue. Back in the days of chunky 3.5" hard drives and 5.25" optical drives in heavy metal enclosures putting a mini or micro connector on would have been silly, bump the cable and it could snap the connector right off before it moves the device. I've had several micro USB connectors ripped right off of PCBs due to minor mishaps, never had a fullsized USB socket damaged.I remember when standard USB came out, the connectors seemed tiny! They were replacing things like 50 pin Centronics SCSI connectors on big fat cables, 25 pin parallel printer cables and such, there was simply no reason to go any smaller. IIRC the original USB connectors were based on the connector used for linking the Nintendo Game Boy handheld systems, which had proven it to be a robust design even in the hands of clumsy or rambunctious kids.

author: coppercone2
author_rank: Super Contributor
timestamp: December 17, 2018, 04:41:23 am
content: So given average use with the thicknesses and everything of the shield and stiffener they are significantly weaker then the old connectors.But I thought I read some where the newer ones were actually more reliable. I was suspicious about this but I took it as fact.i think the microusb ones fit a bit better though, the normal USB seems a bit jiggly in comparison

author: LapTop006
author_rank: Unknown
timestamp: December 17, 2018, 05:44:57 am
content: Quote from: james_s on December 17, 2018, 04:33:41 amThe 6-pin FireWire 400 cable is more like the old gameboy connector.

author: Mr. Scram
author_rank: Super Contributor
timestamp: December 17, 2018, 05:58:43 am
content: Quote from: coppercone2 on December 16, 2018, 10:22:12 amHow old are you? It's probably hard to imagine what USB originally was if you're not too familiar with hardware and the demands put upon it back then. USB wasn't ubiquitous like it is now and both the high speed data bus and power delivery are more or less unintended consequences of how people turned out to use the technology and the USB group running with it. Have you seen the connectors common in that age?

author: coppercone2
author_rank: Super Contributor
timestamp: December 17, 2018, 06:16:27 am
content: its small compared to a gpib or something sure but i am surprised they did not just try to shrink it all the way on the first iterationi have seen many engineered products that they make absolutely tiny first generation for chic reasons then they get bigger because its too difficult to assemble and stuff.I usually do it too, try to make it as small as possible when I make it but then I end up with a bunch of engineering design unknowns that just make me make it bigger to reduce the number crunch and parts sourcing (i.e. how much do you know about tiny rf connector reliability, durability ,etc.. too much research for me, so you just go with a SMA rather then one of those microscopic ones), or like durability of tiny capacitors etc.. you end up with a shit load of research if you go to small with electronics. is it like that with connector pins and crimps and stuff too? Like a different materials behavior regime is entered? like i wanted to go with a bunch of 0201 parts and stuff before but I started getting paranoid about the manufacturing process.I want to know why they might have done what I do if thats how it went down. you make it sound like someone just said yea its like a order of magnitude smaller good enough (and they knew exactly what they needed and how it would behave if it was made smaller and it was a cost decision).It sounds like its a function decision based on what james_s said but I still think those microusb fit better but I never broke one before. all the big USB ones feel pretty sloppy (but I think the original barn house shape one seems to wiggle less ) . I guess the old ones are just better from a gross physical abuse standpoint (I am pretty careful with my connectors).But I did notice with the normal rectangle USB connectors before, you can break the plastic tab out inside of them so you just have a bunch of floating pins in the connector, it still works but you can plug in something backwards when this happens, the new shape prevents this unless you use pliers to deform it like crazy, since its a metal on metal interface rather then plastic tab being a direction control (it seems careless because a DSUB is by default protected by this, the USB was a step down because of materials choice and stress points until it got shrunk where the stress points were moved to a chassis exterior so it was under expansion strain rather then torsion or whatever)on the plastic tongue.

author: Mr. Scram
author_rank: Super Contributor
timestamp: December 17, 2018, 06:54:39 am
content: That's why I asked how old you are. It seems you don't have a concept of the demands of that era. Printers were connected by huge connectors. Hard drives and disk drives were connected with what are essentially regular flat cables with the 2,54 mm pin spacing we're familiar with in electronics. There was no push or reason to shrink the connectors down that much. The technology around simply didn't require it and it didn't line up with the existing production capabilities. Devices weren't portable or tiny. Why would you need a tiny connector for your printer?I'd even ask you the reverse. Why do you think they'd push for connectors that tiny? The connector they designed for mice and other peripherals is still used and dominant today. That's a well chosen and engineered solution if you ask me. Why would they have pushed for more until ever shrinking mobile devices started demanding it? A good engineer makes it as good as it needs to be, and no better. Better yet, if you look at changes in data and power capabilities, the current iteration of USB has been shaped by iteratively fulfilling the demands of the time.

author: ejeffrey
author_rank: Super Contributor
timestamp: December 17, 2018, 07:01:55 am
content: Lithium ion batteries weren't really a thing for consumer electronics when USB was standardized. Nor was flash storage. The early use cases were bulky external drives (including ZIP drives if you remember those), printers, modems, and that sorts of thing. For the most part they weren't intended to be super portable -- they were intended to replace the zoo of existing connectors on desktop PCs -- plugged in once and left connected or moved only occasionally. The chunky nature and relatively strong retention force were considered positives for that application. Low-speed devices like computer mice and most other input devices were required to have captive cables so they don't have a B connector at all rendering the connector size moot. Even when mini-B was created for things like cameras, plugging it in wasn't a daily activity for most people (pros used firewire). It wasn't until the iPod where Apple really pushed the model of the lithium ion battery recharged in the device with a single cable for charge and data that really made the case for micro-B.I still like to see full-size B connectors on devices like printers that have the space. They have much higher pull strength and take a lot more abuse. USB-C is considerably better than micro or mini-B, but the original full size B is a pretty nice connector. I imagine that USB-C will continue to displace A and B even in applications where size isn't a premium, and I guess that is OK, but kind of disappointing.As to why they didn't make a cylindrical symmetric connector like TRS jacks: those are horrible for hot plugging or power delivery as you will short signals together while inserting and removing. That means connecting power pins to data pins or +5V to ground. It is possible to design that to work, but much simpler to go with a keyed connector that only makes contact the right way. Also, the goal was to be A) universal, and B) incompatible with any existing standard. Looking too much like an audio jack or DC barrel jack would have been considered a big disadvantage.

author: coppercone2
author_rank: Super Contributor
timestamp: December 17, 2018, 07:07:56 am
content: i posted the question you are asking me in my original post, it is based solely on the specification or have connector manufacturers learned anything new since the field testing of regular USB for a decade or something that was required for further miniaturization.would they have pulled it off knowing what they knew about connector physics behavior using the engineering methods at the time? or does it require some kind of new methods of finite element analysis etc to do what we have now.i want to know if it was 'my boss told me to do this' or 'we told the boss this is what we can do without serious development research'.based on the answers its based on what the boss thought reasonable not that they had some kind of question that was answered (like in semiconductors they have a ton of questions relating to miniaturization of processes). I don't know much about the behavior of small stampings and plating on deformable surfaces etc. I thought maybe they needed emperical test data and r&d time to make something smaller thats good for these frequencies. And I don't know much about plastics either.like in the 1920's they could match the geometry of modern cutting tools but without knowledge of advanced plating processes like special nitride coatings and thermal analysis they probobly could not solve it easily.. there is some magic to mechanical development in this way where manufacturing processes allow certain directions of thought to seem rational. it would be a los alamos effort vs seeing 'yea we can figure this out with the new solid works and a few experiments'.Did they need to see USB 1.0 work for a decade before they realized it would be reliable to make it smaller? I think thats a very different line of thought then 'there is no point to doing it another way at this time but we certainly can'. I just want to know about the evolution of the 'physical limits' (within mass production) in the connector field. And if there were any other lines of feedback other then specification (politics vs physics/economics).Was it like 'cutting edge stuff' that they did not really know the behavior of exactly when they first made the USB? I notice its much different then most electrical connectors because they use very thin little fingers/tabs/stampings/cuttings instead of the simple cylindrical pin structure thats been much well studied over the last 100 years. And the interface between the solder and the planar tab vs solder and a pin, ( or crimp). Does it tie into the evolution of crimp connectors?Are the behaviors known good enough now that the interface physics are becoming a dead, uninteresting field to a researcher?Kinda like would Subway restaurants be successful without kickass developments in ovens (that thing is a beast).

author: james_s
author_rank: Super Contributor
timestamp: December 18, 2018, 01:52:41 am
content: Why are you so obsessed with smaller connectors? USB connectors were some of the smallest connectors you'd find on any computer equipment of the era, replacing many 25 pin and larger connectors. The standard centronics 50 pin scsi connector makes GPIB look small. The original size A and B connectors are still pretty standard on stuff like printers, optical drives, scanners and 3.5" hard drives. They're much more robust than the mini and micro stuff and easier to handle. They're superior in every way except for portability, so why on earth would they have made smaller USB connectors years before tiny portable devices existed? USB had been around more than a decade before I ever saw it used solely to charge or power a device other than gimmicky lights and fans.

author: coppercone2
author_rank: Super Contributor
timestamp: December 18, 2018, 02:01:57 am
content: i wanna know the engineering process at this point I don't care the politics behind the spec

author: wraper
author_rank: Unknown
timestamp: December 18, 2018, 02:03:33 am
content: Quote from: 001 on December 16, 2018, 12:03:15 pmYou cannot leave exposed contacts. BTW audio jacks have way less reliable connection than USB.

author: coppercone2
author_rank: Super Contributor
timestamp: December 18, 2018, 02:04:57 am
content: its kind of weird because you would think something like an audio jack is bomb proof because its a giant cylinder

author: wraper
author_rank: Unknown
timestamp: December 18, 2018, 02:18:37 am
content: Quote from: coppercone2 on December 18, 2018, 02:04:57 amThe most unreliable part is socket. As of plug it's not that hard to break because metal not that thick under insulation. In addition 3.5 mm jacks are very weak, I've seen a lot of them broken off with plug left inside a phone.

author: james_s
author_rank: Super Contributor
timestamp: December 18, 2018, 05:04:17 am
content: How could the engineering process be any clearer?Desire to design a universal serial interface to replace the hodgepodge of connectors currently in use such as DB25 and DB9 serial and parallel ports, DB15 game ports, SCSI ports, PS/2 kb/mouse, bus mouse, etc while also providing power to the devices. The standard USB connectors were made to be robust and foolproof, easy to manufacture, sturdy, easy to insert and remove, durable enough to handle loads of insert/removal cycles, designed to connect power before data, the USB A and B connectors are what they came up with.Now fast forward 10-15 years, USB is widely adopted, now in addition to scanners, printers, joysticks, zip drives, CD-ROM drives, 3.5" hard drives and other peripherals we start seeing small portable devices like 2.5" hard drives, digital cameras and MP3 players, later PDAs, the crude ancestors of modern tablets. Initially these devices used proprietary miniature connectors but then someone had the bright idea of making a miniaturized USB connector that would be standardized. It sacrifices some mechanical robustness in exchange for small size but that's ok because the devices it's intended for are very small and light weight compared to previous peripherals so it doesn't have to be as strong.Move forward a few years further and we have even smaller, thinner devices. Soon it becomes apparent that an even thinner USB connector would be nice to have for these devices, so now we have micro USB. This further sacrifices mechanical strength in exchange for even smaller size but again this is ok because the devices have gotten even smaller and lighter.There's really no mystery here, needs came along followed by new needs and each time engineers did what engineers do and came up with solutions to those needs.

author: wraper
author_rank: Unknown
timestamp: December 18, 2018, 11:48:57 am
content: Quote from: james_s on December 18, 2018, 05:04:17 amNope, it does not sacrifice anything compared to previous versions. It's more robust than any USB connector version previously made. More mating cycles and mechanically stronger. Micro USB connectors just don't break. Only variants with no through-hole mounting pins are subject for breaking off from PCB (it's the same for previous versions with no through hole and even worse). But even then, it's PCB which gets damaged, not connector. This is connector designed for minimum 10k mating cycles. Smaller does not mean less robust.https://gct.co/usb-connectorQuote

author: coppercone2
author_rank: Super Contributor
timestamp: December 18, 2018, 12:04:40 pm
content: what did they learn to make it better?Is the plastics stronger? are the metals a different alloy? Did they figure out how to make better dies?

author: Mr. Scram
author_rank: Super Contributor
timestamp: December 18, 2018, 12:32:22 pm
content: Quote from: coppercone2 on December 18, 2018, 12:04:40 pmWhat have you done to find the answer yourself, other than asking people about it?

author: coppercone2
author_rank: Super Contributor
timestamp: December 18, 2018, 01:09:21 pm
content: Quote from: Mr. Scram on December 18, 2018, 12:32:22 pmyou should post this in other peoples threads repeatedly

author: james_s
author_rank: Super Contributor
timestamp: December 18, 2018, 06:22:53 pm
content: Quote from: wraper on December 18, 2018, 11:48:57 amBullshit. I've repaired numerous devices that had mini and especially micro USB connectors ripped right off the PCB, and some with the surface mount variety were beyond repair as it tore the traces right off the board. I've had a few cables where the metal end of the connector got snapped off, I've never seen this happen with a fullsized USB connector. If you look only at mating cycles on a datasheet sure, but in the real world cables get tripped on, connectors get smashed up against walls, devices get dropped and knocked off desks. It's just simple physics, a tiny thin connector is going to break a lot more easily than a big thick one if you apply a lateral force. There's a reason things like printers and 3.5" external hard drives still use standard USB connectors, they're much stronger.

author: dmills
author_rank: Super Contributor
timestamp: December 18, 2018, 07:15:00 pm
content: Part of it is probably that nobody at the time would have taken a micro USB connector seriously... I mean printers were usually on 25 pin centronics (about the size of a GPIB connector), usually cabled to a D25 on the PC end, keyboards were 5 pin DIN or mini DIN, mice were D9 serial.The real mystery with USB, is did nobody actually try plugging in a USB-A before standardising the thing? The number of the stupid things I have tried to stuff in upside down over the years (It always seems to take three tries!).Bear in mind that USB was really seen as a sort of more standard (and slightly faster, but filling the same niche) version of the Apple Desktop Bus that used to be the way you plugged keyboards, mice and laserwriters into mackintoshes, portable devices as we now understand them were not even a consideration, and the phones of the time all used gratuitously different connectors anyway.Regards, Dan.

author: Bassman59
author_rank: Super Contributor
timestamp: December 18, 2018, 08:05:30 pm
content: Quote from: coppercone2 on December 18, 2018, 02:04:57 amYou don't spend any time around professional audio set-ups, do you? 1/4" TRS plugs get broken all the time. Sometimes you gotta pull the parts out of the jack with thin needle-nose pliers. Never mind the fact that the "hot" contact on the plug is briefly shorted to ground on insertion and removal.

author: dmills
author_rank: Super Contributor
timestamp: December 18, 2018, 08:11:36 pm
content: Ah, you are talking about the infinitely inferior "A Gauge" audio jack (Fit only for headphones), a proper "B gauge" part in a proper long frame socket is surprisingly reliable (needs occasional cleaning of the normalling contacts, but at least you CAN clean the normalling contacts).Regards, Dan.

author: james_s
author_rank: Super Contributor
timestamp: December 18, 2018, 09:09:59 pm
content: Quote from: dmills on December 18, 2018, 07:15:00 pmIt is slightly less than ideal, if I were designing it from the start I would have given it angled edges like HDMI or some other standardized and distinctive marking or indentation.

author: westfw
author_rank: Super Contributor
timestamp: December 19, 2018, 03:34:21 am
content: QuoteThere is a substantial chance that there is plastic molding and/or other indicators, and/or a different vision of type-A ports, than exists in the current realm of non-official cables and "many" USB ports on a computer...QuoteQuoteSo the vendors claim; I actually talked to one of the big connector vendors at a trade show about this - they claim that one of the big changes is that the spring-loaded part of the connector is now in the (easily replaceable) cable, rather than the PCB-side connector.QuoteThat statement does not match my personal experience. They may resist breakage in exactly the ways that they were intended to resist breakage, but other "system-level" issues seem to come up that have been the death of several (otherwise undamaged) products I've owned. Including some expensive cell phones. The cables break even more frequently, too (apparently usually due to shoddy strain relief, fine wires, and poor soldering/assembly technique.)QuoteUnfortunately, the "no through-hole" versions are by far the most common, and in between the lack of TH, the smaller overall area of the pads, and the thinner PCBs, the "break off of PCB" failure mode is very common :-(

author: wraper
author_rank: Unknown
timestamp: December 19, 2018, 04:18:57 am
content: Quote from: westfw on December 19, 2018, 03:34:21 amDon't forget those connectors and cables experience daily use and abuse which usually does not happen with full size connectors. There are not that many devices which you drop or pull with cable plugged in. USB-A connectors in laptops get damaged just as well, likely even more often.QuoteI repaired thousands of phones in the past. Non TH connectors were used a lot by Nokia. Later they started using mostly connectors with TH pins in symbian smartphones. Those were extremely reliable. I no longer repair phones as my daily job, but phones which I occasionally repaired in the last 5 years used SMT+TH connectors.

author: stratcat
author_rank: Newbie
timestamp: December 19, 2018, 04:28:25 am
content: USB ports are proof that there are 4 dimensions - try to plug, won't go.Turn it over, won't go.Turn it over again, Success!

author: james_s
author_rank: Super Contributor
timestamp: December 19, 2018, 06:06:36 am
content: The micro connectors are ok for phones, because phones are small and light and generally do not exert a great deal of force on the cable. Put a micro USB connector on the back of a 15 pound laser printer and then trip over the cord and I bet it snaps off the plug, rips the connector off the PCB or both. Try the same with a fullsized USB connector and there's a pretty good chance it will spin the printer around and yank the plug out of the socket without damage.The micro and mini connectors are small out of necessity because they're used on small devices, they aren't used on bulky heavy peripherals because they're not as sturdy.

author: Mr. Scram
author_rank: Super Contributor
timestamp: December 19, 2018, 07:34:29 am
content: Quote from: coppercone2 on December 18, 2018, 01:09:21 pmThanks for the advice, but I don't think proper forum form is really your area of expertise. It'd still be good to know what you did to investigate this yourself. What did you find about the history of USB? There's probably a lot of interesting stories you've found you could tell us. Don't tell us you didn't investigate?

author: coppercone2
author_rank: Super Contributor
timestamp: December 19, 2018, 08:02:25 am
content: NOTE: This message has been deleted by the forum moderator Simon for being against the forum rules and/or at the discretion of the moderator as being in the best interests of the forum community and the nature of the thread.If you believe this to be in error, please contact the moderator involved.An optional additional explanation is:

author: wraper
author_rank: Unknown
timestamp: December 19, 2018, 11:45:30 am
content: Quote from: james_s on December 19, 2018, 06:06:36 amReally? USB-B is among the worst ones. Only two mounting legs located closer to the rear side. Very easy to rip off. Actually I've done just that a few days ago on some defective boards I was going to throw out. Plugged cable in and easily ripped off USB-B connectors. And weight of a phone does not matter much when you grab the phone and pull it to yourself.The only variant which is significantly stronger than micro USB with TH is USB A with multiple sockets stacked. Those have 4 mounting legs and are very sturdy. BTW metal thickness of micro USB and full size connectors is about the same. Also one important thing is how connector is surrounded/supported by enclosure. It can add a lot of strength.

author: wraper
author_rank: Unknown
timestamp: December 19, 2018, 11:56:23 am
content: Also how sturdy do you think are these? Simple school level physics about lever which work against such implementations.

author: james_s
author_rank: Super Contributor
timestamp: December 19, 2018, 07:07:05 pm
content: Those PCB mount plugs are pretty bad, but a micro version wouldn't be any better, I don't think they even make PCB mount male micro USB.The fullsized B connectors normally have the far end supported by the opening in the housing it goes through. You may have had one break but I never have. They're bigger and heavier, with large through hole posts. Has anyone else here ever had one break? Can anyone point me to a printer, scanner, 3.5" hard drive or other bulky USB peripheral that has a micro USB port? Anyone?

author: Gyro
author_rank: Super Contributor
timestamp: December 19, 2018, 07:14:31 pm
content: QuoteLoss of retention pressure (contact pressure?) is the only thing I've ever seen with them - insertion gets loose.

author: wraper
author_rank: Unknown
timestamp: December 19, 2018, 10:18:12 pm
content: Quote from: james_s on December 19, 2018, 07:07:05 pmSo do micro USB.QuoteI've seen USB-B broken in a device worth more than $100k. Mounting legs just snapped off.QuoteAs of current year most external HDD, even 3.5" don't have full sized USB port.

author: fsr
author_rank: Regular Contributor
timestamp: December 19, 2018, 11:13:53 pm
content: I remember when USB was appearing on different motherboards, and you looked at the computer stores and there were like no devices to plug there! Mostly mouses, and that's it. Well, at least that's what happened here. A bunch of years ago.And yeah, the rectangular connector of USB is ridiculous, as it's very hard to see in what orientation must the connector go, something that is made still worse, as many connectors are in the back of the PC, and you cannot really look at them very well most of the time.Currently, another problem is that many connectors have similar dimensions. I think that you can probably force a USB A into the wrong socket.

author: james_s
author_rank: Super Contributor
timestamp: December 20, 2018, 01:29:36 am
content: That wasn't really an issue when USB was new though, well the orientation was always trickier than it ought to be although really no worse than the mini-DIN used for keyboards and mice at the time. When USB was a new thing, it was far smaller and a completely different shape from all the other connectors used on computers. It was very distinctive and there was no confusing it.Some of the earliest things I remember using it for besides mice were scanners and printers where it replaced the gigantic Centronics-50 SCSI connector and slightly smaller parallel printer cables.https://goo.gl/images/ShoLVuhttps://goo.gl/images/kGHUXaAt the time it was marvelously tiny, not only the connector but the cable too. The thickest USB cables are less than half the diameter of the thinnest printer and SCSI cables I can recall seeing. And you could connect them to a hub too! It may be hard for younger people to comprehend just what a change it was. Suddenly we went from a bunch of different standards using similar looking but incompatible big bulky connectors and thick cables to one slender cable with a single type of tiny connector for almost everything. Then with things like SCSI you had to set a unique ID on each device, fuss around with terminators and make sacrifices to the computer gods in hopes that it would all actually work.It reminds me of the first time I saw a 2.5" hard drive, it was so small I could hardly believe it held 20MB. It never occurred to me at the time that hard drives could be made yet smaller, and I'd never have believed it possible to fit tends of GB onto a fingernail sized micro SD card as we can today.

author: tooki
author_rank: Super Contributor
timestamp: December 20, 2018, 09:04:36 am
content: Quote from: LapTop006 on December 17, 2018, 05:44:57 amYep. It is FireWire 400, not USB, that was directly inspired by the GameBoy connector. (I don’t think Nintendo ever got enough credit for pioneering that type of pinless connector. Before it, only large plugs like Centronics used anything like that arrangement, where it’s basically a plastic card-edge connector instead of actual pins.)Ultimately, if we were going to invent the USB connector today, we’d do all sorts of things differently: it’d be smaller, reversible, have rounded leading edges to go in more easily, and be designed to stand up to the rough handling in mobile devices.Oh wait, we just did that, it’s called USB-C. (And indeed it’s like a reversible, metal-sheathed mini version of the GameBoy connector.)

author: tooki
author_rank: Super Contributor
timestamp: December 20, 2018, 09:09:27 am
content: Quote from: coppercone2 on December 18, 2018, 02:01:57 amWhat you casually dismiss as “politics” ARE the engineering requirements that drove the spec!

author: coppercone2
author_rank: Super Contributor
timestamp: December 20, 2018, 09:29:54 am
content: I should focus down to the metallurgical interface properties and the dielectric durability or whatever else may effect it. Was some kind of novel thing discovered from the first USB connector between the current connector. From a manufacturing process prospective.All the stuff in this thread is pretty hard but it seems like you don't need to know anything special if you already know about the first USB connector design other then to work out the new mechanics from a structural engineering view point.I don't know how to put this. is there an interesting secret sauce ? process step? materials choice? finishing steps? extra quality checks? more advanced adhesives? something (physics) weird that came up?example: with cables something I considered to qualify for the above criterion is the kevlar fiber reinforced USB cables that are for sale now. They use a special weave method (if you trust the package and its too expensive for me to destroy) to make it more durable. IMO thats a innovation rather then a refinement (but its extremely well hidden unless you advertise it). I don't know if it was just borrowed from another industry or came out because of the portable electronics revolution but its pretty cool. Or magnetic connectors, a whole new fairly complicated mechanical design aspect was introduced to connector manufacturing with the magnetic mate. Or those little crimps (molex I think) that crimp on both the wire and insulation with separate wings.

author: tooki
author_rank: Super Contributor
timestamp: December 20, 2018, 04:57:13 pm
content: Christ on a cracker, man...What produced the modern USB connectors (culminating in USB-C) isn’t magic new materials. It’s simply ordinary engineering done to improve upon the shortcomings of what came before. The number of devices with USB today is probably orders of magnitude larger than all the computers in the world in 1995, and the use cases cover things never anticipated before. At this kind of scale, you discover issues that you wouldn’t have otherwise. And the economies of scale involved mean that you can amortize much more expensive R&D than you could have before, so we could spend more money designing better connectors to improve upon the last. And at this kind of scale, manufacturers can afford the more expensive tooling for higher-precision parts.

author: coppercone2
author_rank: Super Contributor
timestamp: December 20, 2018, 05:12:36 pm
content: what does their R&D process look like?

author: IDEngineer
author_rank: Super Contributor
timestamp: December 20, 2018, 09:08:22 pm
content: Quoteand:QuoteWith these two excellent responses this thread should be done.I will say, though, that as a hardware/firmware/software Engineer USB has definitely suffered from feature creep. The layers and layers of details necessary to properly understand and implement a simple device are a serious PITA for what I suspect are the majority of devices that just need a modest rate data path to/from another device. Used to be you could just include an RS-232C port, with its mind-numbingly simple hardware and software, and you had connectivity to 99% of the world's devices. With USB things aren't so simple anymore, and while it's nice to get power from that single cable it comes at the overhead of drivers and endpoint negotiation and much more - on both ends of the wire. YMMV.

author: westfw
author_rank: Super Contributor
timestamp: December 21, 2018, 04:58:12 am
content: QuoteI'm sorry... ARE YOU OUT OF YOUR MIND???!!!Are you talking about the same +/-12V requiring "rs232" with a multitude of ambiguous, poorly defined, large and expensive connectors that used cables with a randomish number of conductors and signals that were NEVER "right", requiring the average IT person to have a drawer full of "gender changers", "null modems", DE9-to-DB25 adapters, test boxes that allowed you to see and jumper signals as needed, and additional random "improved" higher-density connectors that varied from vendor-to-vendor, that tortured the very souls of many an IT professional for the decades before USB came out?The connector that Certain Major PC manufacturers decided to re-used for a parallel printer port that needed different signals and cables?The specification defined specifically for a MODEM and a TERMINAL or mainframe, that made about as much sense as charging for CPU time in the days of personal computers with peripherals like mice and printers and such? The one spec'ed at 19200bps max speed (over short distances, of course.) With such poor data reliability that there were at least three different common schemes for providing flow control (one of which completely threw away portions of the "specification"?Sure, a UART is conceptually simple. A Serial card was a relatively inexpensive add-on for the original IBM-PC; only 12 chips or so. And if you got one of those newer high-speed modems and wanted to run that new-fangled "windows" OS, they'd ship you a NEW card with a deeper-FIFO UART? (For free, to stop customer complaints that the modems didn't work.) (and custom software, because DOS and/or the PC BIOS had crap support for UARTs.)Nowadays even very cheap microcontrollers come with built-in UART hardware. But that UART will talk to a USB/Serial adapter just as easily as it will talk to rs232 drivers and connectors, probably at lower cost, and certainly at less stress for both the PC user and the device user (and the support personnel.)USB has become a bit cluttered with feature-itis, and maybe some cronyism. But in its original form at only 11Mbps and with the "huge" connectors, it was a pretty brilliant solution to real problems that were plaguing the industry.

author: james_s
author_rank: Super Contributor
timestamp: December 21, 2018, 05:13:14 am
content: USB is only simple because you can think of it as a black box, both from a hardware and software standpoint. A serial port is still simpler though, simple enough that it's easily understood at a very low level. Yes there are a lot of variations but in the most basic setup you only need rx, tx and ground. Whether you're wanting to talk to the console of a modern smartphone or a 1970s mainframe RS232 just works. No drivers, no handshaking, you can put a scope on it and see the bits, decode them by hand if you like. There's a reason that RS232 and the TTL variant are still ubiquitous. You may not find a DB25 or DB9 on the back of a modern PC but chances are there's a serial port in there somewhere, even if it's just some test pads on the PCB.

author: coppercone2
author_rank: Super Contributor
timestamp: December 21, 2018, 05:20:40 am
content: I like rs232 for lab work because i don't want to deal with USB but I think using it for consumer products is kind of a step backwardsmy main interest in it is as a charge port however, since its literary everywhere and its excellent for gadgets. You have like a 20% chance of finding someone on the street with a portable battery if you need it.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 21, 2018, 05:23:27 am
content: Quote from: westfw on December 21, 2018, 04:58:12 amThat's exactly what I meant when I said:Quote...and when I said that RS-232C was "simple", remember it was at its heart a three-wire connection, one of which was ground so really just two wires. Hey, sometimes you had to cross them so TX was connected to RX. But the drivers tolerated misconnection like that, so no harm done. And once it was connected you could be exchanging data in minutes. Meanwhile, have you read the USB 3.0 spec? It's hundreds of pages long, and the "basic" steps just to establish a connection between two logical endpoints is anything but trivial.I like USB. It was a good solution to a real problem of multiple dissimilar connectors, etc. But when I'm slogging through another "standard" USB implementation, I often pine for the simplicity of good ol' serial. Have you tried to work with the USB stack in Android, for example? There's a nasty bug in its logical disconnect routines that cannot be worked around except with aphysicaldisconnect. The bug has been acknowledged by the dev team... it's in the buglist... but in the three years since it was first reported and confirmed, there's been absolutely ZERO work done on it. Sure one could fork your own version of the Android source and fix it (the fix is trivial, literally already documented in the buglist!) but then you're condemned to repeat the fix with every release, for every platform.... Ugh.

author: tooki
author_rank: Super Contributor
timestamp: December 21, 2018, 12:48:57 pm
content: USB vs RS-232 (or any similar serial standard like RS-422 or RS-485) are so different as to be barely comparable.Yes, for an engineer, serial is far easier to work with. But for an end user, it's much, much more complex. And conversely, for a user, serial is a nightmare, but USB is simple. Why? Because in getting things to work, the effort has to come into playsomewherein the process. And when it comes to user-friendliness, the effort comes on the engineering side. (I'm a usability guy, bear in mind.)Suppose we'd created "RS-232 version 10" by now, with better, standardized connectors (so no gender changers, null modem cables, etc.) and modern data rates, but had left the protocol as simple as before (i.e. essentially nonexistent). A user setting up an RS-232v10 audio interface, for example, would have to 1. choose one of the 10 potential ports on the computer (and remember the port number), 2. install a driver (assuming one exists for their OS — and hope it works), and potentially 3. configure the data format on the port. In USB, this all happens automatically.Why? Because the USB standards perform far more layers of abstraction, including foundation specs for all kinds of devices, so that we don't need separate drivers for each model of a type of device. (If we ever manage to crack generic printer drivers, we'll be pretty much done!) It's complex for the engineer so that it's simple for the user. And this is, for anything distantly approaching a mass-market device, unequivocally a good thing.And for stuff like lab gear… well, doesn't it all use USB as a serial port anyway? All the gear I have presents a simple COM port.

author: tooki
author_rank: Super Contributor
timestamp: December 21, 2018, 01:03:56 pm
content: Quote from: IDEngineer on December 20, 2018, 09:08:22 pmQuote from: westfw on December 21, 2018, 04:58:12 amThe "feature creep" of USB is the filling in the gaps of features needed to make many use cases work correctly.Remember, the original USB 1.0/1.1 spec was intended only for low-speed devices like input devices (keyboards, mice, joysticks, etc), basic printers, and random gadgets. It was not intended as a high-speed bus for high-bandwidth or latency-sensitive applications. FireWire was meant to cover those use cases.As it became clear that most computer and device vendors didn't want to support two different buses, Intel created USB 2.0, which adopted many of FireWire's advantages (high data rate, isochronous transfer modes, etc) to allow USB to cover use cases like mass storage and realtime video.All the while, for both USB 1.x and 2.0, the USB consortium worked on creating more and more generic drivers for different devices. People forget that the only things that actually had generic drivers in the beginning were keyboards and mice, and even that was only very basic support (like any kind of media keys, extra mouse buttons, etc). Early USB audio, serial, scanners, disk drives, GPS receivers, webcams, UPSs… all of it needed vendor-specific drivers because therewereno standards. USB Mass Storage, audio, and UPS came first. And progressively we have gotten capable generic drivers for nearly any kind of USB device except printers (and given Apple's example with AirPrint, as well as how PPDs enabled any PostScript-printing-capable OS to properly use any PostScript printer, it seems to me that there's no reason why the USB printing class can't be finally made to actually work without device-specific drivers).So it's not "bloat", it's all things added specifically to eliminate the need for device-specific drivers. (A great example of this at the low level is isochronous transfers, added to make sure that streaming video is guaranteed its required bandwidth with deterministic latency.)

author: james_s
author_rank: Super Contributor
timestamp: December 21, 2018, 05:47:05 pm
content: Quote from: tooki on December 21, 2018, 12:48:57 pmWe are engineers, and thus discussing these things from an engineer's standpoint. Serial is at least an order of magnitude simpler compared to USB. For the end user yes, obviously USB is easier, but that's because it can be viewed as a black box, you just plug it in and it works, that's not the issue here.Now try using a basic microcontroller and bit-banging your communication interface. Anybody who has ever tried to bit bang USB quickly finds out just how complex it really is. Bit banging RS232 is super easy, nothing to it.

author: tooki
author_rank: Super Contributor
timestamp: December 22, 2018, 01:02:54 am
content: Yeah. Gosh, it’s almost as though I addressed this in my rather detailed posts...

author: westfw
author_rank: Super Contributor
timestamp: December 22, 2018, 03:26:22 am
content: Quote from: james_s onYesterdayat 10:13:14 pmHmm. So you never used a serial mouse or more than two uarts on a PC, eh? Drivers required. Separate drivers for deep FIFO UARTs. Interrupt conflicts, and separate drivers for different vendors that handle them differently. Inherent performance issues because it's fundamentally a byte-at-time protocol not well suited toward being handled by DMA/etc. No "msg" or packet modes, leading to added overhead and protocols (drivers) for anything that isn't a single-byte protocol. Thousands of interrupts per second, per port, usually on legacy buses that do horrible things to modern high speed CPUs.Don't confuse "the driver for the limited case that I wanted to use is built-in" with "complex drivers aren't required." I've written async drivers for fancy (and dumb) uarts that support character traffic, SLIP, PPP, and "other" things, and it's really not that much easier than a higher-level IO device. Especially if you want 10+ to 1500ish ports per box...Granted... And those little LED breakouts that I mentioned previously were pretty useful for passive devices...Not that we didn't spend tens of thousands of dollars on rs232 "protocol analyzers" anyway...>Remember, the original USB 1.0/1.1 spec was intended only for low-speed devices like input devices (keyboards, mice, joysticks, etc), basic printers, and random gadgets. It was not intended as a high-speed bus for high-bandwidth or latency-sensitive applications.Even USB 1.0 had "full speed" mode and isochronous transfers. 11Mbps was just "pretty fast" for those days...By bloat in USB, I'm talking about adding a new data speed (needs negotiated!) every version ("full speed", "high speed", "super speed", etc...), power delivery negotiation of various sorts, etc. All needing to be backward compatible. Nice for users, not so nice as clean engineering. Not that you can really separate the "engineering niceness" from the "user usability" (perhaps USB was one of the first IO protocols to recognize that need...)QuoteNo you can't. You can bit-bang the uart part, and you still need external drivers to get rs232 (theoretically, anyway.) I can go to sparkfun, or aliexpress, and the cost of a uart-to-rs232 adapter (including official connector) and a uart-to-usb adapter (with official connector) are about the same. And you can still bit-bang the uart side from your "simple" micro. (Hmm. I wonder why there aren't any GP micros that have a full bridge for fixed USB protocols (HID or UART.) Seems like it would be quite popular with the "doing all the USB stuff is too complicated" crowd...)

author: james_s
author_rank: Super Contributor
timestamp: December 22, 2018, 05:58:17 am
content: Quote from: westfw on December 22, 2018, 03:26:22 am*sigh*Maybe some day I'll learn to remind myself before posting how insanely pedantic some people are here, everything has to be spelled out explicitly right down to the letter, can't infer anything. I'm not even sure if this is because people honestly can't figure it out, or whether they enjoy being deliberately obtuse but it's not something I've encountered in any other kind of forum.Who is talking about mice? Yes for a serial mouse you need a driver, just like for a USB mouse you need a driver, normally it's built into the PC but it's still there. No I don't think I ever used more than two serial ports on a PC back before the days of USB serial, although as I recall it was not too terribly difficult to use up to four. Have you written a mouse driver for both serial and USB at a low level? I'd be seriously shocked if the USB mouse driver is less than 10x the amount of code and that's being very conservative. I have a serial port on my Apple II, I have a serial port on most of my FPGA retro computing platforms. There are serial UARTs built into the 8 bit AVRs I use, the last hardware job I had our products all had serial debug ports built in. It's stil the defacto standard even today because it's dead simple, no fuss, 3 wires, it can connect to anything and just works.And yes I know that RS232 technically specifies the hardware and voltage levels but colloquially it is a term that is often used to describe any "traditional" serial communications, even if the actual levels are simply TTL. You knew what I was talking about didn't you? If I just called it "serial" I suppose someone would ask if I meant USB, or SAS, DSI, or some other nonsense rather than figuring it out from the context.I never thought I'd encounter someone claiming that USB is simpler than plain old serial though. I mean 2 wires and a ground, no handshaking needed, you don't even need to go both ways, if one direction is ok you only need two wires. It's been around since what, the 1960s? It can be built in hardware using jellybean TTL ICs. Try building a USB interface out of TTL ICs and then tell me how much simpler it is. Decap a USB IC and compare the transistor count to an old fashioned UART, I'm betting the difference is greater than an order of magnitude.

author: Siwastaja
author_rank: Super Contributor
timestamp: December 22, 2018, 08:15:09 am
content: Quote from: westfw on December 22, 2018, 03:26:22 amIt's almost like if we replace a slowly evolved bunch of incompatible things, designed for small niche market of computing back then, with a clean-sheet design that's designed grounds-up exactly to support keyboards, mice, etc., with massive design budget due to it being designed for markets orders of magnitudes bigger, it tends to work for those specific purposes it's designed for; even if it's internally more complex. If it didn't, it wouldn't fly.It's almost if the software has evolved to implement complex automatic operations of probing devices, and installing drivers automatically; despite the lower level being much more complex. It's almost if this has something to do with computers becoming mass market consumer devices, and having excess CPU and RAM to write more complex software.Yet, a funny anecdote: when I needed to install Windows on my machine which has no issues whatsoever running Linux, my mouse didn't work with Windows 7 installer. Third mouse I tried worked, so I was able to install Windows, and download and install a driver manually, to make a freaking USB mouse work on Windows 7.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 22, 2018, 07:24:16 pm
content: My bottom line: USB has grown so far past its original intentions that there is also a need for a much simpler serial interface to fill the role for which USB was originally intended. For example, SPI or I2C could provide a modest performance, easy-to-implement serial comm standard that would cover perhaps 75% of the connections now using USB. I2C accommodates addressing multiple devices on shared serial data lines, and SPI can support data rates of 1MHz (easily) and up to 10MHz (with good cabling). Both of these can be implemented by bit-banging at the lowest level, and are incorporated as on-chip peripherals in a huge number of MCU's for midrange cost and performance.Let USB3+ handle the high data rates, and use a standardized connector for an SPI or I2C lower speed "bus", and you've got the vast majority of usage cases covered with R&D and production costs that scale with required performance.

author: james_s
author_rank: Super Contributor
timestamp: December 22, 2018, 11:46:11 pm
content: Is there any case not to just stick with RS232 or the TTL equivalent for applications where you need a really basic low level solution and use USB for everything else? I mean USB does work quite well, and treated as a black box it is simple despite the underlying complexity. I don't really see a need for yet another standard to fill that gap. USB 1.0 is still around.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 23, 2018, 02:33:01 am
content: Quote from: james_s on December 22, 2018, 11:46:11 pmRS-232C (at any voltage level) generally maxed out around 115Kbps. Still fast enough for many applications these days, but I was giving the nod to a couple of more modern standards (SPI and I2C) if only because they are newer and support faster data rates and multiple devices on the bus whereas RS-232C is point to point only. SPI and/or I2C would give you reasonable data rates, multiple devices, and ultra-simple implementation; they'd be worthy successors to the old COM1/COM2 type connections for anything that doesn't require USB's fastest data rates or implementation complexity.

author: james_s
author_rank: Super Contributor
timestamp: December 23, 2018, 06:01:57 am
content: Some of the more modern RS232 UARTs can go up beyond 1Mbps, traditional serial based peripherals never got that fast but that's only because such peripherals stopped being developed for the most part well over a decade ago. There's nothing fundamentally limiting the standard to such low speeds, they are just what is supported by legacy peripherals.

author: westfw
author_rank: Super Contributor
timestamp: December 23, 2018, 09:44:49 am
content: QuoteI mentioned "performance issues" and the difficulties with "substantial" numbers of serial ports on the host...Y'all are not realizing just how horrible host-side UARTs can be. (Sure, you can use USB/Serial on the host side, and it's a little better. Do you consider that "USB" or "RS232"? I guess "host-side" USB on a microcontroller is equally problematic, making non-USB protocols more desirable for micro-to-micro communications.QuoteI'm not sure I understand the desire to "bit bang." It used to be that a $4 microcontroller (Q1 from hobbyist sources) like the PIC16F84 could bit-bang a UART. Good, I guess. It's been a long time since a $4 micro hasn't included UART hardware, and more recently it will come with a full-speed 6-endpoint USB peripheral controller (and a software library that makes that somewhat easier to use.)(and of course, bit-banging more than one port at a time gets problematic.)QuoteYeah, I think I did, back in the DOS days. More "library" than "driver", since DOS didn't do interrupts for COM ports, each program that wanted to do anything "moderately real" with the UARTs had to diddle the vectors and handle the interrupt itself. (I wrote "several" terminal emulators and related programs - Almost made me rich and famous (perhaps.)) Programs in general were tiny in those days. One of the "requirements" for the most complex of the com programs I wrote was that it run off of a single 360k floppy, including the extensive help text... (The basic H19 terminal emulation code with built-in serial driver was... about 700 lines of x86 assembly language, including comments.)

author: Buriedcode
author_rank: Super Contributor
timestamp: December 23, 2018, 04:09:25 pm
content: Quote from: IDEngineer on December 21, 2018, 05:23:27 amSurely that is an Android bug, rather than a problem with the USB spec itself ? And lets face it, Android is bloated. For most versions on modern devices its 6 gig. That is 50% larger than a full windows 10 installation. Android development is a complete mess, it has to be said, and is an order of magnitude slower than it should be.As for USB connectors/spec. It seems there's quite a few complaining about "poor reliability". In my experience I have found the opposite - extremely reliable. Sure, I have repaired equipment with USB faults.. these are almost always: 1) a failed USB A socket after > 4 years. 2) A failed USB B socket after >4 years. 3) USB mini B socket SMT torn off the board.1) and 2) are just wear and tear, these devices must have had 20 insertions a day for years. Also remember the entire mechanical stress is on the connector and PCB, as they rarely have any panel mounting. In these instances, the TH mountings seem to be doing a fine job, but are bound to fail at some point (like literally everything every created).3) seems to be what the OP is complaining about. I have only seen a couple of broken USB mini B sockets, where the internal piece of plastic has snapped, but I have seen quite a few torn off the PCB - which is understandable as the whole mechanical stress is on the glue that holds the copper to the FR4 substrate. This isn't really a USB spec problem - it is because the PCB takes all the stress, the connector itself is pretty sturdy and rarely breaks. This is the same foranySMT connector with relatively small mounting pads that takes a cable-mounted plugit is going to get pulled and yanked.Now, coppercone, I have read a few posts where you have complained about the weakness of some parts, or that modern devices have "snap together" enclosures and you have almost destroyed them taking them apart. Whilst we can all agree that USB mini B SMT is probably the most prone to breakage - maybe its just you have a heavy hand with things? If you're regularly breaking connectors, tearing things off PCB's, cracking laptop cases, and snapping plastic, you might want to evaluate how much force you're using.Nothing is completely bullet-proof, everything is designed and manufactured to a price point. The USB spec, IMO has been pretty damn good, and "just works". We only remember when things go wrong, not the countless times it does its job. This is the same for the polarity of USB plugs - people seem to forget all the times they get it right first time, leading them to believe they always have to turn it around. It's all well and good complaining that its unreliable, and doesn't work for you, but I fear you are in the tiny minority here.I'm not suggesting everything is perfect, nothing is, but as far as I'm concerned, it is a fine example of engineering, and serves us well.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 23, 2018, 04:20:01 pm
content: Quote from: Buriedcode on December 23, 2018, 04:09:25 pmYes, and I said as much in the portion of my post that you quoted above. My point was not to suggest that this was a problem in the USB spec per se, but instead as further evidence that the USB spec has become so complex and convoluted that even a mainstream operating system can have difficulty properly implementing it. Meanwhile, things like SPI and I2C and UART-style serial are fast, easy, and straightforward to implement and (at least in the former two cases) have sufficient bandwidth and multi-device addressability to cover the vast majority of all but the highest bandwidth devices out there. Why overcomplicate a solution unnecessarily?

author: james_s
author_rank: Super Contributor
timestamp: December 23, 2018, 06:43:03 pm
content: Quote from: westfw on December 23, 2018, 09:44:49 amBut none of this reflects the underlying complexity, it is simply skirting around it. No sane person can argue that USB is simpler than RS232, it's just not. The hardware contains orders of magnitude more transistors, the software is hugely more complex, there is a bunch of handshaking required just to detect the device and initialize it before you even start to exchange data. It's far more complex.Yes it can be simple from a user standpoint, a lot of this complexity is handled by "black box" hardware that you don't really need to deal with internally and existing software infrastructure, that doesn't mean the complexity isn't there.I don't normally bit bang serial, there's no need to, as you say most microcontrollers contain a UART, but this is the pedantic thing again that I mentioned earlier. The point, since you seem unable or unwilling to extrapolate it from my statement is that the fact that it's simple to bit bang serial illustrates that serial (RS232 or TTL) is inherently simple, the hardware is simple, the communication is simple, there is no overhead, it can be built with 50 year old technology.Yes you can get microcontrollers with built in USB, although I've tried using PIC, AVR and ARM types with it and my success under the best of circumstances has been about 10%, the ARM I couldn't get it to work at all, the PIC and AVR both worked but were flaky, was it firmware, hardware, software on the PC side? Who knows, I don't have a way of analyzing the USB data at a low level so I was flying blind. Serial on the other hand is trivial, I can scope it and see exactly what's going on. Simple. Not necessarily superior, but simple.I'm not sure why I bother to reply though, I have no doubt you will pick apart grammatical details, ignore or miss the main points and go off on irrelevant tangents.

author: westfw
author_rank: Super Contributor
timestamp: December 24, 2018, 04:19:06 am
content: I'm just trying to insist that people recognize that the simplicity of "rs232" comes with a pretty substantial cost. At one "cpu involvement" per millisecond, USB gets you something like 512kbps, a UART gets you about 10kbps, and bit-banging gets you about 1kbps. All those settings and things that "USB Complexity" adds, you now have to be sure to do correctly, manually.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 24, 2018, 06:23:51 am
content: Keep in mind that nobody is bit-banging USB. By definition, USB requires dedicated hardware (at least a peripheral in an MCU). So it's simply not realistic to claim that USB is simpler on the hardware side than SPI, I2C, or good ol' "serial". To make the comparison fair the latter options get to have dedicated hardware too, and the moment that's true you're left with protocol implementation - which nobody can legitimately claim is "easier" with USB.To sum up: Spec-compliant USB cannot be implemented without dedicated hardware, so if you want a simple HARDWARE serial interface USB is off the list while "traditional" serial, SPI, and I2C are all very viable candidates. If you level the hardware playing field and allow everyone to have dedicated hardware, USB loses the simplicity argument again because of all the handshaking mentioned several times in this thread. In contrast, you can implement a simple serial/SPI/I2C protocol in a few hours, and a multi-device protocol using network addressing in a bit longer, on any of the simpler standards.USB is awesome for the correct application. But it's grown far past its original intention. It's become the serial equivalent of spaghetti code - started off with one set of requirements, and has had so many new features cobbled onto it while demanding backwards compatibility that it's lost the whole point of its conception. That's why I believe there's a need, AND room in the industry, for a simpler standard and we have lots of good ones to choose from. I can tell you this... the next clean-sheet design I do that doesn't require full USB bandwidth I will push hard for SPI or I2C as its serial interface for all of the above reasons.

author: digsys
author_rank: Unknown
timestamp: December 24, 2018, 08:28:06 am
content: If you use your imagination, RS232 can be quite awesome ! 15-18 yrs ago I was running RS232 at 4Mb, multidrop, on a 2MIPS 680X MPU ... very little CPUoverhead ... I used external COM chips, cranked up, fiber drivers with tristate buffers and MOST importantly - FIFO buffers with trigger latches.All the CPU had to do was fill it's FIFO, and hit start ... the receivers would wait for a "data full" interrupt, usually a time-out timer etc then load in from the FIFO.It didn't even matter if a new block had started coming in while I was processing the first one. Headers, data# length, CSMs took care of that.It's not rocket science :-) I have done many 100s high speed RS232 networks over the years ... FIFOs rule !! :-)

author: Siwastaja
author_rank: Super Contributor
timestamp: December 24, 2018, 08:29:37 am
content: Quote from: westfw on December 24, 2018, 04:19:06 amIt's completely normal to have an UART peripheral with a FIFO and DMA connectivity, and a driver layer that handles the DMA transfers, and this can provide even lower CPU than USB due to less housekeeping activities. And, it's still orders of magnitude simpler than the USB stack - at least when the asynchronous separate rx&tx byte streams with no HW packet delimiting is what you want...The issue there isn't strictly technical. It's just that exactlydue to the low-level simplicity, UARTs have the history of being used in various ad-hoc ways, everybody implementing their own software layers (often minimal, for the specific task) and their own connectors, their own signaling levels (compare RS232, TTL, 5V or 3V3 CMOS, optocoupled MIDI...)OTOH, USB is ground-up designed for connecting all imaginable (and non-imaginable, by extending the standard later) PC peripherals to a PC, and do this invisibly to theconsumer end user.This is not even apples to oranges; this is apples to space shuttles. The things are so vastly different that when you compare one specific case (such as connecting a mouse), you always leave other people unsatisfied, and the argument can easily go on.

author: westfw
author_rank: Super Contributor
timestamp: December 24, 2018, 09:02:35 am
content: QuoteI guess it depends on what you want to talk to as well. Most of my "rs232 is horrible" comments apply mostly to the "host" or PC side.Personally, I wish Ethernet had ended up being used for a lot of the applications currently served by USB. Between Ethernet and various IP protocols, I think a lot of the same capabilities are present, and the IP world (IETF, I guess) seems to have managed to define a lot of things in much more "straight-forward" ways (and less proprietary.)QuoteDoesn't sound "simple" any more, though. :-)

author: digsys
author_rank: Unknown
timestamp: December 24, 2018, 09:13:04 am
content: Quote from: westfwAhhhh but back then, the newest / best external comms chips only had 64-256 byte buffers, and 1Mb ish For MOST applications that was often well enough,so it just bolted on to your MPU, usually in expanded bus mode. BUT if you had very large data streams, and/or high traffic, you needed to "roll" your own.Usually the "extra" pcb was a standard add-on, often I'd make it part of the RS232 connector IF. Even in vehicles, I prefer this method to the DREADED CAN bus !!People "bitch" about USB :-) ... CAN is a worse asswipe :-)

author: soldar
author_rank: Super Contributor
timestamp: December 24, 2018, 01:12:25 pm
content: Quote from: tooki on December 20, 2018, 04:57:13 pmYup. Evolution. Everything we have today is the product of a long evolution of conditions and possibilities. And this includes cultural and sociological conditions. Fifty years ago people expected things to be sturdy and long lasting. Even if possible, giving them tiny, flimsy connectors would result in complaints about how flimsy they are, how difficult to plug in, and how expensive. I have known people who would wreck USB connectors because they just could not get it into their heads that you cannot just jam in crookedly but with great force. The metal contacts on the mobo connector would bend and that would be the end of that USB port.But also, the technology just wasn't there yet. Look at any consumer product from around 1950 and it looks incredibly crude with wiring harnesses and *humongous* connectors. That is what was technically and economically feasible at the time. Twenty five years later they were using printed circuit boards that were, by today's standards, also very crude. Today's PCB is the product of a very long evolution of the initial PCBs. Many tiny incremental steps which add up. Along the way many things have been tried which have been superseded or discarded. That is how evolution works.Asking why they didn't start out making USB-C connectors in the first place misses the historical picture. USB was an improvement over what there was at the time and that was all that was needed. And many other good improvements fell by the wayside. that is how evolution works. Sometimes it is not the best product technically speaking that wins out but others that, for various other reasons, won out.The ability to manufacture miniaturized connectors, switches, etc, has improved steadily over the decades. Especially the ability to manufacture them economically. It is not like it was always there. and the demand wasn't there either.Look at any mains power plug of any kind, be it Schuko, Nema or British. They are all bulky and wrong on so many levels but they were designed in their time with the demands and possibilities of those times. Today they remain because changing would be too costly. If we had to design a mains power plug today it would be nothing like what we are using.

author: coppercone2
author_rank: Super Contributor
timestamp: December 24, 2018, 01:21:21 pm
content: what would it look like? the mains plug

author: fsr
author_rank: Regular Contributor
timestamp: December 24, 2018, 02:44:47 pm
content: They're just different interfaces. At the beginning, when a serial interface was needed for the PC, they weren't going to reinvent the wheel, they slapped an existing telecommunications serial interface there and that's it. It worked, and fulfilled the requirements of that era.RS-232 simplicity, reliability, noise immunity and cable lengths has made it survive even today. I work for a company that makes software for blood banks and laboratories, and almost all blood analyzers have an RS-232 interface. We make the cables to connect the equipments as an added service, and let me tell you that some of the manuals seem to be written by people that doesn't understands the interface. Fortunately, the port on the equipment is on a PC that is part of it anyways, so that the cable is a DTE to DTE crossover. And most of the time you see some doubtful decisions, that were maybe taken to avoid trouble with people that can't configure them correctly, because it's common to see suggested connection diagrams of cables with the control signals looped-back at each end, which defeats their purpose. We just build them with the control signals intact and require that both sides have the same flow control configured.But for the PC, an automatic, fool-proof, very high speed interface like USB makes a lot of sense. It leaves something to be desired about cable length, and often it's hard to see which way the conector must go (specially with connectors that are black on the inside), but that's pretty much it.

author: Buriedcode
author_rank: Super Contributor
timestamp: December 24, 2018, 03:08:36 pm
content: Quote from: IDEngineer on December 24, 2018, 06:23:51 amI'm unsure I get your point. Are you suggesting that there should be another standard, that uses SPI/I2C along with power delivery, with a new phy layer (new connectors, sockets, cable spec etc..) just to make your life easier when implementing peripheral devices? I can't say I have written a driver for a USB device, but I have designed several USB devices and it was of course much more difficult that using a UART or SPI peripheral.. but it made life significantly easier for theconsumer.As Siwastaja mentioned, USB is forend-userswho don't care how the bits fly, how things enumerate, or how you got your knickers in a twist trying to get an ARM's USB peripheral to behave. I'll admit, simplicity is better, but there is inevitable complexity when trying to create aUniversal(as in catering for many different types of devices)Serial(using only 4 wires)BusSo we can connect multiple devices to the same host.Comparing it to RS232, or even standards meant for chip-chip comms just seems silly. We're all electronic engineers here, so which standard to use matters to us more than any other demographic (we design devices), but it really does seem like you don't like the modern USB spec because you've had difficulties implementing it. I strongly suspect that if you did create your own standard, and it was adopted, it would quickly grow in complexity to allow for more situations, beyond what you originally intended (it has to, otherwise it won't survive). I still can't believe someone actually compared USB to SPI/I2C.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 24, 2018, 04:08:39 pm
content: Quote from: Buriedcode on December 24, 2018, 03:08:36 pmI've implemented quite a few USB devices, host and device, which is precisely what has yielded my informed opinion on the topic. I understand your comments, but disagree that a "simple serial" standard would automatically endure feature creep. We ALREADY have USB for the higher order functions. The whole point of this subthread is to backfill the void at the low end left when USB grew into the spaghetti monster it's become.To extrapolate, your argument is like saying that since we have Intel i9 processors available, there's no need for PIC microcontrollers... the i9 can do it all! Sure, that's true, but it doesn't mean the i9 is always and everywhere the best or most optimal answer. Sometimes an i9 would be massive overkill, all of the overhead required to implement an i9-based system being far too much for a simple application. The same is true for USB vs. "simple serial" communications.

author: soldar
author_rank: Super Contributor
timestamp: December 24, 2018, 04:57:39 pm
content: Um, guys? The topic of this thread is the evolution of the USB connector. Not about how the USB protocol compares with the cost of tea in China during the monsoon season. Can we get it back on track? Please?

author: Buriedcode
author_rank: Super Contributor
timestamp: December 24, 2018, 07:02:25 pm
content: Quote from: IDEngineer on December 24, 2018, 04:08:39 pmI see your point, but I think you've got the wrong end of the stick here. No-one is suggesting we replace SPI/I2C or RS232 with USB, or that simpler protocols shouldn't be used, I'm not sure where you got the idea from and I don't know where to start to point out whats wrong with comparing the two, they occupy different roles. I have never used USB for IC-IC communication... in fact I can't think of any instance where one would have to choose between using USB or SPI, since they serve different purposes. Simpler protocols serve their purpose, no-one is claiming otherwise.I replied specifically to your post because it "seemed" like you were claiming USB has got a lot of feature creep and that simpler protocols are the answer. Yes, it has had a lot of features added, because of pressure from consumers and the specs success as a form of universal connectivity and power delivery. I2C and SPI and any other simpler protocol has no such pressures, because the only people who care about them are engineers who use (and abuse) the very loose spec to their advantage. I still stand by the statement that if you create a simplerconsumerstandard, it would grow in complexity if consumers adopted it and required more from it. But it seems you want such a standard purely to make your life as an engineer simpler - I'm sure many of us would love USB to be super simple, but we're engineers, its our job to develop things to customer requirements.Quote from: soldar on December 24, 2018, 04:57:39 pmYeah I am helping derail this thread. Apologies. As for the connector... as I mentioned in my previous post, I think it works rather well! I think either the OP has had devices with cheap (as in VERY cheap) connectors, or likes to use brute force with everything. With the battering my USB hub gets I'm amazed these things last years - and even if they don't, hubs are so cheap its worth it just for the life of the sockets. I don't have much experience with USB C yet, but time will tell.

author: IDEngineer
author_rank: Super Contributor
timestamp: December 24, 2018, 07:18:23 pm
content: Quote from: Buriedcode on December 24, 2018, 07:02:25 pmI'm not talking about intra-PCB communications. I'm specifically referring to inter-PRODUCT communications over short distances. I2C is already used in this manner in quite a few applications. I have to admit, I was surprised by that at first, since like you I viewed SPI and I2C as inter-chip and intra-PCB comm schemes. But over the last couple of years I've run into dozens of products (remote sensors especially) that are tied back to the host machine using SPI and especially I2C using many feet of cabling between discrete enclosures (a host and some remote device). In other words, basically exactly the physical interconnection mechanisms commonly used for USB.I presume these manufacturers arrived at the same conclusion I have: USB is great, but overkill for many situations, so do something better suited to the task at hand. I'll have to revise my earlier comments and say that what I'd like to see is a FORMAL adoption/recognition of what appears to already be an informal standard of using SPI and I2C for short distance, lower bandwidth communication. In particular, aconnectorstandard would go a long way to making this a recognized option in an Engineer's spectrum of solutions.Anyway, I too apologize for my part in somewhat hijacking this thread. However, I do feel this issue deserves discussion. Perhaps its own thread would be justified?

author: westfw
author_rank: Super Contributor
timestamp: December 24, 2018, 09:32:42 pm
content: QuoteHave you read the "Async PPP" specification(s)? :-( X/Y/Zmodem/Kermit? AX.25?IIRC, some of the current video connection standards include an I2C interface:https://hackaday.com/2014/06/18/i2c-from-your-vga-port/And the SD card reader should be able to do SPI.Good luck with drivers, though.(and getting back somewhat to the original topic: What are you going to use for connectors?)BTW, speaking of feature-creep: I2C and SPI are not immune, either, especially WRT ever-increasing clock-rates. The chip I've been looking closely at most recently supports 3.4MHz I2C, but only SOME of the pins connected to I2C controllers actually manage to fully support the electrical side of the spec.

author: Siwastaja
author_rank: Super Contributor
timestamp: December 25, 2018, 08:53:15 am
content: Quote from: westfw on December 24, 2018, 09:32:42 pmI2C is interesting. For what it is, it's a massively overengineered piece of feature creep. It's just that absolutely no one uses all those features! People use I2C for simplicity, and if you are requiring 3.4Mbit/s communication, complex multi-master modes etc., you are probably using the wrong thing. Most people understand this and won't use I2C for those tasks, even if it, theoretically,couldsupport it. Yet we as designers are exposed to stupid details originating from the I2C complexity no one uses. For example, configuring an STM32 I2C peripheral requires understanding of the existence of Multi-Master mode, and configuring things properly, otherwise the standard case (one master) won't just work.Quote from: soldarI'm 100% positive that if someone still has something to say about the connector evolution, they'll speak up just fine, thanks for your consideration! In the meantime, since there is no way to force people discuss about something, what you are going to do? While you always could forbid discussion (silencing the thread, burying it), that's usually a very bad idea, as long as the discussion has merit in itself, and stays civil. That's how real discussions with real people work, after all. Unnecessary self-sensorship sucks.

author: IDEngineer
author_rank: Super Contributor
timestamp: January 03, 2019, 03:30:46 am
content: Since this thread may be searched by others in the future asking about I2C, here are some links related to long-distance I2C:*http://www.nxp.com/docs/en/application-note/AN11075.pdf("Driving I2C-bus signals over twisted pair cables with PCA9605")*http://www.ti.com/lit/ds/symlink/p82b715.pdf(TI's version of the same thing)*http://hackaday.com/2017/02/08/taking-the-leap-off-board-an-introduction-to-i2c-over-long-wires*https://www.i2cchip.com/i2c_connector.html...and the Stack Exchange article where I encountered them:*https://electronics.stackexchange.com/questions/47056/is-there-any-definitive-i2c-pin-out-guidance-out-there-not-looking-for-a-standThere's a LOT more in a Google search about I2C over long wires, but the above links will give you a very helpful start. Now all we need is a standardized connector... and in some of these links there psuedo-standards being used by lots of people, including recommended pinouts that take power supply reversal, etc. into consideration.Support IC's... app notes... a groundswell of companies already using I2C for long wires... I think we're closer to asimpleserial standard than some folks might believe!

author: westfw
author_rank: Super Contributor
timestamp: January 03, 2019, 09:49:50 am
content: Thanks for posting this info. I'm still going to be curmudgeonly, though!Quote"Support ICs." (heh. The TI and NXP chips don't seem to be compatible. NXP uses a pair for each signal, TI a single wire.)"No standard connector."Assorted uC's that I keep seeing "having trouble getting I2C to work right" messages...Other uC's that "Support I2C on any SERCOM/UniversalSerial/etc port, except the ones that don't quite meet the electrical specs."Address conflicts and limitations.Are you sure that this will wind up simpler than USB? I mean, it wasn't an inherent weakness of the UART protocols that made RS232 such a PITA in practice, it was the lack of ... formalization of all of the "other stuff" needed to communicate. And perhaps it is that USB *has* formalized a bunch of that stuff that makes it so (apparently) complex.

author: IDEngineer
author_rank: Super Contributor
timestamp: January 03, 2019, 07:32:28 pm
content: Quote from: westfw on January 03, 2019, 09:49:50 amTrue. But I've since been made aware that Linear (now Analog Devices) also has an entry in this I2C extension contest. (It drives twisted pair for sure, might work single ended too.) When not one, not two, but THREE of the big chip houses are pushing out products in a given category, that tells me there's serious interest and money looking for solutions. It's early yet, kinda like the early days of IC opamps. Eventually, like opamps, if there's enough of a market, pinouts and specs will settle into compatibility.QuoteAgreed. That needs to be resolved. There are a few popular choices but hopefully a clear winner will emerge. I kind of like the 6-pin version of the RJ-11/RJ-45... well known and understood, cheap and reliable, termination tools are commonplace (just a different jaw set), can carry power+ground+two twisted pairs, yet different from Ethernet's RJ-45 8-pin connector (though the I2C plug can be inserted into the Ethernet socket).QuoteHeck, I still see "having trouble getting UART to work right" messages! I suspect a lot of those are more about the person writing the complaint than the underlying hardware. That seems to be how most of those threads finish up IMHO.QuoteMy career predates USB so I've watched the entire scenario play out, from "RS-232 is all we have" to "we'll use PS/2 and mini-DIN connectors for keyboards and mice" to "let's use USB for everything".During the rampup of the personal computer era I was Project Engineer at the largest keyboard manufacturer in the world so I was literally in the middle of all this stuff. What precipitated the push for USB, at least from our customers (literally every single PC "clone" manufacturer you *ever* heard of), was the desire to 1) reduce the number and variety of connectors coming off the motherboard, and 2) reduce the number of Customer Service phone calls. In the early days you had standard-sized DIN connectors for the keyboard (as defined by IBM's original PC), DB-9F's for serial, DB-9M's for video, DB-25's for parallel, etc. It was expensive to include all those connectors. Then IBM defined the second phase with the mini-DIN's for keyboard and mouse; that was great except that the connectors were only different by COLOR and lots of customers got them backwards, driving up Customer Service phone calls.USB was meant to solve those problems: A single connector type, with a bus topology, so anything could be plugged into any available connector. Now PC manufacturers could reduce the number of connectors to perhaps three (supporting keyboard, mouse, and one expansion port that could support a hub if necessary). And these connectors were small, and FLAT (round connectors are a PITA on things like laptop motherboards). Great in concept. Max speed of 11Mbps(?) was ridiculously high for its intended use, being two orders of magnitude faster than what it was replacing. There were (and are!) some problems with low quality drivers that, once installed, would only recognize peripherals if they were always plugged into the same physical USB connector, but overall USB delivered what the industry had been looking for.But since then, USB has been spaghetti-coded into a mess as discussed in this thread. Instead of a simple serial connection scheme, it's now trying to be everything to everyone while maintaining reverse compatibility with all the legacy devices out there. We want it to work with slow devices, but we also want it to work with the fastest devices. We want it to be a source of charging power (or even operational power, measuring in several amperes!). And we're trying to mash all of those new desires onto an existing spec and infrastructure and installed base. That very often doesn't work out well, as anyone who's failed to get a USB1/2 device to work in a USB3.0 port knows all too painfully. And as more laptops (in particular) stop including the older USB ports in favor of all-3.0+ style, reports of "my peripherals don't work with my new computer!" are becoming more common. All of this is because a well conceived, well designed, and successful serial standard has been shoehorned into becoming something it was never intended to be. How often does that really work out well?Fortunately, the industry appears to be realizing this. So far it's an informal effort, but with at least three IC manufacturers investing in it I suspect it has legs. It cannot arrive fast enough IMHO.