Questionnaire on WSN Deployments/Applications ==================================================================== This is an informal questionnaire on experience, expectation and generally a broad practical overview of different wireless sensor network deployments that have been done in the community. If you can't answer a specific question don't panic (and move on), or if you think another question would be more appropriate please don't be shy and note all your comments as best as you can. In any case, if you have supporting material (slides, photos, papers, links, etc.) and don't mind sharing these please attach a copy of this material to your response. If you know any other deployment, please don't hesitate to forward this questionnaire. I intend to compile the data into a report and possibly even publish the findings. Definitely i will contact you again before any such publication is finalized to discuss the possible options of dissemination as well as the interpretation of the results of this survey. If anything else is unclear, please ask! I look forward to your submissions to: Jan Beutel ETH Zurich 1 - General Information ===================================================================== ** Project name: Deployment-Support Network (JAWS) ** Institution: ETH Zurich ** Project contact: Jan Beutel ** Questionnaire submitted by: Jan Beutel ** Project start: ~09/2003 ** Project end: ongoing ** Deployment duration: 02/2006 to now ** Number of nodes: 50+ ** Webpage: http://www.btnode.ethz.ch/projects/jaws 2 - Project Idea ====================================================================== ** Application: a wireless testbed to be used as a tool for wsn research ** What was the original plan? serial port replacement for distributed reprogramming/debugging of WSN applications. the initial idea was to tunnel rs232 accross a multihop backbone of bluetooth nodes to allow a single developer to connect to a number of remote nodes in a network for development and testing purposes from a single PC without the need for wiring. It was envisioned to use presently available tools (no change to the interface) with this testbed infrastructure. ** Initial development timeframe anticipated: 0.3-0.5 years ** Intended "customer/user" of the application (i.e. scientists, industry, research demo, educational...)? wsn researchers, possibly industry at a later stage 3 - Targeted Application Details - Performance ====================================================================== ** In/Outdoor: indoor ** Environment details: office/lab environment ** Hardware used: btnode rev2 and btnode rev3 ** Software used: btnut, different revisions ** Power consumption: ~30 mW with 150 mW peaks ** Power supply: 2xAA, optional fixed power ** Expected lifetime: min. 1 week ** Data rate and type (bursty, periodic?): 57600 baud serial port tunneling, both bursty and constant rate ** Network diamater (number of hops): 10s of hops ** Accuracy needs: low ** Reliability: high, no loss of data over serial tunnel ** Mobility: none ** Reactivity: ~msec ** Delay: ~msec ** Single-/multi-sink: at first single sink wit multisink option later on ** User servicability: only for the exchange of batteries ** Synchronization needs: ? ** Uni-/bi-directional communication: bidirectional ** Storage: only local packet buffering etc... 4 - Project Planning ====================================================================== ** How did you plan the project? (Technical and organizational issues) The basic project idea popped up over a predecessor project/prototype and out of the need for such a "wireless reprogramming facility" to alleviate the cumbersome development project. It was followed up by a brief specification phase and a number of discussions/meetings. There were no initial specification documents. ** How did you intend to follow up on progress, bugs, and general project status? Meetings, personal comunication, nothing else... ** How was your team organized? 2-3 PhDs, later on 1 technical staff for embedded software ** Development approach (bottom up or top down)? Bottom up with a separation of some concerns/issues incl. assignments ** Planned time for the development/test/deployment? ~0.5 years ** Planned resources (funding, manpower, infrastructure)? Development was planned in conjunction with the development of the BTnode rev3 hardware as well as a move from the event based btnode-system software to a multithreaded OS (BTnut). These cannot be clearly separated but the JAWS project was a main application driver for the latter two. Manpower and infrastructure was planned between two labs (distributed systems and computer engineering and networks) with a full-time technical staff and a number of PhD students at different skill levels. ** Did you plan to outsource parts of the development, hire external staff or have (sub-)systems manufactured? Only the manufacturing of the BTnode rev3 hardware was outsourced. 5 - Development ====================================================================== ** Short synopsis: Based on a pre-prototype of a multihop Bluetooth network (TreeNet), services for the tunneling of data over a multihop mesh were developed. This at first was based on the notion of ATM circuit switching and reliable (no packet loss) data transfer from end to end. It later evolved into client/server setup with services being offered at the server level and at the endpoints (DSN nodes) with an intermittent connection fabric (multihop network). Over time a number of services evolved that are now the core of the application (remote code distribution, remote procedure calls, logging, time synchronisation, power saving using dual radios). ** Did you discover "showstoppers" during development? Yes: (i) indefficienicies in the BTnode rev2 Bluetooth hardware (ii) buggy flow control in the BTnode rev3 Bluetooth hardware (iii) performance mismatch between Atmega128 @ 8MHz (slow) and Blueooth wireless @ 1Mbit/sec (fast) ** Did you need to acquire additional expertise or consult external parties to develop your application? Yes: Bluetooth chipset vendor for firmware details ** Duration: 2-3 years ** Changes to the original plan? Almost too many to note them all down. The most significant came when we realized that (i) the original concept was flawed (simple tunneling of serial ports would not scale due to a bottleneck at the sink) and (ii) extensive testing and field experiments revealed very instable operation of the application at large. 6 - Testing (Lab/Home work) ====================================================================== ** What did you do to test prior to deployment in the field? 1st desktop style testing, 2nd single floor in an office building, both with "walk around and collect" style node placements and software updates, later by using the DSN itself for debugging and profiling. Furthermore we have used an OS tracer extensively in the earlier parts of the development to find nasty lower layer bugs in the software. ** Did you plan on testing at all? Yes ** Did you perform calibration/parameter tuning? Yes. Extensive trial and error. ** Duration: Testing is an ongoing effort. We now have a development setup of 10 nodes, a master site with 50 nodes and a number of customer sites (different buildings, @industry partner) under operation. All are hooked up to a monitoring framework (cacti). Since about midway through the project we are using the sourcefourge bugtracker and since about a year we are using cruisecontrol for continuous integration of the software base. ** Did this incurr changes to the original plan? Yes, see above. 7 - Deployment (Field work) ====================================================================== ** Short synopsis: There has been 2 generations of deployments both with slightly different infrastructure. ** Did you integrate special means to aid in the deployment? Remote code distribution, timestamped logging, RPC ** What worked and what did not work? The serial tunneling idea from the very beginning was very fragile. It was abandoned after a number of trials to fix the dataflow. ** The unexpected/unanticipated (both positive and negative)? The development of such a system would have greatly benefited from a testbed (i.e. the DSN itself). However it has proven to be a versatile yet _very_ complex tools. In parts we have struggled a lot with getting a concise description/documentation out that could be understood/used by third parties. ** Duration: ongoing ** Changes to the original plan? See above. 8 - Operation Phase ====================================================================== ** Short synopsis: See above (under Testing and Deployment). ** Duration: since early 2006 ** Percentage of nodes operational: 85% ** Percentage of data acquired: unknown ** Percentage of data correct: unknown ** Number of user interventions (and type): Many, on a weekly basis. ** Did you meet the expected performance? Some. ** Causes of failures (if any): (i) unknown, (ii) sporadic failures of the radio ** Deviation from the original plan? We anticipated that you use this app in a plug and play fashion, yet it showed that it can only be handled when deployed/managed as an infrastructure. 9 - Decommissioning (if applicable) ===================================================================== ** Short synopsis: None yet. 10 - Overall Project Assessment ===================================================================== ** Overall success or failure? Please rate in the list given and add additional description if necessary: ( ) Full success, exceeding expectations (X) Partial success, but an overall positive assessment ( ) Valuable experience, satisfactory results ( ) Expensive trial-run, mixed emotions, room for improvement ( ) Mostly failure, major redesign/rework necessary ( ) Complete failure, application/idea most probably infeasible ** Did you meet your planned: (yes) (no ) Commissioning date ( ) ( X ) Development time ( ) ( X ) Performance ( X ) ( ) ** Was your original project plan flawed? If yes, how? See above. ** At what stage of the project did you define/agree upon a specification of the final system/outcome? ( ) Planning ( ) Development ( ) Test (X) Depoloyment ( ) Operation ( ) No specification available, details are still unclear today. 11 - Other Comments =====================================================================