MIL-STD-1553

**MIL-STD-1553** is communication that happens between the parts of most US military aircraft, but is also present on other platforms. The cabling allows the parts to be connected to the network so that removing one part doesn't impact the network. Here are some of the roles of the parts on the network:
* Bus Controllers : The "boss" of the bus. The Bus Controller decides when traffic flows on the network. There is usually only one Bus Controller but there can be many in some usages, this depends on which notice the organization follows
* Remote Terminals: The "doers" of the bus. Remote terminals receive and respond to the bus controller. They perform some function for the platform.
* Bus Monitors: The "listeners" of the bus. These devices usually do not respond until something specific causes them to respond. A Bus Monitor is a non-addressable Remote Terminal. This means that the Bus Controller cannot directly communicate with it. Usually when there needs to be a backup Bus Controller, a Bus Monitor can "know" when the Bus Controller has had a problem, and take over quickly so that communication can keep flowing.

## How many devices 
The network of devices arranged above are usually distributed throughout the plane where designers need the "doers" to perform their function. Bus Controllers are usually somewhat centrally located towards the middle, but this isn't always the case. There needs to be one Bus Controller and there really needs to be one Remote Terminal, otherwise there is no need for the network. The maximum number of remote terminals is 30. There is no limit to the number of Bus Monitors because they do not need to be talked to directly by the Bus Controller

## How does it work 
The Bus Controller initiates a conversation. Sometimes it talks to one part, sometimes two parts, sometimes all of the parts. The application inside the Bus Controller sends data to the part of the device that controls communication. This device changes that data into a Manchester Encoded signal and puts that data on the physical cable. All Remote Terminals can listen to that signal at more or less the same time and decide for themselves if they would like to "take action." Some actions include "turning off" or "tell me how you are doing" (this is known as reporting the results of a built in test). Only one device on the network can talk at a time, or no device can understand what's trying to be communicated on the network, this is called a collision.

## Quick Facts 
* The bus is capable of sending 1 million bits a second.
* The communication is broken up into things most organizations call messages. When the Bus Controller talks to one Remote Terminal, and that Remote Terminal responds, that's a message. When the Bus Controller talks to all Remote Terminals at the same time, that's a different kind of message. There are 10 types of messages in total.
* Messages are broken up into words. There are three types of word. The Command word, used by the Bus Controller at the start of a message; the Status word, used by a Remote Terminal responding to the Bus Controller; The Data word, used by both Bus Controllers and Remote Terminals to send data.
* Each word takes 20 micro seconds to transmit on the bus. The first 3 microseconds are used to tell the device "What kind of word is this." The next 16 microseconds are used to send data. The last microsecond is used to send the parity bit, which can indicate if something happened on the bus and the word became garbled.

## What else do I need to know 
The protocol spec doesn't tell people that use it how to use it, only what it can do. This is like giving a child lego blocks but with no instructions on what to build. Lots of different organizations have used those lego blocks to build things that don't work together or work very differently than other networks.