iDigi Expertise from a Solutions Architect
— Hometown Boy Makes Good —
About iDigi Thunderheads
Welcome to the second issue of iDigi® Thunderheads, the monthly technology bulletin from the iDigi Solutions Architecture team. This month we’ll be looking at some of the interesting ways people are using wireless technology and device cloud networking.
This newsletter is intended to provide you with the latest news and information about the iDigi® Device Cloud™ and related technology. If you have a story request or questions, please feel free to contact us at firstname.lastname@example.org.
Meet the Author & Architect
My name is Jordan Husney. I am a Solutions Architect at Digi International® and one of the founders of Digi’s worldwide team of Solutions Architects.
Some might say that I didn’t get very far in life, and by far I mean far from home. You see, home for me is Minnetonka, Minnesota, where I was born and raised and the same city as Digi’s corporate headquarters. My history with Digi goes all the way back to Minnetonka High School and a project I submitted to a local science fair.
I was born a nerd. I preferred amateur radio and computer programming to school dances and football games, so for my project I stuck with what I had been geeking-out on. I presented a system for transferring files securely and efficiently over a multi-hop long distance wireless link. This was in 1995, before the explosion of data-over-wireless. Much to my surprise I received a tremendous amount of recognition for the project and was given the honor of representing the United States at the International Science and Engineering Fair in exotic Hamilton, Ontario.
Along the way (and fatefully) I received an academic award from Digi International. After the presentation of the Digi award a representative from the company gave me his card and jokingly remarked, “if you ever want a job kid, give me a call.” I was bagging groceries in a supermarket, so I didn’t hesitate. I told him I’d do anything from cleaning the labs to helping to sort the mail! Luckily for me my phone call and persistence turned into a summer internship and the internship turned into a career. I can’t believe it’s been more than 16 years since that phone call!
The Fun Never Stops
— Using the Technology for Cool Projects —
Over the years I’ve been able to take part in many different projects at Digi. I am particularly proud of my work architecting our ZigBee gateways and the Python based iDigi® Dia development framework. A great perk of the job is seeing some cool ways your technology is used and meeting some fantastic people.
Adidas tasked Interaction Designer Didier Brun with creating interactive shoes that would actuate upon taking a step. The shoes transmit step-events wirelessly to a laptop running customized synthesizer software, creating music from walking or dancing. Didier started off using Bluetooth radio modules but had to abandon them as he found them to have unreliable latency characteristics. He ended up selecting Digi’sXBee-PRO® 802.15.4 modules.
Video: Adidas Megalizer
Visiting the Tisch ITP
Through the XBee® community I met Tom Igoe and Rob Faludi of the Tisch ITP program at New York University’s Tisch School of the Arts.
You may know Tom from the Arduino project, an open-source electronics prototyping platform intended for artists, designers, hobbyists and anyone interested in creating interactive objects or environments. You may also know him from his adventures attaching XBees to monkeys in Guatemala.
Rob, along with co-creator Kate Hartman invented Botanicalls, a device that allows plants to telephone and inform you that they are thirsty. Wired Magazine ranked Botanicalls first in the April, 2011 article, “21 Awesome DIY Projects.”
Visiting Tisch ITP was a real treat. Their Manhattan office building was bustling with artists and technology wizards creating all manner of interactive objects — many based on Digi technology. It was honoring, humbling and very exciting!
Building Wireless Sensor Networks
Last summer Rob Faludi asked if I would have a look at some chapters for a book he was writing for O’Reilly Media. In December 2010, Building Wireless Sensor Networkswas released and I had collected my first credit as technical editor.
If you’re looking to get started with Digi XBee modules, ConnectPort® X gateways or the iDigi Device Cloud, you won’t find a better introduction than this book. And wouldn’t you know it? There’s a kit available from SparkFun! The kit includes most of the bits you need; the ConnectPort X2 gateway is currently sold separately.
— WaveForum Developer’s Conference —
Digi is bringing the WaveForum Developer’s Conference to San Diego this August. This is a great opportunity to meet wireless experts and other creative people for three days of interactive education focused on communicating with remote devices and management solutions using device cloud networking.
Westin Hotel, San Diego, CA
August 3-5, 2011
Take $150 off the price of registration.
Use coupon code CONNECTIONS.
— Sound the Alarm! —
A common question we architects get is, “how can I tell if any of my devices are in trouble? How can I sound an alarm?” If you’ve architected your gateway application around the iDigi Dia/Python application framework the new iDigi Dia API can make it a snap for detecting when your remote device needs a little assistance.
The trick is to use the iDigi Dia’s Transforms Device Driver to create a block of channels starting with a common prefix across all of your gateways. The following excerpt from a hypothetical iDigi Dia YAML configuration file collects the battery remaining from two battery operated sensors and uses the Transforms Device Driver to create two new channels “alarms.sensor0_battery_low” and “alarms.sensor1.battery_low.” If the respective sensor’s battery level is less than 20% the value of the channel will be a Boolean “True;” otherwise the channel’s value will be “False.”
- name: alarms
– name: ”sensor0_battery_low”
expr: ”c ‹= 20.0″
- name: ”sensor1_battery_low”
expr: ”c ‹= 20.0″
If we enable the idigi_db driver in our iDigi Dia project our sensors battery values will periodically be uploaded to the iDigi Device Cloud. We may then use a simple iDigi Dia API query from our web browser or application in order to see if there are any alarms pending for any of our devices attached to the iDigi Device Cloud:
http: //developer.idigi.com/ws/DiaChannelDataFull?condition=ddInstanceName=’alarms’ and dcdBooleanValue=’True’
This will return a set of XML results from iDigi containing a list of all devices presently in a state of alarm. If we want to look over all history stored on the iDigi Device Cloud we would use the following request:
http: //developer.idigi.com/ws/DiaChannelDataHistoryFull?condition=ddInstanceName=’alarms’ and dcdBooleanValue=’True’
Of course, when we choose to poll the data history it’s always a good idea to poll the historical data store for records newer than the last record we processed. Assuming that our initial query returned a maximum record number of 42 (represented in a Dia data record’s dcdhId tag) representing the newest record we would adjust our next query in the following way:
http: //developer.idigi.com/ws/DiaChannelDataHistoryFull?condition=ddInstanceName=’alarms’ and dcdBooleanValue=’True’ and dcdhid › 42
Upon interpreting the results from our alarms query we can perform simple checks on the data and trigger a set of events, such as creating a trouble ticket in our ERP system to dispatch a field agent to change batteries, send an e-mail or otherwise sound the alarm!
Wireless Connectivity in the Backyard
— The iDigi Garden —
In 2009 we built the iDigi Garden in the backyard of our Minnetonka headquarters. We wanted to create a real-world application that demonstrated the effectiveness of our wireless hardware and management tools.
We used XBee modules, ConnectPort X gateways and the iDigi Device Cloud in combination with a variety of sensors, regulators and other monitoring and control devices to create:
- A self-regulating irrigation system capable of maintaining proper moisture levels in three separate growing zones
- Water storage tanks that are replenished by a nearby well when supply levels run low
- A solar power source that provides electricity to irrigation devices as well as the ConnectPort X gateways
We had a long winter followed by a very cool spring, but things are really beginning to grow in our garden now. Visit our Twitter and Facebookpages for periodic updates on the iDigi Garden.