| Electronics > Projects, Designs, and Technical Stuff |
| Evolution of usb connector? |
| << < (13/18) > >> |
| james_s:
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. |
| IDEngineer:
--- Quote from: james_s on December 22, 2018, 11:46:11 pm ---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.... --- End quote --- RS-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. |
| james_s:
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. |
| westfw:
--- Quote ---Is there any case not to just stick with RS232 or the TTL equivalent --- End quote --- I 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. --- Quote ---can be implemented by bit-banging --- End quote --- I'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.) --- Quote ---Have you written a mouse driver for both serial and USB at a low level? --- End quote --- Yeah, 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.) |
| Buriedcode:
--- Quote from: IDEngineer on December 21, 2018, 05:23:27 am ---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 a physical disconnect. 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. --- End quote --- Surely 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 for any SMT connector with relatively small mounting pads that takes a cable-mounted plug it 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. |
| Navigation |
| Message Index |
| Next page |
| Previous page |