The following pages provide context for the workshop and include links to contributions from my co-teacher, Martin De Bie. This includes pointers to various iterations of his 555 timer-based Textilo project.
This project will be expanded ongoingly with further relaxation oscillator schemes.
This general definition allows us to organize relaxation oscillators we encounter according to the nature of the energy accumulated, the way the relaxation threshold is determined and how energy is released. For example:
Device | Energy | Where | Threshold | Link |
---|---|---|---|---|
Shishi Odoshi | Water Level | Bamboo Tube | Balance Point | https://en.wikipedia.org/wiki/Shishi-odoshi [1] |
Old Faithful Guyser | Steam | Rock Tube | Vapor point | http://www.oldfaithfulgeyser.com/learn/geyser-info/ [2] |
555 Astable | Charge | Capacitor | Voltage Comparator | https://en.wikipedia.org/wiki/555_timer_IC#Astable [3] |
Neon | Charge | Capacitor | Ionization | https://en.wikipedia.org/wiki/Pearson–Anson_effect |
Bowed String | Tension | String | Friction | http://newt.phys.unsw.edu.au/jw/Bows.html [4] |
UJT | Charge | Capacitor | PN Junction Potential | http://www.circuitstoday.com/ujt-relaxation-oscillator [5] |
Schmitt Trigger | Charge | Capacitor | MOS Junction Potential | https://en.wikipedia.org/wiki/Schmitt_trigger#Use_as_an_oscillator [6] |
Opamp | Charge | Capacitor | Voltage Comparator | https://en.wikipedia.org/wiki/Relaxation_oscillator#Comparator–based_relaxation_oscillator |
BJT Blocking Oscillator | Flux | Inductor | Current Comparator | https://en.wikipedia.org/wiki/Blocking_oscillator [7] |
Phase Accumulator (Phasor) | Charge | Register | Modulo operation | https://en.wikipedia.org/wiki/Numerically_controlled_oscillator [8] |
Run-up Time ADC | Charge | Capacitor | MOS Junction Potential | https://github.com/adrianfreed/FastTouch [9] |
I tested this CMOS 555 breadboard version.
This informed suggested improvements to Textilo to Martin who came up with a textile layout which we used to teach during the audio workshop of e-textile Spring Break: http://youtube.com/HdMsk6c3WGw [11]
Alex blogged a great student perspective of this workshop [12].
I also brought along some PCB's which can be sewed to or pressed on Lego baseboards.
To address the need for more interaction room for the fingers I suggested to Martin to look at a radiating octagonal design. He prototyped this at the camp in copper:
Nicole Messier also picked up on this design pattern and made a 555 oscillator based FM Radio transmitter:
A walk through the schematic may be helpful.
Now what makes things productively confusing is the absence of resistors in the story. These are provided by your fingers or additional LDRs or piezoresistive fabrics. The layout is designed to give you room to put fingers in the useful places for the two popular ways of making the 555 timer oscillator [13]. One way creates square waves. The other makes controllable pulse waves. I capture these possibilities on the following schematic which has a special notation for where you add variable resistance:
He also wrote several interesting books. The history and detailed design considerations are covered in a book he kindly made available as a PDF file before his death in 2012: http://www.designinganalogchips.com/_count/designinganalogchips.pdf [15]
Some more:
http://www.nutsvolts.com/magazine/article/using-the-555-timer-ic-in-spec... [17]
https://hackaday.com/2011/02/25/hear-that-its-a-555-timer-am-radio/ [18]
AM transmitter
http://www.circuitsgallery.com/2013/08/555-AM-transmitter-circuit.html [19]
FM
http://streampowers.blogspot.com/2013/07/using-555-as-fm-transmitter-cir... [20]
High Performance VCO : http://www.electro-music.com/forum/topic-54623.html [21] DRAWDIO
https://www.adafruit.com/product/124 [22]
ATARI PUNK CONSOLE http://www.synthrotek.com/products/lo-fi-synthesizer-circuits/atari-punk... [23]
Here is the largest variant I know of: https://shop.evilmadscientist.com/productsmenu/tinykitlist/652-555kit [25]
and the smallest (a 1mm x 1mm) package:
http://www.ti.com/product/LMC555/samplebuy [26] https://www.mouser.com/Semiconductors/Integrated-Circuits-ICs/Clock-Time... [27]
The example code provided with the library uses the Arduino Tone library to sound pitches according to which pins are touched.
Notice that each call to the fast touch library implements a cycle of a relaxation oscillator.
I am indebted to Alice Giordani for exemplifying use of the library so well in this dreamcatcher:
Approach | Example | Link |
---|---|---|
non-electronic | Lamello | http://bid.berkeley.edu/papers/chi/lamello_passive_acoustic_sensi/ [29] |
*Analog relaxation oscillator | Textilo | http://www.martindebie.com/research_project/textilo/ [10] |
Analog harmonic oscillator | self-resonating VCF | http://electronotes.netfirms.com/EN215.pdf [30] |
*Digital relaxation oscillator | Arduino Tone | https://github.com/adrianfreed/FastTouch [9] |
*Digital relaxation oscillator | Mozzi (LUT) | https://github.com/sensorium/Mozzi/blob/master/examples/01.Basics/Sinewa... [31] |
*Digital Modulation Synthesis | Mozzi (FM) | https://github.com/sensorium/Mozzi/tree/master/examples/06.Synthesis/FMs... [32] |
*Digital Subtractive Synthesis | Talkie (LPC Speech and singing) |
https://github.com/adrianfreed/Talkie [33] |
Unit Generator Library | Teensy Audio Library | https://www.pjrc.com/teensy/td_libs_Audio.html [34] |
Sampling "Synthesis" | Tone.js (Tone.Player) | https://tonejs.github.io [35] |
Dynamically Patched Unit Generators | Bela (libpd) | https://bela.io [36] |
Dynamically Patched Unit Generators with Image Synthesis |
Max/MSP/Jitter | https://cycling74.com/products/max [37] |
Analog Patched Modular | Modular | https://en.wikipedia.org/wiki/Modular_synthesizer [38] |
Links:
[1] https://en.wikipedia.org/wiki/Shishi-odoshi
[2] http://www.oldfaithfulgeyser.com/learn/geyser-info/
[3] https://en.wikipedia.org/wiki/555_timer_IC#Astable
[4] http://newt.phys.unsw.edu.au/jw/Bows.html
[5] http://www.circuitstoday.com/ujt-relaxation-oscillator
[6] https://en.wikipedia.org/wiki/Schmitt_trigger#Use_as_an_oscillator
[7] https://en.wikipedia.org/wiki/Blocking_oscillator
[8] https://en.wikipedia.org/wiki/Numerically_controlled_oscillator
[9] https://github.com/adrianfreed/FastTouch
[10] http://www.martindebie.com/research_project/textilo/
[11] http://youtube.com/HdMsk6c3WGw
[12] https://blog.hackster.io/sound-synthesis-with-arduino-etextile-spring-break-45d4cc87e31e
[13] http://www.555-timer-circuits.com/operating-modes.html
[14] http://semiconductormuseum.com/Transistors/LectureHall/Camenzind/Camenzind_Index.htm
[15] http://www.designinganalogchips.com/_count/designinganalogchips.pdf
[16] http://www.555-timer-circuits.com
[17] http://www.nutsvolts.com/magazine/article/using-the-555-timer-ic-in-special-or-unusual-circuits
[18] https://hackaday.com/2011/02/25/hear-that-its-a-555-timer-am-radio/
[19] http://www.circuitsgallery.com/2013/08/555-AM-transmitter-circuit.html
[20] http://streampowers.blogspot.com/2013/07/using-555-as-fm-transmitter-circuit.html
[21] http://www.electro-music.com/forum/topic-54623.html
[22] https://www.adafruit.com/product/124
[23] http://www.synthrotek.com/products/lo-fi-synthesizer-circuits/atari-punk-console/
[24] https://www.jameco.com/z/CSS555-ID-Custom-Silicon-Solutions-CSS555-Micropower-Timer-DIP-8_2146433.html
[25] https://shop.evilmadscientist.com/productsmenu/tinykitlist/652-555kit
[26] http://www.ti.com/product/LMC555/samplebuy
[27] https://www.mouser.com/Semiconductors/Integrated-Circuits-ICs/Clock-Timer-ICs/Timers-Support-Products/_/N-6j749?P=1z0yr2i
[28] http://adrianfreed.com/content/fingerphone-sustainably-designed-paper-musical-instrument
[29] http://bid.berkeley.edu/papers/chi/lamello_passive_acoustic_sensi/
[30] http://electronotes.netfirms.com/EN215.pdf
[31] https://github.com/sensorium/Mozzi/blob/master/examples/01.Basics/Sinewave/Sinewave.ino
[32] https://github.com/sensorium/Mozzi/tree/master/examples/06.Synthesis/FMsynth
[33] https://github.com/adrianfreed/Talkie
[34] https://www.pjrc.com/teensy/td_libs_Audio.html
[35] https://tonejs.github.io
[36] https://bela.io
[37] https://cycling74.com/products/max
[38] https://en.wikipedia.org/wiki/Modular_synthesizer
[39] https://www.youtube.com/watch?v=CzO_ZKMSnAU