Category Archives: Arduino

Book Review: Getting Started with the Internet of Things

I rarely write up book reviews except in extreme cases.  I admit that I am a harsh critic; rarely do I find a book worthy of praise, and when I do my reviews tend towards being large volumes in and of themselves.  This is a good thing – writing a book is a massive undertaking and I have a great amount of respect for anyone who undertakes the task.  Which is why I find it so frustrating when I find a book that is just plain bad.  I just can’t understand why someone would put themselves through the tedium and all of the work involved with writing and publishing a mediocre (or worse) book.

I really, really wanted to like this book.  It’s been talked up for months now, and while I don’t usually fall for hype, I admit to having high expectations for Getting Started with the Internet of Things from the folks at Make:Projects.

Continue reading

Robust 1-Wire Support for Arduino via EDS HA7S


I have purchased several devices from Embedded Data Systems (EDS) over the last few years.  Their HA7Net Ethernet 1-Wire Host Adapter makes integrating 1-Wire devices utterly painless; it is a solidly constructed, well-engineered piece of hardware.  It is also very well supported by the OWFS project.  EDS is a pleasure to work with, their staff is knowledgeable, pleasant, and responsive.

I’ve got several remote areas that I would like to monitor using 1-Wire devices, and I’d like to use some of the more obscure 1-Wire devices which I’ve purchased over the years as well.  This seemed like an excellent use case for the Arduino Fio: low power consumption, built in LIPO support, and XBee support to boot.

A bit of googling turned up several examples for simple 1-Wire interfacing using the DS18B20, but very little in the way of other devices.  I would like to use some of the 1-Wire hardware that I have accumulated in this project – a dual channel counter, LCD board, and 8-channel relay board from HobbyBoards as well as various temperature and humidity sensors from iButtonLink.  Several of the pages I found referenced Peter Anderson’s 1-Wire interface adapter, which is a nice little design but does not support chaining devices and is limited to only seven 1-Wire devices.  There are a couple of other nice libraries available with more extensive device support as well, but I haven’t yet had time to dig into them.

Because I would like to support a larger number of devices on my 1-Wire bus, I don’t think direct control via Arduino is the correct approach; 1-Wire can be notoriously finicky when it comes to timing, and I just don’t want to invest that kind of time into testing and debugging.  Dallas Semi has created some very nice driver chips which would fit the bill nicely.  The DS2482S i2C to 1-Wire bridge and the DS2480B serial to 1-Wire bridge are both quite inexpensive and would be fairly straightforward to integrate with the Arduino; The only real drawback to these is the tiny SOIC-8 package and subsequent soldering difficulties. [edit: SOIC soldering really isn’t that difficult, as I recently discovered.  Read more here.]

While downloading a new firmware release for my EDS HA7Net I stumbled across the HA7S TTL 1-Wire Host Adapter SIP; it occurred to me that this is an absolutely perfect fit for my needs.  TTL level serial I/O, simple ASCII interface, extremely low power requirements, and very reasonably priced ($17 USD).  I’ve got two on order now, will blog more once I’ve received the devices and have had a chance to play with them.