Channels ▼

Mike Riley

Dr. Dobb's Bloggers

Arduino Cookbook Review

April 05, 2011

The Arduino has become a white-hot topic these days by granting the ability to allow anyone with a computer, a 30-dollar Arduino, and an incentive to route electrons through sensors and actuators and make them do interesting things. The latest book to make it to this topical pile-on is technologist Michael Margolis' Arduino Cookbook. Does it have the essential recipes to satisfy the discerning palettes of Arduino enthusiasts? Read on to find out.

Arduino Cookbook is a compilation of nearly 200 tips and tricks working with the hardware. Like most recipe books, there's little that's truly exclusive to the book. Most of the tips are examples or variations of those topics already posted on various Arduino enthusiast websites. Even so, the value that the author brings with this compilation is one of the most comprehensive, well organized, and up-to-date books on the wide world of Arduino-centric programming.

Like many of O'Reilly cookbooks, Arduino Cookbook is capable of standing on its own, but is optimized as an adjunct to introductory texts on the subject. As such, the most valuable reading experience will come to those who have already dabbled in constructing and running basic Arduino sketches and are ready for deeper explorations. Following the Problem/Solution/Discussion format, readers will go from the basics of setting up the Arduino development environment to low-level coding memory handling and manipulating registers, interrupts, and timers on the Arduino's controller chip hardware. In between, readers will learn more efficient ways to handle math and text manipulation, communicate over multiple serial connections, capture basic digital and analog input, read from a variety of sensors, and deliver visual, physical, and audio output with assistance from various Arduino add-on boards (known as 'shields' in Arduino speak). Even more interesting chapters on controlling external devices and displays, wired and wireless networking, as well as more advanced topics like consuming and creating Arduino libraries and the aforementioned Arduino hardware hacking tips conclude the base of the book. There are seven appendixes covering the basic electronic components often used with the Arduino's main brain (typically an ATmega328 microcontroller found in the most popular Arduino board, the Arduino Uno).

The book is loaded with Arduino sketch source code that can thankfully be freely downloaded from the book's website. Anyone with an Arduino and an Internet connection will be able to keep themselves occupied for days loading up these various programs (known as 'sketches' in Arduino speak). Some of my personal favorite recipes are "receiving serial data from two devices at the same time", "measuring volates more than 5V", "using an analog panel meter as a display", "controlling a digital camera" "adding external EEPROM memory" and "reducing battery drain". Readers are bound to discover their own favorites as well.

I wish I had access to the Arduino Cookbook a year ago when I dove head first into this fun component of what is becoming known as "The Internet of Things". For those just now getting their feet wet in the Arduino world, I would suggest a good introductory book like Arduino: A Quick Start Guide, by Maik Schmidt, followed up by Michael Margolis' Arduino Cookbook. Combined, these two titles will give readers enough information to build 90% of what is possible. The Arduino has become in my mind the 21st century electronic equivalent of the Erector Set, and the Arduino Cookbook is a handbook that any serious Arduino enthusiast should have by their side.

Title: Arduino Cookbook
Author: Michael Margolis
Publisher: O'Reilly Media
ISBN: 978-1-4493-0310-5
Pages: 660
Price: $31.99 (Ebook), $44.99 (Print)

Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 


Video