Assignment title: Information


1 Intended Learning Outcomes On completion of this module participants should be able to:

1. Search for, cite, and critique research literature for wireless intelligent systems; 2. Appraise central problems associated with concurrency and distributed network communication related to wireless intelligent systems; 3. Design and program a wireless intelligent system;

4. Critically evaluate an intelligent wireless networked system application. 2 Introduction The aim of this coursework is for you to use the Telos Mote hardware and TinyOS software development environment to: 1. Perform some sensing. Specifically, if your student number is:

(a) a multiple of 2 (even), you should sense light level (PAR or TSR). 1 (b) not a multiple of 2 (odd), you should sense battery voltage. 2. Perform a calculation after sensing on the mote that performed the sensing. If the second digit of your student

number is: (a) < 4: find the average of the last 7 readings as a floating point number; (b) ≥ 4 and < 7: find the average of the last 5 readings as a floating point number;

(c) ≥ 7: find the difference between the last 2 consecutive readings. 3. Transmit the calculated value using the radio. 4. On receipt of any message: (a) print out the data received. Note, to print floating point numbers, use printfloat1. (b) if the originating sender is the same as the third digit of your student id and is not the current node, retransmit

The deliverable outputs of this coursework come in three parts: 1. The software—that is, the source code including Makefile— both in a zip file and as a PDF document. 2. An A4 poster describing and critically evaluating the software / hardware system (with an emphasis on diagrams and pictorial representation). 3. An in-class demonstration of the motes showing that they are responsive to environment changes and able to communicate.

3 What you will do 3.1 Developing the software It is recommended that you take a feature-driven development approach. That is, create the system in a series of stages and at each stage, the system should be functional and readily tested. The following is a sketch of a possible series of features: 1. Create a sensing system that can detect the light level on one of the light sensors and print it out to the screen. 2. Expand on this by performing some calculation (such as, filtering or calculating whether it is above or below a threshold). The resulting code should print both the original and computed values.

3. Further expand by transmitting data over the radio. This stage requires two motes to test. The second mote should be set up to print out any packets it receives. 4. Further expand by developing a forwarding algorithm based on 'flooding' to allow for multi-hop networking. 3.2 A4 Poster The A4 poster should provide: • A simple summary of the main features of your system. • A critical evaluation of the system as developed and any problems there might be in 'scaling up' (e.g., having larger number of motes or deploying for longer time).

• A description of how the system might be incorporated into a real-world application (e.g., home monitoring, theft detection, parking lot space detector). Please look at the notes for the first lecture for more guidance on possible real-world applications.

• A reflection on the design process and any strengths or weaknesses of the development approach. 1https://github.com/jbrusey/cogent-house/blob/master/tos/Util/printfloat.h 2 3.3 The demonstration Shortly after the hand-in date, a slot (during lecture or lab time) will be scheduled where you can present your work. For

this, you should bring: 1. all Telos motes loaned to you, pre-programmed with your code (as submitted); 2. a laptop on which you can demonstrate the system;

3. be ready to program additional motes that will be provided for the demo. 3.4 Checklist • Have you tested your code with several motes? (Additional motes will be loaned for lab sessions only).

• Have you submitted your source code including Makefile in a form that can be compiled? • Have you submitted an A4 poster describing your work?

• Are you ready for your demonstration? 4 How to submit your source and poster The source code should be submitted electronically using Turnitin on the link on the Moodle page. It is recommended

that you 'zip' or compress the source code files prior to submission. The poster should be submitted separately (separate Turnitin link) as a PDF document. Your source code should also be 'pretty printed' to a PDF documented and submitted to the Turnitin link on moodle.

One way to convert to PDF is to use enscript. For example, enscript --highlight=c --color --output - myfile.nc | ps2pdf - myfile.pdf

It is possible to merge several PDF documents using the convert command: convert myfile.pdf myotherfile.pdf merged.pdf