team 6: radagast
DESCRIPTION
Team 6: RADAGAST. Team Members. claohaph. lmian. anoh. bpfiffne. jwu2. Chanin Laohaphan Mian Luo Andrew Noh Brian Pfiffner Jon Wu. Concept. Allow children to enjoy painting in real time on a collaborative digital canvas with smart phones - PowerPoint PPT PresentationTRANSCRIPT
Team 6: RADAGAST
Team Members
Chanin LaohaphanMian Luo
Andrew NohBrian Pfiffner
Jon Wu
claohaph
lmian
anoh
bpfiffne
jwu2
Concept
• Allow children to enjoy painting in real time on a collaborative digital canvas with smart phones
• Existing systems are usually web based and the modes of input required are unsuitable for children. Our system is simpler and more intuitive for children
Requirements
Functional requirements: • Accepts user inputs and converts data to positions and
effects on the canvas• The system will have a defined network protocol to allow
for interoperability between multiple clients and server devices
Reliability requirements: The system will degrade gracefully from connection lossSecurity requirements: The server will support a connection limiting systems for
users
Architecture
Components• X86 computer• Projector• Smart phones
User interface of our system:
Experimentation Campaign
• Metrics: Latency, throughput (from server and client)
• Measurements: Profiling (gprof, traceview), client -> server simulations
Results: Android profiling
Results: Client simulation
Insights from Measurements
• Latency increases linearly as the number of clients increases
• Client display is the bottleneck because on Android, you have to redraw the whole screen every time you want to add something to the drawing
Performance
Strategies to improve the performance• Update the touch screen less often• Reduce the bitmap buffer size on the touch
screen so redrawing takes shorter time• Limit debugging tools to reduce the bus
pressure
Conclusions
What we accomplished:• Basic multi-client implementation• Limiting number of users, waiting queueOpen issues:• Wands• Other smart phones (iPhones)• Additional modes (offline mode)
Conclusions
What we would do differently:• Make our goal clear by communicating with
sponsors so we don’t spend time developing features they don’t desire (using smart phones to calibrate and draw by reading accelerometer data)
Conclusions
What we learned:• Android programming• Developing over multiple platforms• Good planning saves lots of implementation time• Commenting code is invaluable• Reading and interpreting data from phone compass
and Wiimotes• Choosing hardware we are familiar with or with good
documentation
Demo Video
• Demo Video
Thank you !