Open Exhibits Blog



CMME: Toolkit Source Code for Interactive

Written by Ben Jones

This computer-based interactive is the result of our Creating Museum Media for Everyone (CMME) work at the Museum of Science. In this post, we are including the source code so that individuals or institutions can repurpose the code for their own projects. A full description of this exhibit can be found in the Final Exhibit Component blog post.

In this interactive, we used a wind turbine dataset from our “Catching the Wind” exhibition. The dataset was used to create five scatter plot graphs, each with a trend line, which can be explored and sonified to the visitor through a touchscreen interface. There are physical buttons in front of the touchscreen that allow switching between each of the graphs.

In our exhibit we graphed five datasets. In the exhibit, each of the graphs is triggered through a button press, but when working with the source code, each of the graphs aligns with keystrokes 1-5, so that you can view each dataset individually. Pressing 7 will give you additional instructions about how to use the interactive, which is normally triggered by another button on the physical exhibit interface. The interactive has a time-out feature and the next person interacting with the interactive is assumed to be a new visitor. The interactive locks each new visitor into a tutorial, which explains how to use the interface. Control is given back to the visitor after the tutorial is finished.

The included source code is being released with precompiled executables for Windows and Mac OS. The executable and the datasets load dynamically in a configuration file. Both of these can be adjusted to fit your own data and look-and-feel.

The files can be downloaded by clicking here.

The Config XML file can be used to customize the following aspects of the interactive:

  • Datasets
  • Graph Titles
  • Axis labels
  • Time-out length
  • All images
  • All sound files
  • Size and color of data points
  • Size and color of trend line
  • Keystroke graph selection

A few things to note that are not customizable in this interactive through XML are:

  • Read aloud values less than 0 or greater than 9999
  • Decimal numbers (1.5, 2.7, 3.14, etc)
  • Number of tick marks on graph
  • Playback speed of sonification

If you want more functionality than the current program, the source code is available to be customized. This interactive was written in C# and is built to run on the free version of Unity.

We’d love to hear the cool things you’re doing with the source code for this interactive! Please share in the comments section below.

by View all posts by Emily O'Hara on November 18, 2014