Baudot code

An early "piano" Baudot keyboard

The Baudot code [bodo] is an early character encoding for telegraphy invented by Émile Baudot in the 1870s,[1] It was the predecessor to the International Telegraph Alphabet No. 2 (ITA2), the most common teleprinter code in use until the advent of ASCII. Each character in the alphabet is represented by a series of five bits, sent over a communication channel such as a telegraph wire or a radio signal. The symbol rate measurement is known as baud, and is derived from the same name.

History[edit]

Baudot code (ITA1)[edit]

Baudot code (ITA1)
Baudot Code - from 1888 patent.png
An early version from Baudot's 1888 US patent, listing A through Z, t and ∗ (Erasure)
Alias(es)International Telegraph Alphabet 1
Current statusReplaced by ITA2 (not mutually compatible).
Classification5-bit stateful basic Latin encoding
Preceded byMorse code
Succeeded byITA2

Baudot invented his original code in 1870[citation needed] and patented it in 1874.[2] It was a 5-bit code, with equal on and off intervals, which allowed for transmission of the Roman alphabet, and included punctuation and control signals. It was based on an earlier code developed by Carl Friedrich Gauss and Wilhelm Weber in 1834.[3][4][5] It was a Gray code (when vowels and consonants are sorted in their alphabetical order),[6] nonetheless, the code by itself was not patented (only the machine) because French patent law does not allow concepts to be patented.[7]

Baudot's original code was adapted to be sent from a manual keyboard, and no teleprinter equipment was ever constructed that used it in its original form.[8] The code was entered on a keyboard which had just five piano-type keys and was operated using two fingers of the left hand and three fingers of the right hand. Once the keys had been pressed, they were locked down until mechanical contacts in a distributor unit passed over the sector connected to that particular keyboard, when the keyboard was unlocked ready for the next character to be entered, with an audible click (known as the "cadence signal") to warn the operator. Operators had to maintain a steady rhythm, and the usual speed of operation was 30 words per minute.[9]

The table "shows the allocation of the Baudot code which was employed in the British Post Office for continental and inland services. A number of characters in the continental code are replaced by fractionals in the inland code. Code elements 1, 2 and 3 are transmitted by keys 1, 2 and 3, and these are operated by the first three fingers of the right hand. Code elements 4 and 5 are transmitted by keys 4 and 5, and these are operated by the first two fingers of the left hand."[8][10][11]

Baudot's code became known as the International Telegraph Alphabet No. 1 (ITA1). It is no longer used.

Murray code[edit]

Paper tape with holes representing the "Baudot–Murray Code". Note the fully punched columns of "Delete/Letters select" codes at start of the message (on the right); were used to cut the band easily between distinct messages. The message then starts with a figure shift control followed by a carriage return.

In 1901, Baudot's code was modified by Donald Murray (1865–1945), prompted by his development of a typewriter-like keyboard. The Murray system employed an intermediate step; a keyboard perforator, which allowed an operator to punch a paper tape, and a tape transmitter for sending the message from the punched tape. At the receiving end of the line, a printing mechanism would print on a paper tape, and/or a reperforator could be used to make a perforated copy of the message.[12] As there was no longer a connection between the operator's hand movement and the bits transmitted, there was no concern about arranging the code to minimize operator fatigue, and instead Murray designed the code to minimize wear on the machinery, assigning the code combinations with the fewest punched holes to the most frequently used characters.[13][14]

For example, the one-hole letters are E and T. The ten two-hole letters are AOINSHRDLZ, very similar to the "Etaoin shrdlu" order used in Linotype machines. Ten more letters, BCGFJMPUWY, have three holes each, and the four-hole letters are VXKQ.

The Murray code also introduced what became known as "format effectors" or "control characters" – the CR (Carriage Return) and LF (Line Feed) codes. A few of Baudot's codes moved to the positions where they have stayed ever since: the NULL or BLANK and the DEL code. NULL/BLANK was used as an idle code for when no messages were being sent, but the same code was used to encode the space separation between words. Sequences of DEL codes (fully punched columns) were used at start or end of messages or between them, allowing easy separation of distinct messages. (BELL codes could be inserted in those sequences to signal to the remote operator that a new message was coming or that transmission of a message was terminated).

Early British Creed machines also used the Murray system.

Western Union[edit]

Keyboard of a teleprinter using the Baudot code (US variant), with FIGS and LTRS shift keys

Murray's code was adopted by Western Union which used it until the 1950s, with a few changes that consisted of omitting some characters and adding more control codes. An explicit SPC (space) character was introduced, in place of the BLANK/NULL, and a new BEL code rang a bell or otherwise produced an audible signal at the receiver. Additionally, the WRU or "Who aRe yoU?" code was introduced, which caused a receiving machine to send an identification stream back to the sender.

ITA2[edit]

ITA2 Baudot–Murray code
International Telegraph Alphabet 2.jpg
British variant of ITA2
Alias(es)International Telegraph Alphabet 2
Classification5-bit stateful basic Latin encoding
Preceded byITA1
Succeeded byFIELDATA,
ITA 5 (US-ASCII)
MTK-2
Language(s)Russian
Classification5-bit stateful Russian Cyrillic encoding
Preceded byRussian Morse code
Succeeded byKOI-7

In 1924, the CCITT introduced the International Telegraph Alphabet No. 2 (ITA2) code[15] as an international standard, which was based on the Western Union code with some minor changes. The US standardized on a version of ITA2 called the American Teletypewriter code (US TTY) which was the basis for 5-bit teletypewriter codes until the debut of 7-bit ASCII in 1963.[16]

Some code points (marked blue in the table) were reserved for national-specific usage.[17]

The code position assigned to Null was in fact used only for the idle state of teleprinters. During long periods of idle time, the impulse rate was not synchronized between both devices (which could even be powered off or not permanently interconnected on commuted phone lines). To start a message it was first necessary to calibrate the impulse rate, a sequence of regularly timed "mark" pulses (1), by a group of five pulses, which could also be detected by simple passive electronic devices to turn on the teleprinter. This sequence of pulses generated a series of Erasure/Delete characters while also initializing the state of the receiver to the Letters shift mode. However, the first pulse could be lost, so this power on procedure could then be terminated by a single Null immediately followed by an Erasure/Delete character. To preserve the synchronization between devices, the Null code could not be used arbitrarily in the middle of messages (this was an improvement to the initial Baudot system where spaces were not explicitly differentiated, so it was difficult to maintain the pulse counters for repeating spaces on teleprinters). But it was then possible to resynchronize devices at any time by sending a Null in the middle of a message (immediately followed by an Erasure/Delete/LS control if followed by a letter, or by a FS control if followed by a figure). Sending Null controls also did not cause the paper band to advance to the next row (as nothing was punched), so this saved precious lengths of punchable paper band. On the other hand, the Erasure/Delete/LS control code was always punched and always shifted to the (initial) letters mode. According to some sources, the Null code point was reserved for country-internal usage only.[17]

The Shift to Letters code (LS) is also usable as a way to cancel/delete text from a punched tape after it has been read, allowing the safe destruction of a message before recycling the punched band. Functionally, it can also play the same filler role as the Delete code in ASCII (or other 7-bit and 8-bit encodings, including EBCDIC for punched cards). After codes in a fragment of text have been replaced by an arbitrary number of LS codes, what follows is still preserved and decodable. It can also be used as an initiator to make sure that the decoding of the first code will not give a digit or another symbol from the figures page (because the Null code can be arbitrarily inserted near the end or beginning of a punch band, and has to be ignored, whereas the Space code is significant in text).

The cells marked as reserved for extensions (which use the LS code again a second time—just after the first LS code—to shift from the figures page to the letters shift page) has been defined to shift into a new mode. In this new mode, the letters page contains only lowercase letters, but retains access to a third code page for uppercase letters, either by encoding for a single letter (by sending LS before that letter), or locking (with FS+LS) for an unlimited number of capital letters or digits before then unlocking (with a single LS) to return to lowercase mode.[19] The cell marked as "Reserved" is also usable (using the FS code from the figures shift page) to switch the page of figures (which normally contains digits and national lowercase letters or symbols) to a fourth page (where national letters are uppercased and other symbols may be encoded).

ITA2 is still used in telecommunications devices for the deaf (TDD), telex, and some amateur radio applications, such as radioteletype ("RTTY"). ITA2 is also used in Enhanced Broadcast Solution (an early 21st century financial protocol specified by Deutsche Börse) to reduce the character encoding footprint.[20]

Nomenclature[edit]

Nearly all 20th-century teleprinter equipment used Western Union's code, ITA2, or variants thereof. Radio amateurs casually call ITA2 and variants "Baudot" incorrectly,[21] and even the American Radio Relay League's Amateur Radio Handbook does so, though in more recent editions the tables of codes correctly identifies it as ITA2.

Character set[edit]

Original Baudot variants[edit]

Original Baudot, domestic UK[edit]

Original Baudot code, UK domestic variant (letter set, switched to with 0x10)[22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
A
0041
E
0045
/
002F
Y
0059
U
0055
I
0049
O
004F
FS
000E
J
004A
G
0047
H
0048
B
0042
C
0043
F
0046
D
0044
1_ SP
0020
-
002D
X
0058
Z
005A
S
0053
T
0054
W
0057
V
0056
DEL
007F
K
004B
M
004D
L
004C
R
0052
Q
0051
N
004E
P
0050
Original Baudot code, UK domestic variant (figure set, switched to with 0x08)[22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
1
0031
2
0032

215F
3
0033
4
0034
³⁄
00B3 2044
5
0035
SP
0020
6
0036
7
0037
¹
00B9
8
0038
9
0039
⁵⁄
2075 2044
0
0030
1_ LS
000F
.
002E
⁹⁄
2079 2044
:
003A
⁷⁄
2077 2044
²
00B2
?
003F
'
0027
DEL
007F
(
0028
)
0029
=
003D
-
002D
/
002F
£
00A3
+
002B

Original Baudot, Continental European[edit]

Original Baudot code, continental European variant (letter set, switched to with 0x10)[22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
A
0041
E
0045
É
00C9
Y
0059
U
0055
I
0049
O
004F
FS
000E
J
004A
G
0047
H
0048
B
0042
C
0043
F
0046
D
0044
1_ SP
0020
T
0074
X
0058
Z
005A
S
0053
T
0054
W
0057
V
0056
DEL
007F
K
004B
M
004D
L
004C
R
0052
Q
0051
N
004E
P
0050
Original Baudot code, continental variant (figure set, switched to with 0x08)[22][22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
1
0031
2
0032
&
0026
3
0033
4
0034
º
00BA
5
0035
SP
0020
6
0036
7
0037
h
0068
8
0038
9
0039
f
0066
0
0030
1_ LS
000F
.
002E
,
002C
:
003A
;
003B
!
0021
?
003F
'
0027
DEL
007F
(
0028
)
0029
=
003D
-
002D
/
002F

2116
%
0025

Original Baudot, ITA 1[edit]

ITA 1 (letter set, switched to with 0x10)[22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
A
0041
E
0045
CR
000D
Y
0059
U
0055
I
0049
O
004F
FS
000E
J
004A
G
0047
H
0048
B
0042
C
0043
F
0046
D
0044
1_ SP
0020
LF
000A
X
0058
Z
005A
S
0053
T
0054
W
0057
V
0056
DEL
007F
K
004B
M
004D
L
004C
R
0052
Q
0051
N
004E
P
0050
ITA 1 (figure set, switched to with 0x08)[22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
1
0031
2
0032
CR
000D
3
0033
4
0034
PU
[a]
5
0035
SP
0020
6
0036
7
0037
+
002B
8
0038
9
0039
PU
[a]
0
0030
1_ LS
000F
LF
000A
,
002C
:
003A
.
002E
PU
[a]
?
003F
'
0027
DEL
007F
(
0028
)
0029
=
003D
-
002D
/
002F
PU
[a]
%
0025

Baudot-Murray variants[edit]

Murray Code[edit]

Murray code (letter set, switched to with 0x04)[22]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL/SP
0000/0020
E
0045
COL
?
A
0041
LS
000F
S
0053
I
0049
U
0055
LF
000A
D
0044
R
0052
J
004A
N
004E
F
0046
C
0043
K
004B
1_ T
0054
Z
005A
L
004C
W
0057
H
0048
Y
0059
P
0050
Q
0051
O
004F
B
0042
G
0047
FS
000E
M
004D
X
0058
V
0056
DEL/*[b]
007F/002A
Murray code (figure set, switched to with 0x1B)
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL/SP
0000/0020
3
0033
COL
?
LS
000F
'
0027
8
0038
7
0037
LF
000A
²
00B2
4
0034
⁷⁄
2077 2044

002D/2212

215F
(
0028
⁹⁄
2079 2044
1_ 5
0035
.
002E
/
002F
2
0032
⁵⁄
2075 2044
6
0036
0
0030
1
0031
9
0039
?
003F
³⁄
00B3 2044
FS
000E
,
002C
£
00A3
)
0029
DEL/*[b]
007F/002A

ITA 2 and US-TTY[edit]

ITA2 and US-TTY Baudot-Murray code (letter set, switched to with 0x1F)
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
E
0045
LF
000A
A
0041
SP
0020
S
0053
I
0049
U
0055
CR
000D
D
0044
R
0052
J
004A
N
004E
F
0046
C
0043
K
004B
1_ T
0054
Z
005A
L
004C
W
0057
H
0048
Y
0059
P
0050
Q
0051
O
004F
B
0042
G
0047
FS
000E
M
004D
X
0058
V
0056
LS/DEL
000F/007F
US-TTY Baudot-Murray code (figure set, switched to with 0x1B)
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
3
0033
LF
000A

002D/2212
SP
0020
BEL
0007
8
0038
7
0037
CR
000D
$
0024
4
0034
'
0027
,
002C
!
0021
:
003B
(
0028
1_ 5
0035
"
0022
)
0029
2
0032
#
0023
6
0036
0
0030
1
0031
9
0039
?
003F
&
0026
FS
000E
.
002E
/
002F
;
003B
LS
000F
ITA2 Baudot-Murray code (figure set, switched to with 0x1B)
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ NUL
0000
3
0033
LF
000A

002D/2212
SP
0020
'
0027
8
0038
7
0037
CR
000D
ENQ
0005
4
0034
BEL
0007
,
002C
!
0021
:
003B
(
0028
1_ 5
0035
+
002B
)
0029
2
0032
£
00A3
6
0036
0
0030
1
0031
9
0039
?
003F
&
0026
FS
000E
.
002E
/
002F
=
003D
LS
000F

  Letter   Number   Punctuation   Symbol   Other  Undefined

Weather code[edit]

Meteorologists used a variant of ITA2 with the figures-case symbols, except for the ten digits, BEL and a few other characters, replaced by weather symbols:

Weather teleprinter encoding
Meteorological Baudot-Murray code (figure set, switched to with 0x1B)
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
0_ -
002D
3
0033
LF
000A

2191
SP
0020
BEL
0007
8
0038
7
0037
CR
000D

2197
4
0034

2199

29B7

2192

25EF

2190
1_ 5
0035
+
002B

2196
2
0032

2193
6
0036
0
0030
1
0031
9
0039

2295

2198
FS
000E
.
002E
/
002F

29B6
LS
000F

Details[edit]

NOTE: This table presumes the space called "1" by Baudot and Murray is rightmost, and least significant. The way the transmitted bits were packed into larger codes varied by manufacturer. The most common solution allocates the bits from the least significant bit towards the most significant bit (leaving the three most significant bits of a byte unused).

Table of ITA2 codes (expressed as hexadecimal numbers)

In ITA2, characters are expressed using five bits. ITA2 uses two code sub-sets, the "letter shift" (LTRS), and the "figure shift" (FIGS). The FIGS character (11011) signals that the following characters are to be interpreted as being in the FIGS set, until this is reset by the LTRS (11111) character. In use, the LTRS or FIGS shift key is pressed and released, transmitting the corresponding shift character to the other machine. The desired letters or figures characters are then typed. Unlike a typewriter or modern computer keyboard, the shift key isn't kept depressed whilst the corresponding characters are typed. "ENQuiry" will trigger the other machine's answerback. It means "Who are you?"

CR is carriage return, LF is line feed, BEL is the bell character which rang a small bell (often used to alert operators to an incoming message), SP is space, and NUL is the null character (blank tape).

Note: the binary conversions of the codepoints are often shown in reverse order, depending on (presumably) from which side one views the paper tape. Note further that the "control" characters were chosen so that they were either symmetric or in useful pairs so that inserting a tape "upside down" did not result in problems for the equipment and the resulting printout could be deciphered. Thus FIGS (11011), LTRS (11111) and space (00100) are invariant, while CR (00010) and LF (01000), generally used as a pair, are treated the same regardless of order by page printers.[23] LTRS could also be used to overpunch characters to be deleted on a paper tape (much like DEL in 7-bit ASCII).

The sequence RYRYRY... is often used in test messages, and at the start of every transmission. Since R is 01010 and Y is 10101, the sequence exercises much of a teleprinter's mechanical components at maximum stress. Also, at one time, fine-tuning of the receiver was done using two coloured lights (one for each tone). 'RYRYRY...' produced 0101010101..., which made the lights glow with equal brightness when the tuning was correct. This tuning sequence is only useful when ITA2 is used with two-tone FSK modulation, such as is commonly seen in radioteletype (RTTY) usage.

US implementations of Baudot code may differ in the addition of a few characters, such as #, & on the FIGS layer.

The Russian version of Baudot code (MTK-2) used three shift modes; the Cyrillic letter mode was activated by the character (00000). Because of the larger number of characters in the Cyrillic alphabet, the characters !, &, £ were omitted and replaced by Cyrillics, and BEL has the same code as Cyrillic letter Ю. The Cyrillic letters Ъ and Ё are omitted, and Ч is merged with the numeral 4.

See also[edit]

Footnotes[edit]

  1. ^ a b c d "At the disposal of each administration for its internal service"[22]
  2. ^ a b "[G]ives invisible correction on page printers & * on slip printers."[22]

References[edit]

  1. ^ Ralston, Anthony; Reilly, Edwin D., eds. (1993), "Baudot Code", Encyclopedia of Computer Science (Third ed.), New York: IEEE Press/Van Nostrand Reinhold, ISBN 0-442-27679-6
  2. ^ "Jean-Maurice- Emile Baudot. Système de télégraphie rapide, June 1874. Brevet 103,898; Source: Archives Institut National de la Propriété Industrielle (INPI)".
  3. ^ H. A. Emmons (1 May 1916). "Printer Systems". Wire & Radio Communications. 34: 209.
  4. ^ William V. Vansize (25 January 1901). "A New Page-Printing Telegraph". Transactions. American Institute of Electrical Engineers. 18: 22.
  5. ^ "Gauss-Weber-Telegraph". Metrology Mile (in German). Measurement Valley. Retrieved 3 May 2009.
  6. ^ Pickover, Clifford A. (2009). The Math Book: From Pythagoras to the 57th Dimension, 250 Milestones in the History of Mathematics. Sterling Publishing Company. p. 392.
  7. ^ Procès d'Amiens Baudot vs Mimault
  8. ^ a b Jennings 2004
  9. ^ Beauchamp, K.G. (2001). History of Telegraphy: Its Technology and Application. Institution of Engineering and Technology. pp. 394–395. ISBN 0-85296-792-6.
  10. ^ Alan G. Hobbs, 5 Unit Codes, section Baudot Multiplex System
  11. ^ Gleick, James (2011). The Information: A History, a Theory, a Flood. London: Fourth Estate. p. 203. ISBN 978-0-00-742311-8.
  12. ^ Foster, Maximilian (August 1901). "A Successful Printing Telegraph". The World's Work: A History of Our Time. II: 1195–1199. Retrieved 9 July 2009.
  13. ^ Copeland 2006, p. 38
  14. ^ Telegraph and Telephone Age. 1921. I allocated the most frequently used letters in English language to the signals represented by the fewest holes in the perforated tape, and so on in proportion.
  15. ^ "BruXy: Radio Teletype communication". 10 October 2005. Retrieved 9 May 2016. The transmitted code use International Telegraph Alphabet No. 2 (ITA-2) which was introduced by CCITT in 1924.
  16. ^ Smith, Gil (2001). "Teletype Communication Codes" (PDF). Baudot.net. Archived (PDF) from the original on 20 August 2008. Retrieved 11 July 2008.
  17. ^ a b Steinbuch, Karl W.; Weber, Wolfgang, eds. (1974) [1967]. Taschenbuch der Informatik - Band III - Anwendungen und spezielle Systeme der Nachrichtenverarbeitung. Taschenbuch der Nachrichtenverarbeitung (in German). 3 (3 ed.). Berlin, Germany: Springer Verlag. pp. 328–329. ISBN 3-540-06242-4. LCCN 73-80607.
  18. ^ dataIP Limited. "The "Baudot" Code". Retrieved 16 July 2017
  19. ^ ITU-T Recommendation S.2 / 11/1988, published in Fascicle VII.1 of the Blue Book
  20. ^ "Enhanced Broadcast Solution – Interface Specification Final Version" (PDF). Deutsche Börse. 17 May 2010. Retrieved 10 August 2011.
  21. ^ Gillam, Richard (2002). Unicode Demystified:. Addison-Wesley. p. 30. ISBN 0-201-70052-2. Enhanced Broadcast Solution – Interface Specification Final Version
  22. ^ a b c d e f g h i j "Five-unit codes". NADCOMM museum. Archived from the original on 4 November 1999. Retrieved 5 December 2001.
  23. ^ Jennings, Tom (20 April 2016). "An annotated history of some character codes: ITA2". Retrieved 20 January 2018. […] the characters that are ‘transmission control’ related […] are bit-wise symmetrical — the codes for FIGS, LTRS, space and BLANK — are the same reversed left to right! Further, the codes for CR and LF, equal each other when reversed left to right!
  24. ^ Bacon, Francis (1605). The Proficience and Advancement of Learning Divine and Humane.

Further reading[edit]

This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.