PART I Arduino Engineering Basics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1 Getting Started and Understanding the Arduino Landscape. . . . . . . . . . . . 3
2 Digital Inputs, Outputs, and Pulse-Width Modulation. . . . . . . . . . . . . . . . . 23
3 Interfacing with Analog Sensors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
PART II Interfacing with Your Environment. . . . . . . . . . . . . . . . . . . . . . . . . 67
4 Using Transistors and Driving DC Motors . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5 Driving Stepper and Servo Motors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
6 Making Sounds and Music . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
7 USB Serial Communication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
8 Emulating USB Devices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
9 Shift Registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
PART III Communication Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10 The I2C Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
11 The SPI Bus and Third-Party Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
12 Interfacing with Liquid Crystal Displays. . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
PART IV Digging Deeper and Combining Functions. . . . . . . . . . . . . . . . . 273
13 Interrupts and Other Special Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
14 Data Logging with SD Cards. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
PART V Going Wireless. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
15 Wireless RF Communications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
16 Bluetooth Connectivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
17 Wi-Fi and the Cloud. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Appendix A: Deciphering Datasheets and Schematics. . . . . . . . . . . . . . . . 451
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461