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: https://xively.com/feeds/90133 .
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 http://xively.com/feeds/90133) 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.
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.
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 Xively.com (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 https://xively.com/feeds/90133
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: http://www.4dsystems.com.au/…/4D_Intelligent_D…/uLCD_144_G2/
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???
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. http://www.nanode.eu/
Several were acquired from WickedDevices. http://wickeddevice.com/index.php…
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 Pachube.com site.
- Send some type of alert via SMS, email, or twitter.