Long ago, computers had a 9- or 25-pin RS-232 serial port on the back for interfacing with external peripherals. These ports operated on a different signaling voltage from the rest of the digital systems surrounding them (typically bipolar +/-3V to +/-15V), which made them challenging to interface with and didn't supply power to the peripheral to which they were connected. However, they were easy to communicate over from a software standpoint, and their ubiquity made them a mainstay of hardware hacking.
In the late '90s, USB began to overtake serial as the preferred external expansion bus for desktop and portable computers. USB has a number of advantages over serial: it supplies power to the attached peripheral, can be expanded via hubs, uses a more standard 3.3V signaling voltage and offers a much lower-profile connector. The main disadvantage from our hardware hacking point of view is that they require substantial driver development in order to interface PC software with USB hardware.
To get around this, one commonly uses a USB to serial, or USB-serial, bridge. This is a small device that emulates the software interface of a serial port via standard drivers and allows the user to treat the USB device as though it were a standard serial port. Additionally, the USB-serial bridge uses logic level (1.8V--5V) signaling voltages rather than the bipolar voltage typically associated with RS-232 ports.
SparkFun offers a number of options for USB-serial bridging. We'll discuss the pros and cons of each one, so you can make an informed decision on which product best suits your needs.
The gold standard of USB-serial bridge products is the FTDI Basic. This was SparkFun's first offering in the custom bridge arena, and remains one of our more popular products to this day. Available in both 5V and 3.3V versions, the FTDI Basic uses the venerable FT232RL chip, one of the first all-in-one USB-serial solutions. It can be used to program many types of Arduino boards, such as the Pro, Pro Mini, and LilyPad boards.
The Beefy 3 is an update to the FTDI Basic. In roughly the same form factor, it provides up to 500mA of current at 3.3V, solving the problem of the 3.3V version of the FTDI Basic. It also updates the chip on the board to the more modern FT231X.
Another relatively recent addition to the family, the SmartBasic, attempts to solve a common problem: how do you program an Arduino device and use the Arduino's serial port to communicate with another device at the same time? This is most commonly encountered when trying to communicate with an RF transceiver, such as one of our Bluetooth Mate devices. While it is possible to use a software serial port for the secondary device, that leaves much to be desired --- requiring substantial processing overhead, providing limited baud rate and occasionally missing or garbling characters. The SmartBasic overcomes this by providing a switch between its onboard FTDI chip and the secondary device. This switch is controlled by a single pin from the programmed part, allowing your application to switch at will between communicating with the secondary device and sending data back to your programming computer for debugging. Programming remains unaffected, removing the need to manually exchange the programming cable for the secondary device.
Up until this point, all of our boards have been based on silicon from FTDI. While FTDI make good products, it can be vexing to rely on a sole supplier. A couple of years ago, FTDI made a change to their driver software that disabled non-FTDI chips that were using the FTDI driver, as a response to rampant counterfeiting. The problem with that was that many people with counterfeit chips were innocent victims, suddenly without access to their hardware. As a response to this single-source issue, we began production of this board, which uses a chip from Cypress Semiconductor. Identical in form and function to the FT232 part, the CY7C65213 part offers a valid second source for your USB-serial bridge needs.
A true breakout board, the FT231X Breakout provides access to all the pins on the FT231X chip. It also provides the standard programming header that other boards in this post do, albeit without headers soldered on. It defaults to 5V; like the original FTDI Basic, when it's in 3.3V mode it can't supply enough power to the target to run it, and the target must be externally powered.
The newest addition to the family, the Serial Basic, uses a chip from WCH that is markedly less expensive than the existing solutions. In keeping with the advance of technology, it ships set up to supply and communicate over 3.3V, but it can be easily changed to work with 5V systems.
A simple breakout for the FT232 chip, this board pulls out all of the signals available on the FT232 part. It also has a switch to select between 5V and 3.3V operation. It does not, however, have the standard six-pin header interface necessary to program other boards with.
Hopefully, you now have a better view of SparkFun's USB-serial catalog offerings and why you might select any given one over another. There is no one "best" option, with each offering pros and cons that make it more or less suitable for certain applications. I keep several of each flavor handy for various reasons, not the least of which is ease of use across different devices running at different voltages.
As always, if you have questions you can post them below or contact SparkFun Technical Support. Thanks for reading!
Have you considered products from other vendors? For example the CP2104 from Silicon Labs? It has proven to be a very low cost alternative to the FTDI offerings.
It would sure be nice to see a dual serial port board, perhaps something based on the FTDI FT2232H. There are times when it's nice to have this capability to "sniff" traffic on exposed RX/TX lines.
Think bigger. If you're going to design such a board go ahead and use the FT4232 so you can monitor up to four serial ports through one USB cable.
Interesting that you have the USB Micro as a Pro and the USB Mini as a Con. I feel just the opposite. With 4 legs to anchor to the PCB, the Mini is much more robust then the Micro. The Micro connectors in cell phones are a common point of failure, with the connector pads lifted off the PCB creating intermittent operation.
At this point I'd have to say it is about 50/50. MicroB cables are everywhere now, MiniB cables are sitting in the drawer of never used cables (meaning you have plenty of unused cables lying around). The MiniBs definitely have a nice solid connection, but over the years we've been getting better and better and making sure these stay on. With vias, bossed connectors (little plastic feet that add a little security) and better footprints we've come a long way and are still working on it. We are even working on one that is SMD, but has metal feet that go into the PCB (but not all the way through it), that get anchored with solder (although unfortunately this design does not allow us to use this connector on many of our thinner PCBs).
I recently tested the new "half-pth" micro you're talking about--- the connector stayed firmly on the board and the usb cable bent. I'm super excited to see this connector go out on our new products!
It's nice that you are working to make the connector more robust with Sparkfun products. Sadly I suspect the cell phone manufacturers don't have the same priorities.