Skip to content

Lessons 8--9: Creating Interactive Sound Art

Put everything you have learned to work and begin creating your original interactive sound art piece. These two sessions cover the process from selecting a motif through audio production.

Goals for This Lesson

  • Begin creating an original interactive sound art piece
  • Decide on a motif and interaction design
  • Integrate micro:bit sensing with Pd audio synthesis
  • Write a work description sheet

What You Need

ItemDescription
micro:bit V2Microcontroller board with built-in sensors
USB cableTo connect micro:bit to your PC
PCPure Data installed
Headphones / EarphonesFor audio monitoring
Notebook and penFor idea sketching

Step 1: Choosing a Motif

What Is a Motif?

A motif is the theme or subject of your piece. It is the first step in deciding "what you want to express."

In interactive sound art, a motif has two key aspects:

Sound Motif — What you express through sound

This is the atmosphere or world you want to convey to the audience through sound. Think about what kind of sonic experience you want to deliver: "the sound of rain," "the stillness of the deep sea," "the energy of a festival."

Physical Motif — What the audience actually touches

In interactive works, the physical object that users hold, move, or touch is an equally important part of the motif. Rather than handing someone a bare micro:bit, embedding it inside a meaningful object dramatically changes the experience.

Physical MotifHow to EmbedRelationship to Sound
FlashlightPlace micro:bit inside a flashlightThe direction of light changes cave sounds
Fan (hand fan)Attach micro:bit to a hand fanFanning motion creates wind sounds
HourglassPut micro:bit in an hourglass-shaped caseTilting produces the sound of sand falling
Stuffed animalHide micro:bit inside a plush toyRocking or petting changes the creature's voice
Instrument-shaped objectMount micro:bit on a guitar or maraca shapeShaking or tilting becomes a performance
Box / ContainerPlace micro:bit in a box with an openable lidOpening the lid releases sounds from within
Plant modelEmbed micro:bit in a potted plant objectHovering a hand triggers blooming sounds

Physical Motifs Transform the Experience

The same mechanism — "accelerometer changes pitch" — feels completely different when holding a bare micro:bit versus holding a sword-shaped object. What users hold and touch shapes the impression of the work just as much as the sound itself.

Use everyday materials (items from a dollar store, cardboard, plastic bottles, etc.) to create a form that matches your concept.

Motif Examples

Think about combining both aspects:

CategorySound MotifPhysical Motif ExamplesExperience
NatureRain, wind, waves, thunderHand fan, umbrella, seashellFanning creates wind; tilting an umbrella changes rain sounds
Daily lifeCooking, cleaning, craftingLadle, broom, hammerSwinging a ladle makes pot sounds; strike strength changes the tone
EmotionsJoy, fear, comfortMusic box, box, lanternOpening a box reveals mysterious sounds; lighting a lantern triggers soothing tones
SpacesCave, space, forest, underwaterFlashlight, telescope, bottleFlashlight direction changes cave sounds
CreaturesBirds, insects, cats, fishStuffed animal, egg, featherRocking a stuffed animal changes its call
AbstractTime, color, temperatureHourglass, kaleidoscope, balloonTilting an hourglass produces the sound of time flowing

Guiding Questions

Ask yourself:

  1. "What sounds would be interesting to hear?" — Imagine sounds you do not normally encounter
  2. "What would be interesting to hold?" — Imagine the physical object users will touch
  3. "What movements do you want to use to produce sound?" — Think about how the object is moved
  4. "What feeling do you want the audience to have?" — Decide what impression you want to convey

Brainstorming Tips

Start by writing down every idea that comes to mind (brainstorming). Quantity matters more than quality. Come up with at least 10 ideas, then pick the most interesting one.

Try listing "sound motifs" and "physical motifs" separately, then combine them — unexpected pairings often spark the most creative ideas.


Step 2: Designing the Interaction

Choosing Sensors

Select sensors from the micro:bit that match your motif.

SensorWhat It DetectsInteraction Example
AccelerometerTilt, shake, impactShake → thunder sounds, tilt → wind direction changes
Light sensorLight levelCover → enter a cave, expose to light → sunrise
MicrophoneVolumeSpeak → echo returns, clap → percussion plays
Touch sensorLogo contactTouch → heartbeat, release → silence
Buttons (A/B)PressMode switch, timbre change
MagnetometerDirectionFace north → wind sound, face south → wave sound

Designing the Interaction

Organize the flow as Input → Processing → Output.

[Input]             [Processing]            [Output]
micro:bit           Pd patch                Speaker
─────────           ─────────               ────────
Accel X axis  ──→   Convert to frequency ──→  Sine wave pitch
Accel Y axis  ──→   Convert to volume    ──→  Overall volume
Button A      ──→   Switch mode          ──→  Timbre changes

Always Draw a Design Diagram

Do not start programming right away. First, draw a design diagram on paper. Clarify "which sensor value" is "transformed how" to produce "what sound." This will make the production process much smoother.

Design Sheet Example

Fill in the following items to define your interaction:

ItemExample
MotifThe underwater world
Sensor 1Accelerometer (Y axis)
Operation 1Tilt the micro:bit forward and backward
Sound Change 1The pitch of the wave sound changes with depth
Sensor 2Light sensor
Operation 2Cover / uncover with hand
Sound Change 2Bubble sounds appear/disappear (dark = deep, low tone; bright = surface, high tone)

Step 3: Sensing the Interaction

Programming the micro:bit

In MakeCode, create a program that sends sensor values over serial communication.

Basic structure:

forever:
  serial write value "acc_x" = acceleration (mg) X
  serial write value "acc_y" = acceleration (mg) Y
  serial write value "light" = light level
  pause 50ms

Data Transmission Rate

Setting the pause to 50ms sends approximately 20 readings per second. This is fast enough for musical applications. Setting it too low may cause data overflow.

SerialOSCConverter Setup

Convert serial data from the micro:bit into OSC messages for Pd.

  1. Launch SerialOSCConverter
  2. Select the serial port where the micro:bit is connected
  3. Set the baud rate to 115200
  4. Confirm the OSC destination port (default: 8000)
  5. Click "Start" to begin conversion

Receiving Data in Pd

Receive OSC messages in Pd and convert them to sound parameters.

Basic receiver patch structure:

[netreceive -u -b 8000]  ← Receive on UDP port 8000
       |
[oscparse]                ← Parse OSC messages
       |
[route /acc_x /acc_y /light]  ← Route by label
  |       |        |
[/ 1024]  [/ 1024]  [/ 255]   ← Normalize to 0--1
Sensor Value Ranges
SensorMinMaxNormalization
Acceleration X/Y/Z-20482048value / 2048 for -1 to 1
Acceleration strength02048value / 2048 for 0 to 1
Light level0255value / 255 for 0 to 1
Microphone level0255value / 255 for 0 to 1
Compass heading0360value / 360 for 0 to 1

Step 4: Audio Production

Combining Techniques from Previous Lessons

Review the Pd techniques from earlier lessons and apply them to your work.

TechniquePd ObjectsEffect
Sine wave generation[osc~]Basic pitch control
Noise generation[noise~]Material for wind or wave sounds
Audio file playback[readsf~] [tabplay~]Using recorded sounds
Filters[lop~] [hip~] [bp~]Timbre changes
Delay[delwrite~] [delread~]Reverb and echo
Volume control[*~] [line~]Smooth volume changes
Pitch shiftingFrequency modulationPitch variation
Automated playback[metro] [random]Rhythmic patterns

Production Workflow

Follow this order for an efficient workflow:

  1. Create one sound -- Start by making a single sound
  2. Connect the sensor -- Make that sound respond to a sensor value
  3. Test the behavior -- Verify it works as intended
  4. Add more sounds -- Layer second and third sounds
  5. Adjust the whole piece -- Fine-tune volume balance and responsiveness

Common Troubleshooting

  • No sound: Check that [dac~] is ON (turn on DSP)
  • No values received: Verify SerialOSCConverter is running and the port number matches
  • Sound cuts out: Use [line~] to smooth value changes (sending raw values directly causes clicks)
  • Sound too loud: Reduce the output with [*~ 0.3] (values above 1.0 cause distortion)

Step 5: Work Description Sheet

At the end of the session, create and submit a work description sheet. Fill in the following items.

Template

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Work Description Sheet
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Title]
(e.g., Deep Sea Walk -- Sound of the Deep Sea)

[Author]


[Concept]
Motif:
(e.g., Expressing the deep sea world through sound)

Interaction Relationship:
(e.g., Tilting the micro:bit changes the water depth;
 deeper produces lower sounds; light level changes bubble sounds)

[Sensors and Operation]
Sensor 1: (e.g., Accelerometer Y axis)
Operation: (e.g., Tilt the micro:bit forward/backward)
Effect: (e.g., Pitch changes with depth)

Sensor 2: (e.g., Light sensor)
Operation: (e.g., Cover/uncover with hand)
Effect: (e.g., Bubble sounds appear/disappear)

[Technical Components]
Pd objects used:
(e.g., osc~, noise~, lop~, delwrite~, delread~,
 line~, *~, metro, random)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Looking Ahead

In Lesson 10, you will pair up and evaluate each other's work using the Think-Aloud Protocol. Have your piece ready to be experienced by then. It does not need to be complete, but it should at least be in a state where sound plays and can be controlled with sensors.


Checklist

Track your progress:

  • [ ] Decided on a motif
  • [ ] Selected the sensors to use
  • [ ] Drew an input → processing → output design diagram
  • [ ] Created the micro:bit program
  • [ ] Successfully converted data with SerialOSCConverter
  • [ ] Received sensor data in Pd
  • [ ] Generated at least one sound
  • [ ] Sound changes in response to sensor values
  • [ ] Completed the work description sheet