Arduino Protocols


This protocol communicates by the voltage level on the wire. 0 to 5 volts for example. This is translated into a value from 0 to 1023.


This protocol communicates by varying the volts between high (on) and low (off) at a high frequency. The length of time the volts are high gives the message. For example the angle of a servo is determined by the length of time the volts are high. One wire is required to send the message.


This protocol communicates using alphabet characters. It's important to know the baud rate (frequency) of the message, for example 9600 bits per second (bps). Two wires are required one to transmit (TX) and one to receive (RX).


This protocol communicates using a network bus. I2C devices can be stringed together where the device has a network address. Messages are sent to the device network address. Two wires are required.

0x62Lidar Lite2 laser
0x70SRF02 ultrasonic
0x77BMP180 pressure


This protocol communicates using synchronous serial communication. It's prime use is communicating with secure digial cards. It requires 4 wires.


This protocol called Controller Area Network. It requires 4 wires. Apparently it is used in cars and on boats. The NMEA network uses the CAN as its hardware.