Transcript Slide 1

MotoFreedom
Dec 06-08 Team
Iowa State University
Team Members




Shariq Siddiqui (Team Leader) - EE
Andrew Charlet (Communications) - CprE
Ahad Mir - EE
Donghoo Kim - EE
Project Client
 Motorola
Mr. Michael Pearce
Faculty Advisor
 Dr. Sang W. Kim
Agenda
•
•
•
•
•
Introduction and Problem Statement – Shariq
Functional Requirements and Phone Details - Andrew
Technical Considerations - Kim
Home Display Unit GUI Details - Ahad
Home Unit Coding Details - Shariq
Problem Statement
• Alzheimer’s disease and dementia currently affect a large and
growing segment of the population.
• Most people who are initially diagnosed with these conditions cannot
be immediately placed in a care facility.
• They cannot live on their own; a close family member typically stays
in close contact in order to take care of them.
• This situation can become extremely stressful for both the caregiver
and the cared-for due to the constant presence required to ensure
the safety of the cared-for person.
• The proposed solution includes an easy to use communication
system that will help both the patient and caregiver to communicate
with each other.
• They can communicate via voice, video and text.
Intended Users & Uses
Intended Users
• Alzheimer’s patients
and Caregivers
• Elderly people
• Handicapped people
• Families
Intended Uses
• Communication
between Alzheimer’s
patient and caregiver
• Replacing existing
home phones
• Providing message
service
• Can be used in
offices
Functional Requirements
•
•
•
•
•
Home Display Unit
Home Display Unit is a wall mounted device which has
the following functionalities:
The home display unit shall have one button push to talk
capability and the button will be on the lower corner of
the screen.
The home display unit shall have easy to use graphical
user interface (GUI) for the patient.
The home display unit shall have data transfer capability
with the caregiver’s communication device.
The home display unit shall have built-in mic. and
speaker capabilities with volume control.
Functional Requirements
•
•
•
•
•
Communication Device
Communication device is for the caregiver which
has the following functionalities:
Communication device used is a cell phone.
The communication device shall have existing
enabled cellular service.
The communication device shall have a
programmable GUI.
The communication device shall have data
transfer capability for voice and data
communication (up to several messages).
System Diagram
Cell Phone Details
Andrew Charlet
Cell Phone Software
• Custom coded Java application for the cell
phone. One application that will
encompass all the tools to communicate
with the Home Unit in one place.
• Voice Call
• Text Messaging
• Video Message
Software Development
Requirements
• Eclipse
• Eclipse ME
• J2ME
• Sun Java Wireless
Toolkit 2.2
Software Development
•
public VaderCanvas(DemoVaders midlet) throws
IOException{
– super(false);
– this.midlet = midlet;
– setFullScreenMode(true);
– height=getHeight();
– // initialize the layer manager
– layerManager=new VaderManager(this);
}
•
protected void sizeChanged(int width, int height){
layerManager.setViewWindow(0,0,getWidth(),
getHeight());
layerManager.reDrawDisplay(height-this.height);
graphics.setClip(0,0,getWidth(),getHeight());
this.height=height;
}
Testing Environment
• Primary development
phone the A1000
• Provides a fully
functioning Emulation
• Ability to roll back
phone versions with
backup capabilities.
Cingular
•
Nation 450 w/Rollover $39.99
450 Daytime
5000 Night-Weekend
Unlimited Mobile to Mobile
•
Data Connect Unlimited $44.99 Unlimited
Internet Data
•
Pay As You Go Unlimited Mobile to Mobile
$0.10 per minute Daytime
$0.10 per minute Night/Weekend
$1.00 on days you use your phone
•
Pay As You Go $.25 per minute
$0.25 per minute Standard Call
$0.25 per minute Night and Weekend
$0.00 Daily Charge
T-Mobile
•
Get More $39.99
600 Minutes
Unlimited Weeknight Minutes
Unlimited Weekend Minutes
•
T-Mobile Total Internet $49.99
None Minutes
Unlimited Data/Month
Unlimited Email/Month
•
Pre-Paid
Price
Minutes
Expiration (Days)
$10
30
30
$25
130
90
$50
400
90
$100
1000
365
Technical Considerations
Donghoo Kim
Touch screen home device
• Convertible Laptop XP based (Gateway® CX200S)
• The least expensive.
• Allows for a wide array of software applications to be run
on this system.
• There is a keyboard and mouse on the unit .
• A wide variety of extras such as DVD players and
expandable hard drives.
• Offers more options than this project requires .
A1000
•
•
•
•
•
•
•
•
Supported Wireless Networks
3G UMTS (WCDMA 2100), GSM 900/1800/1900
GPRS
Supported Technologies
J2ME, SMS, MMS
Operating System
Symbian 7.0
Data Input Method
Touch Screen
Device Screen Size
208 x 320 TFT (65K color)
Full HTML Browser
Opera 7 Browser with small screen rendering
Device Feature Highlights
3G UMTS, Streaming, capture, and playback
audio/video, PIM application, 24 MB User Memory,
TransFlash card, A-GPS for location services,
Symbian 7.0/UIQ 2.1, C++, SMS/MMS, Email: POP3,
IMAP3, USB, Bluetooth
E680i
•
•
•
•
•
•
•
•
Supported Wireless Networks
GSM 900/1800/1900 GPRS
Supported Technologies
WAP 2.0, J2ME, MMS, Magic 4 IM
WAP Browser Version
MIB 2.2
Operating System
Linux
Data Input Method
Touch Screen
Device Screen Size
Portrait Mode: 240 x 320
Device Feature Highlights
Tri band, MMS, Integrated digital camera (VGA quality),
MPEG4 video capture/playback, Wireless IM, Email,
Stereo 3D speakers, MP3 music/ringtone download and
playback, MIDI music, Embedded, portable, and online
Java games, Customizable UI skins, 50 MB internal
user.
Phones Selected: A1000
reasons for selection
• Runs the Symbian operating system.
• It seems like future phones will start to use this OS as
well.
• Was selected as a test phone because of its similar look
and layout of the phone.
The Home Display Unit GUI
Ahad Mir
The Home Display Unit GUI
• Easy to use - Touch Screen
• Main GUI made by Visual C ++
• Contains different buttons to control the communication
process
• Buttons connected at backend to SKYPE API functions
• Contains a single button to make or receive calls
CALL button
• The purpose of the
CALL button is to
make and receive
calls for the patient
• Runs the appropriate
API function to make
or receive call
Volume Control Button
• The volume control is
in the form of scroll
bar for the ease of
use for normal people
• Has mute function
Voice Mail Button
• The system allows
the caregiver/any
caller to record voice
mails
• Recorded messages
are retrievable
through this button
Customize Button
• Only for the care giver
• Gives the flexibility to
the caregiver to
update the cell
number
• Allows to update IP
Address
Add Ons
•
•
•
•
•
•
Different functions – can be added using API functions
Call Scheduling
Caller ID
Address Book
Things to Remember
Morning Alarm
Coding Details for Display Unit
Shariq Tehsin
Display Device Software
• The display device software uses the Skype API
• The Skype API passes commands in simple text
messages between Skype and client applications and
devices
• The Skype API has two main components; the Skype
phone API and the Skype access API.
• The display device software uses the Skype access API.
Skype Access API
• The Skype access API enables external applications to
control certain Skype functions,
• For example to place a call
Characteristics of Skype API
• All actions performed using the API are mirrored on the
Skype client
• All times and dates in the API are in UTC (Coordinated
Universal Time)
• Multiple applications can use the Skype access API at
the same time.
• Transmission over the API is in UTF-8 encoding.
Initialization
• Use the RegisterWindowMessage method to register
• To initiate communication, a client application broadcasts
the SkypeControlAPIDiscover message
• Skype responds with a SkypeControlAPIAttach message
Communication between Skype
and Client program
• The client application issues a command to control
Skype
• In reply to some commands, Skype returns a
synchronous response
• Skype objects are application, call, chat, chat message,
profile, user, and voicemail.
Commands
• CALL command (Use the CALL command to make a
call)
• Set CALL INPROGRESS command (Use the SET CALL
INPROGRESS command to take an incoming call)
• SET CALL FINISHED command (Use the SET CALL
FINISHED command to end a call)
• SET CALL ONHOLD command (Use the SET CALL
ONHOLD command to place a call on hold)
Message Receive Code
 The display device software uses the sockets to receive
the text message
Questions?