Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Beginning Arduino (2nd ed.)
McRoberts M., Apress, Berkeley, CA, 2013. 424 pp. Type: Book (978-1-430250-16-6)
Date Reviewed: Feb 6 2014

“The difference between men and boys is the cost of their toys.” I have never liked this saying, always feeling that it belittled my desire for creating and constructing, so it was with glee that I took to the world that has evolved around Arduino. Just type “Arduino” into eBay and you will be amazed at how much you can get for the price of this book.

This introductory text assumes very little knowledge of programming and even less of electronics, yet by the end of the book, the reader will be building gadgets that publish data via Twitter feeds. The learning spans a substantial range of techniques and technology, given that the reader starts off by learning how to write a function in C and read the color bands on a resistor. Broadly, the book is structured into 50 projects of increasing complexity. Each project features a breadboard wiring diagram and a description of all the new electronic components required. This is followed by a page or two of source code and a line-by-line explanation. Overall, each project introduces only one or two C language constructs, and sometimes a library built around the electronic component.

The journey starts with an introduction to the Arduino integrated development environment (IDE) and instructions on how to upload a program to a connected device. The first project is a light-emitting diode (LED) flasher, which is subsequently built into a Morse code generator. As is typical in most microcontroller texts, there’s a traffic light project followed by a project to make the light interactive by adding a pedestrian crossing signal with a push button. In building these four projects, the reader learns about LEDs, loops, delays, and digital inputs and outputs. Adding a few more LEDs produces a light chase effect, and adding a potentiometer enables the reader to control its speed. Another project starts with an introduction to pulse-width modulation (PWM), which is used to build a pulsating light, a color-changing mood light, and a fire effect display. A subsequent project returns to the mood light and adds user controls using serial communications between a host computer and Arduino.

In project 11, for example, the reader builds an alarm using a piezoelectric transducer, which is followed by a melody player. Other projects use the piezoelectric transducer to build a knock sensor and a light-dependent resistor to create a light detector. These projects explain voltage dividers and the Arduino tone functions. Another project on actuators yields a motor controller using transistors, which is improved by interfacing with an H-bridge motor driver integrated circuit (IC), which teaches the reader about diodes, motors, and transistors. The subsequent two projects expand the use of ICs to controlling binary counter ICs, while also teaching about binary numbers, serial data, and bitwise operations. The next four projects all center around an 8 × 8 dot matrix display and the code needed to animate images, create scrolling text, and build a Pong-like game, where the goal is to block a bouncing ball using a potentiometer-controlled paddle.

Project 23 controls a character-based liquid-crystal display (LCD) panel, while project 24 adds an analog temperature sensor and displays the temperature on the LCD panel. The next set of projects shows how to control servomotors and add a joystick controller acquired from a disassembled PlayStation 2 (PS2) controller (or eBay, if you prefer). Staying with motors, a set of projects explores stepper motors and introduces the first Arduino shield (a plug-in board), which is used to build a line-following robot. Project 31 adds a digital atmospheric pressure sensor to a dot matrix LCD display to create a barograph. Staying with the LCD display, but replacing the pressure sensor with a touch panel from the Nintendo DS, the next set of projects produces a touch keypad and a touch pad light controller. The next two projects work with temperature sensors. The first uses an analog sensor and the second uses a one-wire digital sensor.

The next four projects feature an ultrasonic sensor, a range finder, a distance measuring display, an alarm, and a musical instrument. Following that, the projects are a bit more complex, demonstrating how to write to a secure digital (SD) card and build a temperature data logger. The next two projects interface with a radio-frequency identification (RFID) reader to produce an access control system. The final five projects all focus on Internet-based communications and how to use the Arduino Ethernet shield to enable Arduino to retrieve data from web pages, serve web pages, send out email alerts, and publish Twitter feeds.

It is unfortunate that the circuit diagrams (which have color-coded wires) are printed in black and white. I also found a substantial number of mistakes in the book, most of which I believe could have been picked up during an editorial review. Unfortunate as these problems are, I admit that I really enjoyed reading this book. Not only did it reignite my passion for microcontroller-based electronics, but it also provided me with an opportunity to share my interest with my son through a number of projects that we built together.

More reviews about this item: Amazon, Goodreads

Reviewer:  Bernard Kuc Review #: CR141979 (1405-0296)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Real-Time And Embedded Systems (C.3 ... )
 
 
Electronics (J.2 ... )
 
 
General (D.1.0 )
 
Would you recommend this review?
yes
no
Other reviews under "Real-Time And Embedded Systems": Date
Real-time and systems programming for PCs
Vickery C., McGraw-Hill, Inc., New York, NY, 1993. Type: Book (9780070674660)
Oct 1 1994
Manipulation of terrain data for a real-time display application
Vaughan J., Brookes G., Fletcher M., Wills D. Microprocessors & Microsystems 15(7): 347-353, 1991. Type: Article
Apr 1 1993
Parallel processing in industrial real-time applications
Lawson H., Prentice-Hall, Inc., Upper Saddle River, NJ, 1992. Type: Book (9780136545187)
Jun 1 1994
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy