Beginning C for Arduino by Jack Purdum