DREADMILL.technical specifications


Treadmill console electronics.


Beneath the hood of the treadmill (+ Morgan's feet).


Console electronics with microcontroller added.


Schmitt Trigger (to intercept speed data and filter out noise from teh mother) and microcontroller.

filtering schematic
Schematic for filtering mechanism.

Photos by Morgan Davenport and Ryan Davis.
Schematic by Professor Mark Paulik.

To understand why these details are important, please see Marcel O'Gorman's article "Transparency and Deception on the Hardware Fashion Scene" in CTheory.

HACKING THE TREADMILL

Put simply, DREADMILL involves a computer that is hooked up to a treadmill by means of a serial cable. While this may sound like a straightforward hardware set-up, treadmills are not exactly “plug-and-play” devices like printers or digital cameras.

To put it all together, the treadmill's circuit boards (one near the motor and one behind the screen) had to be hacked to sort out which circuits were responsible for determining speed, distance, and heart rate.

Once that was determined, two circuit boards were added: one at the base of the treadmill to intercept and filter speed data; and one behind the screen, which intercepts heart rate data and houses the microcontroller.

Speed, distance, and heart rate data all flow into this microcontroller. The microcontroller is equipped with a serial port to output that data to a computer.

TREADMILL>LAPTOP LINK

The microcontroller board is plugged into the laptop's USB port using a serial cable and serial>USB adapter.

When the treadmill is running, data is relayed to the laptop in the form of “triplets,” numeric sets that can be read by software programs. In the case of DREADMILL, a typical triplet might appear as follows: 000/072/002.

  • The first triplet indicates heart rate; 000 would mean that no heart rate is detected.
  • The second triplet indicates speed; 072 would mean that the runner is going 7.2 km/h.
  • The third triplet indicates distance; 002 means that the runner has gone 0.2 miles.

INTERFACE DESIGN

For these numbers to be useful, they have to be "translated" into commands that make sense in a software environment. The software chosen for the DREADMILL interface is Macromedia Director, because it can be equipped with a plug-in called SerialXtra, which integrates data from a serial cable into Director. To sum up, SerialXtra translates the numbers generated by the treadmill into commands that control a Director movie.

The beta performance of DREADMILL consisted quite simply of a QuickTime video embedded in a Director movie. As the speed on the treadmill changed, the speed of the movie changed accordingly. In the top, left corner of the movie, a number indicates the milliseconds between frames in the movie. For example, when the dreadmill is running at full speed (10mph) there are 0 milliseconds betweeen frames. This can be seen more clearly in the video sample.

HARDWARE

  • TRUE 500 HRT Treadmill, selected for its quiet performance, stability, and wireless heart rate monitor feature.
  • Sony Vaio notebook computer, selected because it's what we had on hand.
  • Schmitt Trigger inverter for filtering noise created by the motor at the base of the treadmill.
  • Adapt9S12DP256 Microcontroller module with serial port to send data to the laptop.
  • Serial>USB adapter to link the serial board to the USB port in the laptop.

SOFTWARE

  • Macromedia Director 7
  • Serial XTRA plug-in
  • QuickTime
  • FinalCut Pro