100 likes | 286 Views
Project Summary. Our project idea is to create a Pong game in which the paddles are controlled by Cricket motes.We are using an open-source Pong application as a basis for the graphical end of our project and adapting it to meet our needs.. Challenges. Our Pong game uses a busy-wait I/O protocol t
E N D
1. Mote PongFinal Presentation Tim Beach
David Heise
Benjamin Martin
2. Project Summary Our project idea is to create a Pong game in which the paddles are controlled by Cricket motes.
We are using an open-source Pong application as a basis for the graphical end of our project and adapting it to meet our needs.
3. Challenges Our Pong game uses a busy-wait I/O protocol to get information from the paddles. This causes the gameplay to be jittery.
It would be nice to implement an interrupt-based I/O protocol in order to fix this issue.
The precision of the mote position readings is a little low.
4. The First Step The first step that we proposed is to have one paddle controlled by a Cricket mote.
The Pong application has artificial intelligence built into it, so the user was able to play alone.
We completed the first step and moved on to the second step.
5. The Second Step Our second step was to develop the capability to have a two-player Pong game which is controlled using the cricket motes.
We divided up the work for this as follows:
Tim:
Calibration of Cricket motes.
Assist in coding to allow 2 players at once.
David:
Increase the refresh rate and speed of the Cricket Motes.
Assist in coding to allow 2 players at once.
Work on non-blocking I/O (Time Permitting).
Benjamin:
Improvement of Cricket mote measurement precision (Time Permitting).
Programming Cricket mote set for Player 2 paddle.
6. Experimental Setup
7. Results We each have made the following progress on our goals:
David
Extract mote-id and location distance reading from cricket mote output: 100%
Run I/O in a separate thread to allow game to run smoothly: 100%
Insert logic to allow for two human players: 100%
Allow for quick response time to paddle movements: 75%
Tim
Inserted logic to allow for paddle calibration: 100%
Assist in implementing two player logic: 100%
Benjamin
Develop 1-player Pong game which is controlled by Cricket motes: 100%
Program Cricket motes to output data for two paddles: 100%
Remove the need for a mouse interface in the Pong game (Time permitting): 100%
Write Cricket mote programming guide (Time permitting): 100%
My original goal was to reprogram the Cricket motes to provide millimeter measurements, but it took a long time to figure out how to install the development environment for the Cricket motes. In light of this, Dr. Wang said that I could instead write a guide on how to set up the programming environment.
8. Analysis We have developed a new interface to the classic Pong.
Overcame several technical challenges.
Get two paddles to communicate through one com port.
Blocking I/O.
Response time not as fast as hoped.
Crickets have limits due to packet collision.
Crickets have limited distance resolution.
9. Future Considerations Reprogram the Cricket motes to provide millimeter measurements.
Faster response time for the paddles. This in combination with a more precise measurement will ensure smooth and accurate game play.
Consider a new calibration technique. Require a calibration at the start of the game, have the game tell you what to do.
10. Demonstration
Demo
11. Thank You
Questions?