ZENA updated to version 3.3.5 which will now restart itself after 4 consecutive non-responses from xively post attempts. Code is now only 2 bytes short of max...

WaMS (Water and Motor Sensor). Closeup of the WaMS module mounted in a weather proof box with the water sensor sub-board seen just behind it. The water sensor sub-board has a conformal coating applied to protect it and is the part that actually determines if there is water in the pipe without violating the pipe itself. Other picture shows my three pool motors, each with their own WaMS sensor. These are the three motors shown in the ZENA project page: .

No automatic alt text available.
No automatic alt text available.

Photo of ZENA handling a Frame 90 payload. The line above the XIVELY line containing "mRave: 1040" is the payload and this is uploaded to XIVELY (as the datapoint 'MOTOR_FILTER:mRave') on the ZENA project page:

No automatic alt text available.
No automatic alt text available.

WaMS (Water and Motor Sensor) firmware is now at 3.5.20 and improves the algorithms for monitoring both motor on and water in the pipe. The sensor module now also posts internal variables to ZENA (displayed with a preceeding colon ) as programmed. Currently (at the project site it posts the module firmware version, the motor sensor calibration value (mCal), the water sensor calibration value (wCal), and the motor sensor running average (mRave). The mRave value will be used to improve the algorithm I use to calibrate the sensors over time.

Xively is a secure platform for Internet of Things devices and products. Its API and web service provide real-time control and data storage. Bring connected products to market using our provisioning service. Set alerts, collaborate and exchange data.

ZENA 3.3.4 is out and fixes some minor bugs along with adding a manual exit to the Discovery process. So now the Discovery process will run continuous (to capture slow responding/sleeping end devices) until the display button is pressed to exit.

ZENA 3.3.3 is complete and fixes some 'wonkiness' (a technical term) in the Xbee discovery process. The process now properly finds any Xbee module in the PAN and adds it to it's interrogation list.

ZENA 3.3.2 now supports frame 90 responses from XBees allowing a key/value pair to be posted on Now possible to post any data from microcontroller external to XBee. Additionally, support added to include the posting of XBee battery status when configured in the module.

ZENA in action. ZENA is a software sketch running on a Nanode (Arduino) based platform and acting as an Xbee series 2 controller polling each of the 10 xbee ...

Based on the Nanode open source embedded controller, we attach a 4D Systems OLED display, a Digi XBee module configured as a coordinator, a connection to the internet, and custom software we wrote ZENA (Zigbee Enabled Network Appliance) this version 2.x.x supports up to 10 XBee modules. It auto discovers the modules, interrogates them, and displays any configured digital and/or analog inputs on the 4D Systems OLED display. ZENA will respond to frame IDs 97, 92, and 88 from the networked wireless modules. In addition it posts the data to (was called Pachube, then COSM and now is out of beta as Xively). You can view the live data streams of the ZENA project in action at

No automatic alt text available.
Geekgineering updated their cover photo.
July 9, 2013
No automatic alt text available.

ZENA version 3.0.0 is in beta. This version has several updates:
- Display routines converted to 4D Systems' new Goldelox SPE API and library.
- Discovery mode (where ZENA interrogates the ZigBee network for modules in it's PAN network) now stores the discovered module information in EEPROM and upon power interruptions will simply read the network information back out of EEPROM rather than having to 're-discover' the modules.
- code improvements allowing handling of up to 32 XBee modules.
- Display UI improvements allow the use of a cheaper and slightly smaller display without loss of displayed information:…/4D_Intelligent_D…/uLCD_144_G2/

No automatic alt text available.
Geekgineering added a post from March 13, 2012 to their timeline.
March 13, 2012

Geekgineering is finally trade marked.

Geekgineering added a post from March 12, 2011 to their timeline.
March 12, 2011

Work starts on a ZigBee based wireless sensor module that will:
- get the ambient temperature
- noninvasively sense when a pool pump motor is on or off
- noninvasively sense if there is water in the PVC pipe attached to the same pool pump motor.


A Microchip 12f683 embedded controller was chosen for it's peripherals and very small size. This will feed results to the XBee series 2 module, which in turn will send results wirelessly to ZENA which then sends results to the internet.

Now..... how to sense the motor and water???

See More

After looking at and trying several different Arduino variants, the Nanode5 is chosen as the platform for ZENA because of its simplicity: Arduino compatible with ethernet support on-board without the use of shields.

Several were acquired from WickedDevices.…

Nanode is an Open Source Arduino-like board that has in-built web and network connectivity. It allows you to quickly create or develop web and sensor and control applications.
Geekgineering added a post from January 10, 2011 to their timeline.
January 10, 2011

Work starts on a prototype appliance that will control a ZigBee based network of XBee series 2 modules generically. That is, the appliance will on startup:
- Interrogate the network and discover all modules in it
- Send out interrogation commands to individual modules and handle the resulting Frame 97 responses.
- For those modules with Digital IO Change Detection enabled, handle the resulting real-time Frame 92 responses.
- Display on a color LCD panel, the status of all dig...ital pins configured in the panel.
- Display on the color LCD panel, the reading from analog pins A0 and A1 ( if configured) converted into degrees F as measured by Microchip MCP9700 temp sensors, and the readings from pins A2 and A3 (if configured) as voltage in millivolts.
- Handle up to 16 modules.
- Post the acquired data on site.
- Send some type of alert via SMS, email, or twitter.

See More