TEAM 7: Eye HOME
Spring 2007


MEMBERS

PROJECT CONCEPT

This project will inform a home owner in case of fire or break-in at the house by text-messaging to the owner's cell phone.
This prototype utilizes smoke and motion sensors. The main frame will send out a text message to the owner of the house when the sensors detect a problem in the house.

MOTIVATION

Because not many residential structures have a smoke detector wired to the fire department, it is hard to recognize the fire without seeing the smoke coming out of the windows.
Furthermore, the residents of the house are usually not the first ones to find out unless they are already in the house. The situation gets even worse in case the resident is away from the home, on a long trip.
Using our prototype, we can provide home owner a monitoring system that notifies homeowner through SMS service.

COMPETITIVE ANALYSIS

      Use CasesFirst Alert SA302 Smoke Alarm

TECHNICAL SPECIFICATIONS

Hardware:

Software: Protocols:

REQUIREMENTS

ARCHITECTURE

Software Architecture

USE CASES (INTERACTION DIAGRAMS)

SYSTEM STATES & TRANSITIONS

Risks and Mitigation

  Risks Mitigation
Fundamental Sensor compatibility Extra battery for input; ok with output voltage
Interference Timeout and retry (application)
Loss of Internet connection Outside scope of project
SMS server down Outside scope of project
Ancillary Battery drains Timeout and retry , lowpower mode
False alarm Calibration

ERROR HANDLING

IMPLEMENTATION DETAILS

Structure Code Implementation
Mainframe(PC) Mainframe.java Monitors hearbeat, Communication between server Tmote and Sensor Tmotes
Application.java send text to SMS gateway
Mainframe(ServerTmote) CountReceiveC.nc Wire Main, CountReceiveM, HPLUARTC, GenericComm and LedsC
CountReceiveM.nc Receives Message from Sensor Tmote and forward the message through UART
CountMsg.h src = id of Sensor Tmote; n = message of Sensor Tmote
SensorTmote OscilloscopeTmoteSky.nc Wire Main, TimerC, HmamatsuC, CC2420ControlM, HPLCC2420C, GenericComm
OscilloscopeTmoteSkyM.nc Monitors sensor every 500ms and send data to ServerTmote when target value is detected
CountMsg.h src = id of Sensor Tmote; n = message of Sensor Tmote

TEST CASES

Name
Why
How
Evaluation Criteria
Bootstrap To test the starting sequence

Plugging in the server Tmote to the Mainframe PC

Fault-free
Teardown To test the ending sequence of the mainframe

Plugging out the server Tmote from the Mainframe PC

Fault-free
Repeated Bootstrap + Teardown

To test the start after repeatedly turning it on and off

Plugging the server Tmote in and out four times within five seconds, then plugging it in.

Failure-injected

Normal Operation To test the normal operations of all the components

>Start Mainframe
*See if Mainframe checks sensor Tmote connectivity
*See if Mainframe checks Internet connectivity

>Generate problem
*See if sensor Tmote sends problem (Tmote ID and Sensor type)
*See if server Tmote sends confirmation message
*See if Mainframe successfully sends data to Clickatell SMS Gateway
*See if Nokia E61 successfully receives message with correct problem information

Fault-free

Internet Disconnection To test the Mainframe's message queue system

Plugging out ethernet cable during the process of sending the emergency SMS

Failure-injected
Sensor Tmote Disconnection To test the sensor Tmote's message queue system Blocking communication between sensor and server Tmotes while sensor Tmote detects a problem

Failure-injected

SMS Gateway Down To test the Mainframe's exception generation Trick the system into thinking that the system is connected to the Internet and send an emergency SMS

Failure-injected

Installation/Configuration
on another PC

To test the portability of the code Using an installation script on another Linux machine

Fault-free

EXPERIMENTAL EVALUATION (Need To be fixed)

LESSONS LEARNED

  • Low-priced sensors are fishy
  • Some datasheets are not documented well
  • FUN STUFF

    "COME WITH ME IF YOU WANT TO LIVE"

     

    REFERENCES


    Back to the top of this page
    18-549 course home page