What standard UART rates are there?

It started a long long time ago with teletypes — I think 75 baud. Then it's been mostly doubling ever since, with a few fractional (x1.5) multiples, for example 28,800, where there were constraints on phone-line modem tech that didn't quite allow it to double.

Standard crystal values came from these early baudrates, and their availability dictates future rates. E.g.,

\$\begin{align}{7.3728 \,\mathrm{MHz} \over 16} &= 460,800 \;\text{baud}\\\\{7.3728 \,\mathrm{MHz} \over 64} &= 115,200 \,\text{baud}.\end{align}\$

Most UARTS use a clock of \$2^n \times 16\$ of the baudrate, more modern parts (e.g. NXP LPC) have fractional dividers to get a wider range by using non-binary multiples.

Other common standards are 31,250 (MIDI) and 250K (DMX), both likely chosen as nice multiples of 'round' clocks like 1MHz etc.


RealTerm, a freeware Windows terminal program, lists these UART rates in its Baud menu:

110, 150, 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600

However these are actually bits per second (bps), not baud -- see below.

110 baud was used by 8-level Teletypes like the ASR-33. I'm not aware where 150 Baud was used, but it is a doubling of 75 baud, commonly used (along with 60 baud) for 5-level TTYs.

300 bps was the standard for the first widely-used telephone modems in the 1960's. A number of 30 character per second terminals appeared at the same time.

Above 300 bps/300 baud, which used simple frequency shift keying (FSK), the figures for bps and baud (symbols or tones per second) are not the same. For example, a 1200 bps modem actually runs at 600 baud, and a 4800 bps modem runs at 1600 baud. Refer to the table under Bandwidths in this article. The difference is because in addition to using a certain number of tone pulses per second, phase-shift keying and other methods are used to extract additional bandwidth from the same baud rate to get higher and higher bps. (So a 56K modem is actually only running at 8000 baud.)

As you can see, the list of UART rates essentially started at 75 and continually doubled (skipping 600), until getting to 38400, where it was multiplied by 1.5 to get 57600. 56K bps is the limit for an analog telephone line. The higher rates 115200 upwards (once again doubling starting at 57600) are used for hard-wired connections.

As mikeselectricstuff mentioned, 14400 and 28800 bps were introduced as 1.5 x 9600 and 1.5 x 19200 when modems speeds couldn't be doubled at the time, but are seldom used anymore.


For a long time, it has been common to use submultiples of 115,200 for communication--either power-of-two submultiples of 38,400 or else 57,600 or 115,200. Most PC hardware supports those rates. Some PC hardware can support 230,400 or 460,800. Note that many embedded controllers like data rates which are sub-multiples of their own clock speeds, and some USB-to-serial chips can support any integer submultiple of 3,000,000bps, so speeds like 1,000,000bps or 1,500,000bps will probably become more common for devices to connect to PCs via USB chips.

BTW, one other rate worth mentioning: 31,250bps is the rate used for standard MIDI.

Tags:

Uart