Tethered Cube

Series: alt.ctrl activities; builds on Gametrak; Spatial arrangement

Another way to cancel the tethers' pull: two Gametraks, one on the floor and one on the ceiling, tethered to corners of a lightweight cube that form the vertices of a tetrahedron. The four tethers give the cube's position and orientation. The cube also has mechanical resonances to play with: it twists about its centre, while its centre swings around the axis between the two Gametraks.

A light wooden box held by red tethers, seen from beside the upper Gametrak.
The tethered cube, viewed from the upper Gametrak. From the SMC 2009 paper.

Materials

ItemAmazoneBay
Two Gametrak controllerssearch
A lightweight cube (in the paper, a wooden box)
Mounts for one Gametrak on the ceiling and one on the floor: to be specified.

Tools

  • Tools not yet listed.

Skills

  • Skills not yet listed.

Instructions

  1. Mount one Gametrak on the ceiling, and the other on the floor beneath it.
  2. Choose four corners of the cube that form a tetrahedron (no two of them on the same edge). Tie the ceiling Gametrak's two tethers to two of them, and the floor Gametrak's to the other two.
  3. Compute the cube's position and orientation from the four tethers' readings.
  4. Map the cube's position, orientation, twisting and swinging to sound.

Variations

  • Variations not yet written.

Related resources

Coding Prompt Build Block

A prompt to give a coding assistant, to start the code for this activity. Copy the box, answer its questions about your board and pins, and test what comes back on the bench before you rely on it.

I am building "Tethered Cube", the activity at https://adrianfreed.com/tethered-cube.html.

Write a Max or Pd patch, or a program, for two Gametraks, one on the ceiling and one on the floor beneath it, whose four tethers are tied to four corners of a light cube that form a tetrahedron. The two Gametraks are identical devices: let me tell them apart by pulling a tether.

From the four tethers' angles and extensions, compute the four corners' positions, then fit the cube's position and orientation to them. Measure how the cube twists about its centre and how its centre swings around the axis between the two Gametraks, and map position, orientation, twisting and swinging to sound.

Libraries to explore:

Before writing anything, ask me what I am using: the board and its pins, or the software (such as Max, Pd or Python), and check its documentation for what this needs. Put the pin numbers, ranges and other settings in one block at the top, each with a comment. Say which of the libraries above you use, and why. Start with a test that shows the raw readings, so that I can check the wiring and the ranges before the rest.

This activity by Adrian Freed is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0): you may share and adapt it with attribution, for non-commercial purposes such as personal projects and teaching, and you must share adaptations under the same licence. Product names and links belong to their suppliers.

Design strategies: