USB

==Universal Serial Bus==
The Universal Serial Bus is a standard protocol for connecting various peripherals to a computer. Mice, Keyboards, printers and even modems can be connected to your computer using a USB Cable.
USB made the connections simpler by eliminating the need for large bulky serial and parallel cables, and their connectors. USB can also supply energy to the device, for operation or recharging.
===Applications===
As mentioned, it allows you to connect a mouse and keyboard to your computer. Some keyboards and even monitors have a USB Hub built in, where it supplies additional USB ports. USB external hard drives also exist, as do USB Keys or Thumb drives, which replace a floppy disk when moving data from one computer to another. Many Digital Cameras also have a USB connection to allow easy transfer of photos to your computer.
===Digital Command Control Applications===
A number of devices are available which use the USB port to connect your DCC system to a computer. Some Command Stations may offer a USB port, others have external interfaces which connect to your throttle network. Some devices are stand alone, allowing you to program a locomotive decoder without a DCC system.
===USB Cables===
There are a number of types of cables. Some are designed for the old USB 1.1 standard while others for the faster USB 2. The newest and fastest USB 3 has a blue connector while being backwards compatible.
Their are several types of plugs. The most common is the Type A, which is rectangular. Type B is square, often seen on printers and USB Hubs. There are also smaller micro and mini B connectors.
==RS-232==
----
Most RS-232 applications have been displaced by the USB standard. Many computers made today lack the RS-232 port.
RS-232 (Radio Standard 232) is a method of connecting Serial devices to the computer, using an RS-232 port. RS-232 defines the electrical and mechanical characteristics of the ports and cabling. A typical application with personal computers was the connection to a Modem for telecommunications.
RS-232 dates back to the era of teletypes, where data was sent in a serial (sequential) form from one device to another. Early computers adopted the standard to allow easy connection to a teletype machine, giving you a printer. Later dedicated printers used the Centronics interface and a parallel data connection for faster printing. Computers came with a connection (port) for the printer or other parallel devices.
The parallel and serial ports were different genders so you couldn't mix up the cables. If you wanted to connect multiple serial or parallel devices, you needed a switch to connect them to their port, or had to switch cables. 
A well known example of a computer using the RS-232 port to connect to peripherals is the Commodore VIC-20 and C-64. They used a serial connection for printers and floppy drives. The reason for a serial printer was that Centronics wanted a lot of money to licence their protocol and supply printers. Commodore offered to help make a simpler, less costly printer for home computers but the offer was declined. Commodore then went to Epson, which supplied printer components to Centronics, and the rest is history.
The second reason for CBM using a serial port is that the PET (Personal Electronic Transactor) series of computers had an IEEE (also called the GPIB) bus. Cables to interface the IEEE bus were expensive and hard to get as only one company made them. So Commodore designed the VIC and C-64 to use a lower cost serial connection to their peripherals and built them with a simple 6502 based computer inside to operate the device and manage communications. Some users even ran simple programs on their floppy drive or printer to free up the computer... The serial connection also allowed the user to daisy chain devices, such as the printer, floppy drive(s) and even a plotter and other devices.
In fact, many third party companies used the low cost VIC-20 ($300 US at retail in 1981) as the starting point to build their own computer controlled systems, taking advantage of the serial ports, available IEEE-488 adaptor and and the ability to run software from a cartridge. Today a Raspberry PI or an Arduino would be used for the same purpose.
== Further Reading ==
* DCC Software - Other DCC software
* JMRI
* JMRI has it's own Wiki
* JMRI Decoder Definition website
* Wikipedia: USB
Category:Software
Category: DCC Software
Category:Resources
Category:Computers and DCC