Way cool. I am interested in using Zigbee sensors in ultra low power applications (ie. battery operated for three months or more). Are there any plans for this type of development?
--- In flexcoders@yahoogroups.com, Davis Ford <davisford@...> wrote: > > Hi flexcoders, > > I wanted to drop a note to tell you about an Air app I just built that has a > couple unique features. I built it to be a desktop app for Arduino ( > http://arduino.cc) devices. If you're not familiar with Arduino it's an > open source microelectronics hardware platform. It makes it easy to program > micros to do things like attach sensors, control motors, robotics, etc. The > possibilities are endless, and the Arduino subculture has really exploded in > the last few years. > > If you're already a Flex dev. that likes messing with Arduino, this may be > interesting to you. > > This app allows you to scan and connect to an Arduino-derivative, and > connect to it via Bluetooth Serial Port Profile. It also provides a visual > App Store where you can browse and download an app specific to your > hardware, and the types of sensors you may have plugged into it. > > So, for example, you could plug an infrared temperature sensor into the > device, and then go grab an app that works with that device and temp. sensor > and download it. > > An app (may) consist of two parts: > > a) Firmware for the microcontroller > b) A SWF module that can be dynamically loaded into the desktop container > > These two components are meant to work with each other. The firmware can > control things on the device or read sensors and report values, and the > module is a UI that allows you to interact with the firmware. So, you can > program the device over the air using bluetooth, and load the module into > the desktop application container, and now you have a re-configurable > microcontroller that you can easily write, share, and deploy software to. > > Here's some screenshots of the app: http://daisyworks.com/downloads.html - > and you can download it there; although it probably isn't all that useful > unless you have the hardware. > > I wrote some tutorials here: http://daisyworks.com/docs.html on how to write > your own firmware and UI for it. The UI part should be very easy for the > anyone on this mailing list. The firmware part is also trivially easy even > if you've never done it before. > > --- a few technical details about the app's design for anyone curious: > > * native installer for all 3 operating systems -- ant build script that will > create the installer executable with one command > * uses http://swizframework.org heavily, b/c I love swiz :) > > You might be wondering how Air is interfacing with Bluetooth...that was the > kind of tricky part. I created an executable jar with an embedded Jetty > server. The Jetty server exposes BlazeDS services using Spring-Flex. This > is actually kind of cool b/c you can launch a full-fledged Java/BlazeDS > server just by double-clicking a jar file. The installer packages the jar > with it, and when that app bootstraps itself, it starts the jar file itself > and starts communicating with it. I use the bluecove java library to > scan/find/connect Bluetooth devices. > > On the App Store, we just download the .hex firmware image and the .swf. We > can now program the Arduino-derivative with the .hex file, and load the .swf > module into a container. The application container provides the Tx/Rx > communication between the SWF module and the firmware on the device. > > Note: today this only works with our own Arduino derivative hardware -- we > had to do a few tweaks to get the Firmware-Over-The-Air (FOTA) to work, but > it wouldn't be that hard to extend it to work with other Arduino boards. > Our boards work with the Arduino SDK/libraries so there is no difference > from that standpoint. > > I plan to make it FOSS > > If you want to hack on some microelectronics and put your Flex skills to > work building UIs for the device, come and check it out. > > Cheers, > davis > > -- > http://daisyworks.com >