Katrina And Maya

by Katrina Wisdom and Maya Kherani

bOunce is a Haptics Based, Resonance
Learning Game.

bOunce is a haptics-based learning game system that teaches the concepts behind wave dynamics, and in particular, resonance. The bOunce device (an adaptation of the Haptic Paddle) allows a user to "bounce" a ball in a virtual environment. By feeling the haptic force feedback from the virtual ball, as well as seeing the ball's waveform trajectory in the virtual environment, the user strategically times his or her force input in order to make the ball to bounce to a certain goal height in as short a time as possible. The game contains three distinct "levels": bouncing a large ball, a small ball, and a small ball underwater. The users are encouraged to make hypotheses about the ideal driving frequency for the system on each level. The game's competitive aspect, as well as its educational motivation, make it ideal for middle- and high-school settings. During the demo day, bOunce was successful in teaching wave dynamics concepts, helping students practice making hypotheses and conclusions, attracting users, and imbuing a sense of enthusiasm for physics and educational applications of haptic systems.


This project was motivated by the need for students to intuitively understand abstract physics concepts. Students struggle with topics related to waveforms (amplitude, frequency, phase, interference, resonance) simply because they cannot see or feel these phenomena. The bOunce device displays these effects and allows a user to interact directly (by matching the resonant frequency of a bouncing ball). This activity greatly enhances learning about waves, with relevance to many fields of science and engineering: electromagnetism, sound, mechanics, optics, and oceanography.


Perkins, et. al, "Interactive Simulations for Teaching and Learning Physics" [1]
Perkins et. al. have developed multiple web-based game-like simulations for use in teaching physics concepts at the high school and college levels. These simulations aimed to: (1) increase student engagement and (2) improve learning through exploration. The simulations focus on creating visualizations of phenomena that are not normally visible to the human eye (atomic/particle movements, electric fields, etc.). Using these simulations in lecture has been shown to motivate unprompted high-quality questions and comments from students. The Wave-on-a-String and Radio Waves programs graphically display the concepts of frequency, amplitude, interference, etc. In the Masses and Springs program, students learn about damped oscillation through the lifelike look of the graphics, which mimics the students' real-world experience. The student feedback to the use of these simulations was largely positive, and many students appreciated the ability to quickly manipulate the programs to investigate new effects. Furthermore, students commented on the helpfulness of visualizing concepts that are normally not visible.

This study indicates that visualization of abstract physics concepts is helpful for student learning. However, Perkins et. al. have developed a purely visual interface - we still see a need for haptic-based learning for students who do not identify with visual learning and to enhance the learning of students who do. Our device incorporates the visual elements presented above in our graphical interface, but also adds haptic interaction to further improve learning.

Lee, "Pendulums: A Hands-on Way to Experience Resonance" [2]

Figure 1. Pendulum System Designed
by Lee [2].
Lee has developed a set of hands-on pendulum activities to teach wave concepts such as frequency, amplitude, and resonance to students in middle school. Using simple construction techniques, Lee outlines the procedure to build various pendulum systems out of 2 liter soda bottles, strings, and film canisters filled with coins (see Figure 1).

Students are encouraged to alter the modular setup (lengths, masses, number of hanging objects, etc.). Based on these changes, students are able to manually input forces and witness the differences in behavior, depending on the system. Students are also encouraged to make hypotheses, record observations, and deduce conclusions. These activities are cost-effective, simple to assemble, and allow the students to feel the resonance of a system, an aspect that our device will also capture. However, parameter manipulation requires the student (or teacher) to build an entirely different apparatus with the specified parameters. Our device, by contrast, enables the student to investigate a different system by flipping a single switch to instantly change a parameter (changing the level).

Berner, "Resonant Wineglasses and Ping-PongTM Balls" [3]

Figure 2. Resonance Demonstration
Apparatus Designed by Berner [3].
Berner has designed a system that uses a signal generator (visualized by vibrating ping-pong ball) to break a glass container, in order to create an effective physics demonstration of resonance. A glass is chosen with a stem, so that it can be supported (see Figure 2). A high-frequency sound is driven near the glass, and when the natural resonance of the glass is achieved, the ping-pong ball starts to vibrate within. The amplitude of the signal is increased until the glass breaks. Using strobe lights, the students are able to estimate the oscillation mode of the glass. Everyone present for the demonstration is required to wear ear protection, and the glass apparatus must be properly shielded for safety.

Berner's demonstration has quite a dramatic effect; however, the students' experience is passive. They simply watch resonance in action, which (although remarkable) limits the interaction between the student and the abstract concept. Furthermore, the materials required are costly, and there are significant safety concerns. Therefore, this is not a practical demonstration to be employed in a high school or middle school setting. It is one better suited for a college-level lab. Lastly, this demonstration operates at one set of parameters and cannot be manipulated by the students. Our device is successful in addressing these concerns.

Huang, "Haptic Feedback Improves Manual Excitation of a Sprung Mass" [4]
It has been previously shown that users who were given haptic feedback when forcing a dynamic system, rather than relying on visual feedback alone, were able to more consistently and more quickly determine the resonant frequency of the system. These users were asked to excite a handle directly attached to a spring mass damper system in front of them; haptic feedback, sometimes coupled with visual feedback, were meant to inform the users efforts to find the resonant frequency. Although effective, this device is not necessarily "kid-friendly", thus, our device builds upon this user experience by making it more accessible to kids and teenagers.

Figure 3. Spring-Mass-Damper System
part of user experiments in Gillespie [5].

Gillespie, "Stable User-Specific Haptic Rendering of the Virtual Wall" [5]
A virtual environment model for a bouncing ball has been previously developed by Gillespie and Cutkosky. For this system in particular, gravity rather than user input is the driving force on the ball. This strategy circumvents a notable modeling complication arising in both [4]' and [5]' related to the user's ability to vary the impedance of the input, which is not predictable and is thus difficult to model. Instead, a ball driven by gravity (a predictable driving force) represented the "user input", serving as an allegory to inform controller design for a system.

We ultimately decided to simulate our system as a simple spring-mass-damper system, neglecting the effects of gravity, in order to circumvent the complications discussed. This analogy was successful in providing a compelling haptic sensation for the users of bOunce.

Young et. al, "Learning Force Concepts Using Visual Trajectory and Haptic Force Information at the Elementary School Level" [6].
The educational paradigm inspiring bOunce came largely from the work of Young et al. on teaching elementary school students about buoyancy with haptic simulation activities. Fourth and sixth grade students were given a pretest on concepts related to buoyancy before advancing through a series of teaching activities. Both subgroups involved in the study received visual feedback as they picked up blocks of different material properties and placed them in tanks of liquid. However, only one received force feedback, allowing only this group to feel the buoyant and gravitational forces on the blocks throughout the activities. After finishing the activities, both subgroups were given a posttest that was identical to the pretest, but with answer choices reordered.

The activity allowed posttest scores to improve across both age groups and across both user subgroups (visual and visuohaptic). It was promising that although the 4th and 6th grade students started from different math and science backgrounds, they arrived at comparable levels of posttest understanding. This result indicates that the researchers enabled experiential learning of a science concept that was equally accessible to the two age groups, despite the discrepancy in math and science foundations. However, test results did not indicate that the addition of haptic feedback allowed for statistically significant improvement in learning. The researchers suggested using test questions that more accurately tease out the effect of haptic feedback (i.e. not using questions that referenced only visual cues during the activities) in later iterations of the user study. More appropriate questions might lead to more promising results that make a better case for adding haptics into educational curricula.

In considering how to design user studies for bOunce, the importance of careful test question formulation, highlighted by the work of Young et al., should be kept in mind. See Future Work for more information.


Hardware Design and Implementation

An Arduino and Ardumoto Shield were used to interface between the system hardware and the virtual environment. Their low cost and user-friendly functionality make them a good choice for design and implementation of haptic educational modules.

Figure 4. Circuit Diagram of a
Single Switch.

The bOunce user interface hardware is an adaptation of the existing Haptic Paddle kit [7]. The original sector pulley handle is replaced by the bounce adapter. External switches were implemented in order to change between levels of the bOunce game. This was necessary because the Arduino could not simultaneously accept Serial user input while printing to the serial monitor of Processing, the graphics environment that displays the position and motion of the virtual ball.

A backgrounding box was added to keep hardware from distracting the users, but materials were kept translucent so that some transparency was preserved. Thus, some amount of teaching was enabled toward a separate educational goal of teaching users how the haptic system works.

Virtual Environment Analysis and Implementation

Figure 5. MATLAB was used to model the response of a
spring-mass-damper system to step impulse forcing
at a range of frequencies and find the "like-resonant"
frequency of the system.

MATLAB Simulation. The actual dynamics of a bouncing ball system can be extremely chaotic, involving bifurcation theory and colliding manifolds. We used a spring mass damper system forced by repeated step inputs (at a user-determined "step frequency") as a simplified model for the bouncing ball system. Our numerical simulations indicated that such a system reaches a kind of resonance that is analogous to the resonance achieved by driving a spring mass damper system at its natural frequency. (However, this "like-resonance" occurs at a different frequency than the true natural frequency of the spring-mass-damper system).

Programming. MATLAB simulation results informed the step input driven spring-mass-damper simulation in the Arduino programming. Different mass and damping parameters were applied to different levels of the game. The equilibrium ball, or mass, position was set one centimeter away (in arc length) away from the upright bounce adapter paddle. Once the user "bounces" the mass a certain distance by pushing the paddle, the simulation loops through the dynamic response of the mass and performs numerical integration to find the velocity and position of the ball, based on the paddle position sensed. See attached Arduino code for details.

Figure 6. bOunce graphical display using

Graphical Display. The ball position and timer information are then sent to Processing, allowing for the graphical display component of the game. The winning threshold and level are displayed along with the continuous, real-time position of the ball (y-axis) over time (x-axis). Plotting the bOunce results in this manner allows for students to understand how a single-axis oscillatory motion can be expressed over time in an x-y plane. Interpreting waves displayed in a position versus time display, rather than a two dimensional position display, was a particular point of confusion for students, as mentioned by a consulted high school physics teacher, that we hoped to address with our system. See attached Processing code for details.

Educational Demonstration

The educational merit of bOunce is threefold. Students gain the following: a physical understanding of wave dynamics, by inciting resonance behavior in a spring-mass-damper system inspired bouncing ball game; an understanding of the scientific method (Hypothesis, Experiment, Results, Conclusion); and an introduction to how to design and implement basic haptic systems.

Wave dynamics. An educational PowerPoint (selected slides shown) was designed to accompany the bOunce paddle and Processing graphical interface. Aside from instructions, the presentation serves to move the user through the different levels of the game (Training, Large Ball, Small Ball, and Small Ball Underwater). Parameters are kept the same between Training and Large Ball levels; mass is decreased between the Large Ball and Small Ball levels; and damping is increased between the Small Ball and Small Ball Underwater levels. Allowing only one parameter in the spring-mass-damper system to change allows the user to isolate the cause of the change in driving frequency and/or amplitude between systems of different levels.

The scientific method. Before the last two levels, users are led to make a hypothesis about what the optimal driving frequency will be for the next system. After the corresponding level, the powerpoint asks the user to think about the results, identify what variable changed, and make a conclusion either based on or by altering the hypothesis.

Introduction to basic haptic systems. Because the hardware is not completely backgrounded, interested students can see the Arduino and Ardumoto Shield, as well as the switch circuitry. This limited transparency allows for students to get an idea of the hardware behind the game while minimizing distractions and safety risks of exposing electrical hardware.


The overall results of the bOunce system were successful and encouraging. During the demo day, the high school students' reactions were enthusiastic, and they voted it "most creative" of the educational haptic systems on display. Following an introduction to the system, the students required a demonstration by an experienced user - their initial tendency was to hold on to the bOunce adapter, rather than pushing on it with a few fingers. Furthermore, many tended to push the virtual ball to the extreme end of the device's range of motion rather than using a dribbling motion. We had to clarify our instructions (sometimes multiple times) in order to elicit the desired interaction between the user and the device. We propose a method to address this point in Future Work.

Our system was quite robust and operated smoothly for about two hours. However, for the last thirty minutes of the demo, the capstan drive needed to be re-cabled twice, and the code needed to be re-uploaded. Despite the simplicity of the system components, we are satisfied the robustness of the device. We did not experience any major setbacks in device operations aside from five-minute breaks to fix minor issues.

We were fortunate to have a steady stream of visitors for the entirety of the open house, mostly as small groups of students. However, because we were not able to interact with each student one-on-one, our interactive PowerPoint (with game instructions) went largely unused. Most of the time, we were able to show users a summary slide of the results from the four levels (training through underwater). Ideally, an individual student would have walked themselves through the game with minimal outside input. Instead, we explained the concept of bOunce verbally to the group and asked for hypotheses in the group format. Then, the students could try out each level, while watching their classmates play the game as well. We would have liked for each student to try out all the levels in succession, but due to the number of students present, we did not have time. Furthermore, we remained cognizant of keeping the demo duration short and manageable. We noticed the students losing interest after about 10 minutes, so we kept our demo to that length (which meant that not all the students could try all the levels). Overall, the students left with a more intuitive understanding of wave dynamics and seemed to enjoy the exercise of testing their hypotheses.

Future Work

We propose a few improvements to the bOunce system's overall design and implementation. Firstly, the bOunce Processing environment seem to require a large amount of video card memory, preventing it from running on a laptop. In a future iteration, we propose using an alternative graphics interface that perhaps requires less memory and thus, is more portable. Secondly, we plan to make an instructional video (embedded in our game PowerPoint presentation) to clarify how to interact with the device. This would hopefully remove the need for a demonstration from an experienced user. Lastly, the device could be made with more robust parts and assembly methods, such as combining the sector pulley and bOunce adapter into one part to reduce mechanical fatigue. However, this would reduce the modularity of the Haptic Paddle in general. In future iterations, the circuitry, Arduino board, switches, and wiring could be encased in a smaller, more protective casing. Ideally, the system could be designed as a modular add-on to the existing Haptic Paddle kit to be used in a classroom setting.

The bOunce system could be tested using the pretest and posttest model provided by Young et. al. The user study would require the participant to answer a set of questions (see figure below) before using the bOunce device. The same set of questions (with answers in a different order) would be asked afterwards. To compare between visual and visuohaptic feedback, the participants would be split into two groups. For the visual-only group, the user would use the bOunce system, but without the force feedback, relying only on the visual representation of the ball's trajectory. The visuohaptic group would use the device with the haptic force feedback. The questions would need to be designed carefully to accurately isolate haptic learning enhancements.


The authors gratefully acknowledge Professor Allison Okamura, Nick Colonnese, and Ann Majewicz of the CHARM Lab at Stanford for their teaching and guidance in the Stanford course ME327: Design and Control of Haptic Systems. Thank you also to Professor Paulo Blikstein, Shima Salehi, and masters of education students for advice and access to the Transformative Learning Technologies Laboratory resources for device fabrication. Lastly, special thanks to Jeff Kessler and Sam Schorr for helpful conversations regarding programming in Arduino and Processing.



[1] Perkins, K., W. Adams, M. Dubson, N. Finkelstein, S. Reid et al. "PhET: Interactive Simulations for Teaching and Learning Physics," 2006. Phys. Teach. 44, 18. http://dx.doi.org/10.1119/1.2150754
[2] Lee, Mee-Kyeong. "Pendulums: A hands-on way to experience resonance. Science Activities", 2001. Science Activities 38(1), 29-33. http://search.proquest.com/docview/231085765?accountid=14026
[3] Berner, Bill. "Resonant wineglasses and Ping-PongTM balls". 2000. Phys. Teach. 38, 269. http://dx.doi.org/10.1119/1.880529
[4] Huang, F., R.B. Gillespie, and A. Kuo. "Haptic Feedback Improves Manual Excitation of a Sprung Mass." 12th International Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems, 2004. HAPTICS '04. Proceedings. (2004): 200207. http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1287197&userType=&tag=1
[5] Gillespie, R Brent. "Stable User-Specific Haptic Rendering of the Virtual Wall." n. pag. Print. http://www-personal.umich.edu/~brentg/Publications/Conference/asme96.pdf
[6] Young, J., Stolfi, C., Tan, H., Chevrier, J., Dick, B., and Bertoline, G. "Learning Force Concepts using Visual Trajectory and Haptic Force Information at the Elementary School Level." 2011. IEEE World Haptics Conference. Istanbul, Turkey. June 21-24. https://engineering.purdue.edu/~hongtan/pubs/PDFfiles/C56_Young_etal_WHC2011.pdf
[7] C. Richard, A.M. Okamura, M.R. Cutkosky, "Getting a Feel for Dynamics: using haptic interface kits for teaching dynamics and controls", 1997 ASME IMECE 6th Annual Symposium on Haptic Interfaces, Dallas, TX, Nov. 15-21. http://www-cdr.stanford.edu/touch/publications/richard2_asme97.pdf
[8] Igoe, Tom. (20 April 2005, updated 18 Jan 2008). Graphing_Sketch. (Version 1.0). [Processing] Available at http://arduino.cc/en/Tutorial/Graph. (Accessed 11 Dec 2012).


Checkpoint 1

ORIGINAL GOAL: Fabricate prototype and have first draft of code.

Goal Breakdown:

  • Design and prototype paddle attachment - DONE
  • Create MATLAB simulation of bOunce game dynamics - DONE
  • Modify Arduino code - DONE
  • Begin graphic rendering in Processing - DONE

The Haptic Bouncer Device

  • We have drawn our parts additions to the Haptic Paddle using Solidworks
  • We laser cut prototype parts (3 different sizes to test for the user handle). We saw we needed to adjust the tolerances of our parts, so we printed a second round of prototype parts as well.
  • We assembled a first prototype of our haptic bouncer with super glue, incorporating the motor newly machined with a flat for better mechanical grip between the motor shaft and capstan drive. See video in "The Virtual Environment" section to see the prototype in action.

Modeling the Dynamics

  • As it turns out, the dynamics of a driven bouncing ball system are extremely chaotic [1]. Modeling such a system requires understanding of high level mathematics such as bifurcation theory, mapping between different order manifolds and modeling collision of manifolds, etc. Incorporating this theory into our game is beyond the scope of this project, so we have decided to stay with the spring-mass damper analogy.
  • We built a model in MATLAB of a spring-mass-damper system driven by a step input (the "push") at specified intervals. We learned that this step-input model system reaches a quasi-resonance at a frequency different from the natural frequency, defined as sqrt(k/m), of the system. We thus established that the spring-mass-damper system would still be a good analogy, as it demonstrated resonant behavior (although this is a different sort of resonance).
  • We structured our code to find the resonant "frequency" of the system (defined as the time between step impulses given by the user) given other system parameters. See figure below for the results of our simulation code. Here, the "resonant" frequency of the step impulses should be 1.15 Hz, as determined by MATLAB, for the given parameters.

The Virtual Environment

  • We successfully incorporated Arduino Processing into the prototyped game to visualize the position of the "mass", or ball. Adding this component allowed the game to take shape, which was very exciting! The action of bouncing a ball was significantly more intuitive with our paddle attachment than it was with the original Haptic Paddle. See video below!

Other Tidbits

  • It was great rubbing elbows with some of the students in Paulo's Lab! Some of the students taking his class have experience teaching. They have agreed to try out our prototype and give us feedback on our system design.


  • Finalize the device design (parts are still a little loose) and incorporate printed vinyl for aesthetic/ user-friendly/"begs to be used" component of device.
  • Adjust the spring-mass-damper system Arduino program previously established to represent different balls (basketball, ping pong ball, etc.)
  • Add a timer to record the elapsed time between when the game begins and when the user is able to make the ball reach a winning height with enough strategic step-impulse "bouncing". This will allow for the competitive aspect of the game.
  • Add a switch to make game have a definite "START" point.
  • Integrate processing into the game in more sophisticated ways (i.e. add background photos, choose more attractive colors, etc.)

[1] Everson, R.M. "Chaotic Dynamics of a Bouncing Ball." Physics D: Nonlinear Phenomena 19.3 (1986): 355383.

Checkpoint 2

Goal Breakdown:

  • Finalize the device design (parts are still a little loose) and incorporate printed vinyl for aesthetic/ user-friendly/"begs to be used" component of device. -DONE
  • Adjust the spring-mass-damper system Arduino program previously established to represent different balls (basketball, ping pong ball, etc.) -TO BE DONE (see below)
  • Add a timer to record the elapsed time between when the game begins and when the user is able to make the ball reach a winning height with enough strategic step-impulse "bouncing". This will allow for the competitive aspect of the game. -DONE
  • Add a switch to make game have a definite "START" point. -GOAL ALTERED, so TO BE DONE (see below)
  • Integrate processing into the game in more sophisticated ways (i.e. add background photos, choose more attractive colors, etc.) -DONE

The Haptic Bouncer Device

  • We printed several iterations of our parts to get the tolerances correct. We made the paddle aesthetically pleasing by using colored acrylic and adding our vinyl printed logo on the side of the paddle.

The Virtual Environment

  • We added a timer to track the time elapsed between beginning a level and when the user is able to make the "ball" reach the winning height. Also, once the user "wins" the game, he or she will not feel any force from that point on. Thus, we are able to ensure stability.
  • We added a switch case to allow for the user to input the level he or she would like to play into the serial monitor. The simulation parameters change according to this input. However, we are encountering a problem in that we cannot use both the serial monitor and the Processing monitor at the same time. This means that the user will need to indicate which level he or she would like to play with a physical switch (soon to be implemented).
  • We have switched the balls from basketball and ping-pong ball to large bouncy ball and small bouncy ball, to reduce the number of changing variables. Hopefully, this will make the physical concepts clearer for the students.
  • We incorporated a playful background, and plan on changing the background depending on the level. We have designed the graphics to illustrate the concept of waves and resonance, so that the user actually sees wave behavior as they "bounce the ball."
  • We have a few kinks to work out with the graphics and how to reset the Arduino and Processing code in between trials (we will probably need a physical switch), but overall the game is coming along well!

The Activity and Teaching:

  • We have started on the activity questions, pre-/post-test questions, and poster for our system. The game will be coupled with a PowerPoint (on a separate computer) that will prompt the user to make hypotheses and provide the resonance teaching information.

Other Tidbits
Special thanks to Shima Salehi for giving us a tutorial on the vinyl cutter, and to Sam Schorr and Jeff Kessler for helpful conversations regarding Arduino and Processing programming.


  • Talk to Ann/Nick about incorporating switches to allow the user to indicate which level he or she would like to play. We will probably need about 3-4 toggle switches.
  • Finalize parameters for different levels.
  • Add ball/picture/indicator of which level the user is on and/or change background of Processing graphics depending on which level the user is on.
  • Include software reset in between levels (so that hard reset button on Arduino does not have to be pushed).
  • Create "backgrounding" box to hide the Arduino and most of the sector pulley. Only the blue paddle will be visible to the user.
  • Finish up the PowerPoint activity presentation, pre-/post-test questions, and the poster.
  • (Ideally, if time) : Make Plywood-2 balls-2 springs physical demonstration of how the virtual environment is approximating a bouncing ball with a spring-mass-damping system.

Checkpoint 3

Goal Breakdown:

  • Incorporate switches to allow the user to indicate which level he or she would like to play. - DONE
  • Finalize parameters for different levels. - DONE
  • Add ball/picture/indicator of which level the user is on and/or change background of Processing graphics depending on which level the user is on. - ADDED TEXT WITH HIGHLIGHTS, ADDED BACKGROUND PICTURE CHANGE
  • Include software reset in between levels (so that hard reset button on Arduino does not have to be pushed). - DONE W/ SWITCHES
  • Create "backgrounding" box to hide the Arduino and most of the sector pulley. Only the blue paddle will be visible to the user. - STILL TO BE DONE, PROTOTYPE DONE
  • Finish up the PowerPoint activity presentation, pre-/post-test questions, and the poster. - DONE
  • (Ideally, if time) : Make Plywood-2 balls-2 springs physical demonstration of how the virtual environment is approximating a bouncing ball with a spring-mass-damping system. - STILL TO BE DONE

Latest update video:

The Haptic Device

  • We incorporated 3 rocker switches to allow for the user to change what level he or she is playing. The levels are: #0 Training, #1 Large Bouncy Ball, #2 Small Bouncy Ball, and #3 Small Bouncy Ball 'Underwater'. The switches are connected using breadboards.
  • We are in the process of designing and creating a small casing to house the switches in a more attractive way. Our goal is to interface these switches in our overall case design, which will background everything but the paddle. We may also use fabrics to enhance the attractiveness of the overall design.

The Virtual Environment

  • As mentioned above, the switches were added, and the code was re-designed to allow for user input. The game also "resets" when a switch is toggled allowing for the user to control the game start time. Thus, the Arduino's on-board reset button does not have to be used, making it much more user-friendly.
  • Furthermore, the parameters for each level were finalized. The differences in the ball behavior are very clear from the haptic and visual feedback. The user can clearly see and feel changes in required driving frequency and respective wave properties. Thus, we have succeeded in creating a concrete way for students to interact with the abstract concepts of wave dynamics.
  • The graphical background was improved, so that the underwater level has a different image background. Also, the level of play is indicated with text in the right hand upper corner, while the user's win time appears in the upper left corner. These texts are highlighted using a white background, so the user can easily see his or her performance for each level.

Educational Tools: Game Presentation and Poster

  • The game PowerPoint was improved so that it is interactive. Now the user can navigate through the game without the need for someone to run the presentation simultaneously. Furthermore, our processing code automatically takes screenshots of game performance, and the PowerPoint dynamically shows the user's results within the presentation.
  • Our poster has been designed to guide the user in using the device and employing the scientific method in their game-play.
  • If time, we would like to implement pre- and post-test conceptual questions to gather some preliminary data on the efficacy of our device in teaching wave concepts. This is an area for future investigation.


  • Run simulations with "malicious" users to make sure the game is robust enough to handle a variety of users.
  • Create attractive "backgrounding" box with housing for switches
  • (If time) Create a ball/spring physical demonstration to illustrate our virtual environment.