This project will allow children to enjoy painting in real time on a collaborative digital canvas regardless of physical location. This project will integrate smart phones, wands with off-the-shelf embedded components and the display system.
Existing remote collaborative painting systems are usually web based and the modes of input required are used unsuitable for children. With our system, children will be able to collaborate using a simpler pointing mechanic to paint.
Imagination cubed: an online collaborative whiteboard http://www.imaginationcubed.com/ Our project supports a wider variety of input methods that are suitable for children to use and supports more simultaneous users.
Wii: A potential competitor to our system. All that is required is a software component. http://www.wii.com/ Our project has remote modes of input via cell phone side applications.
Functional requirements: Accepts user and sensor (accelerometers and magnetometers) 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 client (wand, cell phone) and server (local projector / system) devices.
Timing requirements: Any changes on canvas will take less than half a second to take effect.
Reliability requirements: The system will degrade gracefully from connection loss
Security requirements: The server will support an authentication and connection limiting systems for remote users (smart phones, other servers)
Testing the server will be done by writing a program to simulate client data and traffic. This program will connect to the server and continuously send messages while measuring round trip latencies of message sending and recieving.
We will measure latency as a function of number of clients connected while clients send messages at a nominal rate. We will also measure max throughput in the form of messages per second that the server can handle.
The program will also include a functional verification of the protocol by simulating a normal client connection, interaction and disconnection.
Wands (wiimotes):
Testing the wands will be done by simulating multiple connections through the ZIGBEE protocol. Similar to the server testing we will continuously connect and send messages to test latency of message send/receive. (The amount of data we can get and process through the IR camera)
Metrics (server <=> client):
Latency
Throughput
Measurements
Profiling (gprof, traceview)
Simulated client to server connection stress tests
The two figures above represent simulation load testing done to test
multiple clients, each point represents a single client (of that # of clients)
test, over the multiple trials the test was run. (Multiple trials, and multiple clients
on each plot). Notably, the data appears linear as we would expect (grows w/ number of clients)
Physical phone results:
The boxplot below shows the data of the following test. The test is drawing a horizontal line on the phone on the touch screen.
We wait until the entire line returns to be drawn on the screen and time that.
The number of points drawn in the line are averaged out, and we measure
time of transmission.