This is a review of the new book “Environmental Monitoring with Arduino Building Simple Devices to Collect Data About the World Around Us” by Emily Gertz and Patrick Di Justo. I am an experienced programmer but very new to Arduino. To get started with Arduino, the path I took is not a bad one, in this order:
- Install the Arduino software for Mac, Windows or Linux.
- Get the Getting Started with Arduino kit V3.0 from makershed.com
- Read Massimo Banzi’s excellent book “Getting Started with Arduino, 2nd Edition”.
Some programming experience will make Arduino-ing more fun.
Arduino programs, called Sketches, are written in a Java-like language (called Processing) and are very basic. Basically, you write and call two parts, setup() and loop(). setup() is where you specify where the input is coming from (a pin) and where the output is going (an LED light). loop() runs forever. That’s it for programming. After getting your computer connected to your Arduino hardware properly and writing your program in the Arduino IDE you downloaded (see step #1 above), you press the “Verify” button and then the “Upload to I/O board” button. Seeing something blink can be very satisfying.
Netduino is coming out and the major difference (from Arduino) is that its programs are written in C#. So if you are a Java or .NET programmer, you might instead get Oreilly’s book Getting Started with Netduino by Chris Walker (circa March 2012). And you might instead get hardware better suited for Netduino development.
Back to Arduino. Step #4 in learning Arduino is to go in any of one hundred directions. You should see what Oreilly has and makershed.com if you’re low on ideas. That’s where I picked up “Environmental Monitoring with Arduino Building Simple Devices to Collect Data About the World Around Us”.
All Arduino books and hardware require activity. Don’t read this book without doing the things in the book. You need to have some hardware! Ebay might be a good place to get stuff but I am too newbie to shop for Arduino auctions. Two books and a starter kit is $100.
I am using the PDF version of the book and its pictures are beautiful. There are errors, but I haven’t found any bad ones yet, and the errata page is still empty.
The projects in the book achieve noise detection, electromagnetic interference detection, water conductivity measurement, internet connectivity, nuclear radiation detection and lots of output trickery.
The Preface of the book says that “environmental monitoring” requires “complicated and expensive equipment” typically used by “scientific experts at government agencies, universities, and corporations” occasionally compromised by “their own institutional agendas”. The message here is that we can do it ourselves cheaper and better with a little help from Arduino. Maybe so. And maybe citizen monitoring has a bright future. But the environmental monitoring projects in this book are fun and can stand on their own as simple fun.
The “How to use this book” section in the beginning offers classic Arduino development advice. The whole Arduino stack does breakdown and fail too often. The thing you want to happen simply doesn’t. Follow the advice found here to minimize failure.
One problem with this book is that you need certain hardware that you don’t have right now to complete the project. A great strength of the book is that each section lists the parts you need. For example, Chapter 3 requires a thing called a “4Char display”. The “Parts” section lists a part number: “SparkFun sku COM-09765A”. This is great help. It would have been better if there was a list at the beginning of the book with all the parts needed to do all of the projects in the book, some advice on what they will cost and where to get them. The book does suggest these four providers of Arduino hardware:
If I did this over again, I would have bought these parts before reading the book. Even better would be if makershed.com provided a kit made just for this book (like they do for Banzi’s book). Because as it was, I was skimming too many chapters knowing that I needed hardware and wondering whether I should bother the UPS guy or not. Usually “not” prevailed, call me lazy.
There are dozens of universities that have both a Computer Science Department and some kind of Environmental Studies Department. The CompSci undergrads won’t be deploying hardware in the field, but usually they are studying Java and so can write Processing. The Environmental Studies kids won’t be writing code but they will deploy and troubleshoot sensor hardware. A few dozen kids from these Departments equipped with a few dozen boxes of Arduino hardware and a few dozen Arduino books all mixed up might generate a nice blob of data that could be taken to the Statistics Department.
Emily Gertz and Patrick Di Justo have written a fine book.