Monday, January 05, 2015

Arduino Omnigraffle Stencil

I've been using the drawing/illustration/wireframing tool Omnigraffle for years. Lately I've found myself creating basic circuit prototypes (specifically those that use an Arduino) for showing others that would be confused with traditional schematics. I spent some time last week and developed an Omnigraffle stencil of the common Arduino boards. I've reached out to Graffletopia to get this added so others can use it.

Download now from Graffletopia or Stencil Town!

https://www.graffletopia.com/stencils/1413

https://stenciltown.omnigroup.com/#stencil=arduino




Saturday, January 03, 2015

iPhone Controlled Plant Watering Device

I finally had a chance to finish up my phone controlled plant watering device that I started at the December Home Automation AT&T Hackathon. The device is built on a Raspberry Pi platform (Raspbian) with a hacked USB WIFI dongle, H-bridge pump driver board, DC motor pump, and a power circuit for handling both the Pi and pump drive. Three LEDs are mounted along the right side of the device to show power, internet connectivity, and whether or not the pump is running ( in this case-the plant is being watered).

Once the plant watering device is connected to the internet (WIFI), a Node.js process starts and subscribes to a private Pubnub (device) channel and awaits commands.

The device is controlled from a basic iPhone app, which allows the user to choose how long to water and shows a realtime progress indicator of the run. Once the "start" button is clicked, the selected # of seconds to run is sent to the pubnub (device) channel. Upon receiving the start request, the device sends back an acknowledgment to the pubnub (app) channel and begins a runtime loop until the specified number of seconds have passed. For each iteration of the runtime loop (each second), the device sends a status message to the pubnub (app) channel. When the app receives a status message it either updates the progress indicator or if the run has completed, resets the user interface for the next run.

The plant watering device was built using: