

Interaction objective

SoniBox explores touch-based control of Generative soundGenerative sound develops from rules as it plays, rather than repeating one fixed recording. For SoniBox, a touch changes the character of an ongoing soundscape. This gives a sustained gesture something that can keep responding.Further readingSonic Pi — Live coding music. The aim was to make changes in sound character accessible without requiring knowledge of synthesis parameters.
I used a physical surface to connect touch position with changes in the generated sound.
Two-dimensional control
The XY Drum Pad in Logic ProLogic Pro is Apple’s music production software. Its tracks, clips, and visual organization are familiar to many producers. Referring to that language helps explain why a music tool might keep recognizable layouts instead of inventing a new one from scratch.Further readingApple: Logic Pro informed the interaction. A two-dimensional input can control several sound parameters together.

I applied this interaction to a textile surface, with continuous changes based on touch position.
Prototype testing
Early prototypes exposed individual parameters. During testing, participants found some changes difficult to hear or predict and struggled to relate the controls to sound character.

I revised the mapping around calmness and vibrancy. A single movement adjusts multiple parameters to produce a more perceptible change in character.




Sensing and sound generation
Conductive fabric senses touch position. Microcontrollers transmit it to a Raspberry Pi through OSC · Open Sound ControlOSC is a way for creative devices and software to send instructions to each other. Here it carries the position of a touch, not the sound itself. The fabric can act as a light, simple interface while a separate computer makes the audio.Further readingSonic Pi — Tutorial and OSC integration, separating sensing from sound processing.

Sonic Pi generates a continuous soundscape. Holding or moving a hand changes the ongoing sound rather than repeatedly triggering a fixed sample.


