Last week we conducted our first Gadgeteer workshop for a test audience comprising 18 Master-level students within the context of our advanced HCI lecture. After a short introduction to the Gadgeteer platform, C# and its quirks, we made every group build a digital camera with components from the basic Gadgeteer kit. It was interesting to observe how they split up the tasks of component assembly, programming and tangible frame building (we gave them several breadboards and pins to attach components to).
Camera with Display
Text Entry Challenge
This initial tinkering with the camera component went quite smoothly and so we moved on to the main part of our workshop. In class we had recently discussed various text-entry methods such as T9, FrogPad and Twiddler. Therefore we proposed the following challenge: We formed 4 groups consisting of 4-5 students. Each group received a basic gadgeteer kit including the following components:
- UsbClientDP module
- T35_display module
- Button module
Additionally we handed each group a random sensor and asked them to build a device for text-entry. After 90minutes they would have to type in the phrase:
"rapid prototyping with gadgeteer"
We would stop the time it took each group to write out the phrase to the screen using their input devices. These are the sensors we picked:
- IR distance sensor
Game on! Only 15minutes in our compass group presented a first prototype browsing through the alphabet using compass readings. We were aware of the fact that some input methods were more obvious and easier to tinker with than others, but life is not fair anyways. And so the group using the IR distance sensor ran into first problems when having to use the analog extension module in order to read values from the sensor.
Here are the prototypes our students created:
1. Text entry through compass:
Group 1: Compass and button as text input
This group figured out how to use the cardinal direction as discrete input to select a letters from the alphabet. The button was pressed to confirm the selected letter and send it to the screen.
2. Text entry through accelerometer:
Group 2: Accelerometer and button as text input
Using the accelerometer this group designed an input device that browsed through the alphabet by tilting the breadboard. Left tilt: Previous letter, right tilt: Next letter, and a backward tilt to correct errors. A button press confirmed the selected letter.
3. Text entry through potentiometer:
Group 3: Potentiometer and button as text input
This group found a way to cycle through the alphabet by reading the potentiometer’s values and was therefore able to move back and forth rather quickly. Again, a button press confirmed the current letter selection.
4. Text entry through IR distance sensor:
Group 4: IR sensor and button as text input
As mentioned, using the IR sensor proved to be a bit more challenging due to the necessity to use the extension module. Unfortunately, our student group failed to complete the prototype in time using this exciting input modality.
At the end of the challenge each group had to perform a live demonstration of their prototype. We timed how long it took them to write the designated phrase. The results were the following:
- Group 1: Button + Compass : 133 sec
- Group 2: Button + Accelerometer : 181 sec
- Group 3: Button + Poti : 56,1 sec
- Group 4: Button + IR-Distance : did not finish
Congratulations to Group 3 who managed to build a text entry method using a button and a potentiometer in less than 90minutes and a spectacular finishing time of: 56.1 seconds.
Browsing the alphabet
Overall, the students showed a lot of involvement and it was interesting to see how they split up the different tasks amongst each other. Running workshops like that alongside the actual lecture was well received and helped solidifying the topics discussed in class.
We are excited to further experiment with teaching methods involving rapid hardware prototyping on Microsoft’s Gadgeteer platform to support teaching and to invite students to take a hands-on approach to consolidate lecture knowledge.