Kazoo Robot

Research project on the development of new tools for musical expression

<Kazumi>

an automated mirliton or kazoo

dr.Godfried-Willem RAES

2023

[Nederlandse versie]

<Kazumi>

The name for this robot is derived from Japanese language, where it means harmony, peace or beautiful. It also is a gender neutral name often given to people. For us, the kazu obviously refers to the kazoo and the 'mi'-ending to the simple fact that we have to do with a mirliton.

Just like the invention of hot water is attributed to a Soviet Russian scientist, Valery Popov, the invention of the kazoo is claimed by the USA and attributed to a black musician from the southern states named Alabama Vest. It is believed to have happened in 1840. Obviously there is not the slightest trace of historic evidence for such a claim. As a matter of fact, kazoo like instruments can be found amongst many tribes of central Africa long before the USA were even founded. Also we find mirlitons on quite a few wind instruments all over Asia. The Indian bansuri flute is just an example.

For our construction we started of by carefully measuring and analyzing a collection of different kazoos. Thus we noticed that the instrument behaves a bit as a compressor: the surface of the inlet relates to the surface of the opening at the other end as 1:3. The membrane can be made of many quite different materials: onion peel, egg shell membrane, cigarette rolling paper, cellophane, mylar... Obviously the sustainability of these materials shows a great variation: cigarette paper for instance lasts about 10 minutes, onion peel about an hour etc. Mylar and thin polyethylene foil last pretty long and of course in designing our automated kazoo, we went for the materials with the best endurance record. Also, ordinary kazoos are made of thin sheet metal, very cheap but it easily rusts despite the thin layer of lacquer applied. .The construction itself is also pretty weak. If dropped on a hard floor, it likely falls into two parts... So, in order to make a 'professional' robot, we first had to design a really sturdy 'professional' kazoo. We used brass pipe and some brass threaded plumbing parts, silver-soldered. The compression ratio inside the traditional kazoo, 1:3 as said higher, is a proportion we kept in our own design as experimenting with this parameter revealed the functionality here. However, we added a feature using a softshift solenoid wherewith we can gradually make the small side orifice smaller and thus the compression ratio higher. Thus some articulation can be applied to the sound as operation of this valve has a dedicated midi controller in our firmware and of course supported by the hardware.

To get a better sound projection, we applied an exponential horn, coupled to the vibrating membrane. This makes the sound less harsh and thus more 'musical' in a way. It also greatly amplifies the sound pressure level. As the amplifier we designed for this robot had two channels anyway, we decided to add a 'normal' kazoo as well. Thus users can choose between both mechanisms. The normal kazoo however, although driven by an identical signal, sounds a lot softer than the one with the horn.
To mimic the way kazoo's are used by singers, we gave the kazoo with the horn, also some freedom to move: the construction can freely move horizontally, driven by a large stepping motor and a dented belt. The angle of rotation is nearly a full 360 degrees. Three parameters are made available to steer the operation of the movement: position (controller 10, panning), motor speed (controller 31) and acceleration curve (controller 32).

The <Kazumi> robot is able also to stand on its own: to this end, we equipped it with a 24GHz radar system and gesture recognition software. Thus, when not connected to the robot orchestra and its interfaces, it will automatically perform some six embedded compositions with full interactivity.

Source code and hexdumps for the PIC microcontrollers:

board processor source code hex-dump PCB file
hub 18F2620 kazumi_hub hub.hex Kazumi_hub
synth

24EP256MC202

(2 x)

kazumi_P24

pitch.hex

ampli.hex

Kazumi synth
radar 24EP128MC202     Radar6

 

 


Midi Mapping and implementation:

lights mapping:

noot 120: left eye tungsten light - by default automated on movement via controller 69

noot 121: right eye tungsten light - by default automated on movement via controller 69

noot 122: head tungsten eye lights - by default automated via controller 69.

Controllers:

#1: Noise level in the sound [default = 48]

#2: Vibrato delay time [default=64]

#3: FM modulation depth (vibrato depth). Large values can cause audible artifacts, due to the modulation of the sampling frequency.[Default=8]

#4: FM modulation speed. (Vibrato speed) [default=94]

#5: AM modulation depth (tremolo depth) [default = 4]

#6: AM modulation speed (tremolo speed) [default = 20]

#7: used as a general volume controller. Note that timbre will change as the volume is changed. Also the effect is very different in function of the kazoo mechanism selected with controllers 13 or 14. The horn-coupled kazoo always sounding at least 20dB louder for an identical setting of controller 7. [default = 60]

#10: Panning: used to steer the position of the horn. 0 is extreme left, 127 = extreme right. Motor speed and acceleration can be controlled with #31 and #32. If you want to obtain a certain position, do not send intermediate values. Sending the value corresponding to the required position once is enough.

#11: Steers the softshift solenoid mounted on the horn-loaded kazoo. On reception of a note-off, the solenoid will always return to the unpowered condition.

#13: Exponential horn kazoo select ( <63 = disable, > 63 = enable. By default enabled)

#14: Secondary kazoo select ( <63 = disable, > 63 = enable. By default disabled)

#15: ADSR-period. [Default = 24]
#16: used to control the duration of the attack phase in the ADSR cycle. [Default = 32]
Velocity byte = attack level
#17: sustain level [default = 74]
#18 is used to control the duration of the decay after the attack, the time required to reach the sustain level of the sound. [Default = 32]
#19 steers the duration of the release decay (from sustain level to zero) starting after reception of a note off command. Release will be canceled or interrupted with a new note on command if such a command comes within this time. [Default = 80]

#20 - tuning. By default equal temperament and A = 440 Hz for value 64. Acceptable values for this controller are limited to:

#23: steers the modulation depth for the softshift valve. Default = 127
#24: steers the speed of the periodic modulation of the softshift valve. Default = 0. This controller overrides the settings caused by controller #11.

#31: Steers the motor speed for the horizontal movement.
#32: Steers the acceleration curve for the motor.

#41:Selects the waveform used for the low register, notes 36 to 54. The default setting here is 9. Range 1 to 12. Alternatives are 5, 8, 7, 6, 1, 3
#42: Selects the waveform used for the medium register, notes 55 to 80 . The default setting is 9. Good alternatives are 6, 5, 8, 2 , 4, 3 or 11. Range 1 to 12.
#43: Selects the waveform used for the high register, notes 81 to 94. The default setting is 9. Good alternatives are 3, 1, 4 ,5, 9. Range 1 to 12.

Waveforms implemented for these three controllers:

0 Attack wave, excitation wave used as a first phase for all waveforms further implemented. Not selectable.
1 Wave_1, excitation wave  
2 Square Wave 1 parameter: CC104, default setting is 42
3 Wave_3, excitation wave good for high notes
4 Wave_4, excitation wave can be used for the medium register
5 Wave_5, excitation wave, derived from Eb (midi note 51) excitation wave, acoustically corrected
6 Wave_6, excitation wave alto-saxhorn excitation wave, some filtering applied
7 Wave_7, excitation wave alto saxhorn recorded with 1/2t valve depressed, a bit more rough
8 Wave_8, excitation wave the mathematically correct excitation wave
9 Wave_9: Dirty Sine

2 parameters: CC105, CC106

default setting for the parameters: 20 and 64

with CC105 = 64 and CC106 = 0, a pure sinewave is obtained.

10 Wave_10: output wave Not very useable. For development.
11 Wave_11: Beauchamp textbook, acoustical modeling, parametric

4 parameters: CC100, 101, 102, 103 - models a brass instrument

the default settings are respectively 27, 83, 96, 110

12 Wave_12, excitation wave  

#66: Power On / Off switch. On cold boot and the first power-on command, the motor will automatically calibrate. Avoid sending midi commands before the end of the calibration procedure.

#69: Switches automation for the eye-lights on the 'head' as well as the frontal lights on or off. If this controller is reset, the eye-lights as well as the left and right frontal lights can be controlled with note on/off commands for notes 120,121,122. When #69 is ON, the eye lights will be on as soon and as long as a note is sounded. The movement of the motor will cause the frontal lights to flash. If the motor moves left, the left light will be on, if it moves right, the right light.

#71: One shot command to force recalibration of the motor and to recalculate the range. At the end of the procedure, the horn will move back to a central position. Avoid sending midi commands during the calibration period as this command blocks the multitasker.
#80: Dynamic range mapping. The default is 62, resulting in a 30dB dynamic range.

value mapping
0-30 20dB
31-62 30dB
63-94 40dB
95-126 50dB
127 60dB

Note that increasing the value of controller 80 and thus the dynamic range does not make the sound volume at its maximum any higher! The dB mapping steers the dynamic range, starting from the absolute maximum. So, if set to 64, corresponding to 40dB, the loudest and the softest volume levels will relate to each other as 100. Or, dynamic value 1 will be at -40dB compared to the maximum value 127. Here the maximum value is defined as 0dB. Note that changing this controller affects all amplitude related parameters, including the ADSR and the tremolo.

#100 to 106: parameters for the wave form generator as documented higher.

#121: reset all controllers to cold boot values. However, it does not recalibrate the motor.

#123: all notes off, does not reset any controllers.

 

Pitch bend: The <Kazumi> robot can be used in any tuning system. In the drawing below we give the coding example for a quartertone scale:Most good sequencer software (such as Cakewalk or Sonar) uses the signed 14 bit format. Note that one unit of the msb corresponds exactly to a 0.78 cent interval. To convert fractional midi to the msb only pitchbend to apply follow following procedure: if the fractional part is <= 0.5 then msb= 63 + (FRAC(note) * 128), if the fractional part is larger than 0.5, we should switch on the note + 1 and lower the pitch with msb= (1-FRAC(note)) * 128. Note off does reset the pitch bend for the playing note! The resolution implemented on <Kazumi> for pitch bend (and vibrato) is limited to 1/10th of a semitone.

<Kazumi> was finished in the month April of 2023. Here is a video snippet from it's very first operation and confrontation with my little dog, Bo... More audio files and video snippets will be available soon.

Godfried-Willem Raes

 

Technical specifications:

Design and construction: dr.Godfried-Willem Raes

Collaborators on the construction of this robot:

none

Music composed for <Kazumi>:

Kristof Lauwers 'Kazumi Study' #29 (2023)

Godfried-Willem Raes 'Ingebed voor Kazumi' (2023)

Demo-audio files with <Kazumi>:

Pictures taken during the construction in our workshop:

 

 

Back to composers guide to the robot orchestra.

Back to Main Logos page:index.html To Godfried-Willem Raes personal home page... To Instrument catalogue Go to Godfried-Willem Raes' homepage

Nederlands:

<Kazumi>

Vanuit organologisch perspektief konden we ons eigenlijk al lang de legitieme vraag stellen of robotjes waarbij resonatoren worden aangestuurd door membranen zoals dat het geval is voor alle automaten behoren tot onze Pi-reeks, niet ook konden worden beschouwd als mirlitons. Immers, de membranen in deze instrumenten worden door een externe trillingsbron in beweging gebracht. Alleen ontbreken bij traditionele kazoos de resonatoren die voor onze instrumenten nogal wezenlijk zijn. Bovendien zijn de membranen in onze Pi-orgeltjes uit relatief stug ferromagnetisch metaal gemaakt. Maar geen van beide punten vormen een echt argument om niet van mirlitons te spreken.

Zoals de uitvinding van het warm water traditioneel wordt toegeschreven aan de Rus Vladimir Popov, zo ook claimen de Amerikanen de uitvinding van de kazoo: een zwarte uit de zuidelijke staten genaamd Alabama Vest zou het instrumentje in 1840 hebben uitgevonden. Daarvoor is evenwel geen enkele bron te vinden behalve dat het verhaal werd opgevist in een humoristische sketch uitgevoerd door een kazoo-kwartet. In Beaufort, South Carolina, blijkt er ook een Kazoo-museum te bestaan, althans volgens Wikipedia. Nochtans kan het werkingsprincipe van het instrument teruggevonden worden in heel wat muziekinstrumenten uit andere dan de Westerse kultuur. Het komt voor in de etnische muziek van geheel centraal Afrika en ook in Azie ontmoetten we o.m. de Indische bansuri fluit (ook wel bansri gespeld) bijvoorbeeld uitgerust met een resonantiemembraan net zoals we dit vinden in de kazoo. In 1900 vinden we ook een patent terug, toegekend aan een zekere Louis Crakow in New York, voor een zogenaamde 'songophone'. Ook hier hebben we te maken met een van de vele mogelijke verschijningsvormen van wat we organologisch een mirliton moeten noemen en enige originaliteit is in de beschrijving van dit patent helemaal niet te ontwaren. Zelf hebben we in de jaren '70, toen we nog erg aktief waren als klarinetspeler op de koncertpodia, een 'preparatie' voor onze klarinet gebouwd door een kazoo-mechanisme te monteren op het tonnetje van het instrument. Dit werkte uitstekend en de geluidssterkte die we zo konden bekomen, tartte alle verbeelding. De tessituur van het instrument werd er wel erg door beperkt maar inzake brutaliteit, kon de klank moeilijk overtroffen worden...

Een beknopte technische analyse van een van de meest voorkomende types kazoo (zie foto) leert dat de opening aan het mond-uiteinde een oppervlakte heeft van 93 mm2, terwijl de oppervlakte van het gat aan de andere zijde slechts 37 mm2 bedraagt. Hierdoor ontstaat er een kompressie van de druk in een verhouding van nagenoeg 1 op 3. Door het membraan aan de bovenzijde ontsnapt geen lucht zodat de kompressie hierdoor nauwelijks wordt beinvloed. De hoofdzakelijke geluidsbron in de kazoo wordt gevormd door het membraan dat tegen een klein rooster aan trilt. Niet alle exemplaren hebben echter zo'n rooster en het systeem blijkt inderdaad ook te werken met uitsluitend een klein en dun membraan. Het membraan is echter in dat geval snel aan vervanging toe... Wanneer we dus een akoestische versterker voor een kazoo willen bouwen en ontwerpen, moeten we in elk geval vertrekken vanaf dat trillend membraan. Aangezien een kazoo geacht wordt over een ruime tessituur -overeenkomstig die van een menselijke stem- te kunnen klinken, moeten we een hoorntype kiezen dat zo lineair mogelijk versterking oplevert over de gehele bandbreedte van die tessituur. Akoestisch ligt het gebruik van een zuiver exponentiele hoorn dan voor de hand. Nu zouden we zo'n hoorn natuurlijk zelf kunnen bouwen uit ijzer- of messingblik, maar evengoed kunnen we een hoorn uit een oude akoestische grammofoon recycleren. Deze hoorns werden in de eerste helft van de vorige eeuw immers algemeen gebruikt en steeds als exponentiele hoorn gebouwd. We hadden er nog wel enkele in voorraad en bovendien hadden we dergelijke hoorns ook al gebruikt in bepaalde instrumenten van het Pneumafoonprojekt (met name voor Kolpia en voor Tembo). Voor de aansturing van het kazoo mechanisme deden we beroep op een Padu membraankompressor. Deze heeft een impedantie van 16 Ohm en een vermogen -volgens opgave van de Chinese fabrikant- van 100 Watt. Een min of meer exponentieel verlopend koppelstuk voor de aanpassing van de membraanhouder op de exponentiele hoorn maakten we uit stukjes messing buis. Op het kleine uiteinde van het mechanisme monteerden we een konisch klepje dat door een Ledex soft-shift elektromagneet bediend kan worden. Hiermee is klankkleur modulatie van het akoestisch geluid goed te realiseren. In feite moduleren we hiermee de kompressieverhouding in het instrumentje. Overigens bouwden we een tiental verschillende kazoo's op om op grond van de evaluatie ervan, de meest optimale uitvoering te kunnen kiezen. Een akoestisch model, laat staan een wiskundig uitgewerkte theorie, voor de akoestiek van de kazoo is immers voor zover wij konden nagaan, nergens gepubliceerd. Het model waarin gebruikt wordt gemaakt van messing 1/2" fittingen is het meest 'professionele', want naar duurzaamheid en mechanische sterkte optimaal. Ook montage en demontage verlopen bij dit ontwerp redelijk eenvoudig. Niet alleen met het kazoo ontwerp zelf maar ook met het materiaal voor het membraan werd grondig geexperimenteerd, vooral dan -ook hier- met het oog op klank en duurzaamheid. Dunne velletjes van een ui, cigarettevloeitjes, cellofaan, eiervelletjes, allerlei plastic folies, zilverpapier, Hasberg voelerlint 0.01 mm, messingfolie... passeerden de revue. De vier eerstgenoemde leveren weliswaar een goed geluid op, maar gaan van hooguit tien minuten tot zowat een uur mee...

Omdat het geluid met de exponentiele hoorn gekoppeld aan de kazoo, deze laatste welhaast muzikaal aanvaardbaar maakt -wellicht een gevolg van de beperking in bandbreedte veroorzaakt door de hoorn- beslisten we in ultimo, een tweede 'recht voor de raap' kazoo in te bouwen. Daarvoor voorzagen we een tweede kompressiedriver waarmee een kazoo zonder enige principiele wijziging wordt aangestuurd. Keuze tussen beide mechanismen kan door de gebruiker worden gemaakt met behulp van twee midi-controller kommando's. (#13 en #14). Ook kunnen beide mechanismen tegelijkertijd geselekteerd worden. Het signaal waarmee ze worden aangestuurd is evenwel steeds hetzelfde. Een tweestemmige kazoo is het dus helemaal niet geworden. Het zal gebruikers zeker opvallen dat de 'gewone' kazoo, dus zonder hoorn, aanzienlijk stiller klinkt, hoewel ze met een identiek signaal worden aangestuurd.
De excitatie van het kazoo mechanisme -die normaal gezien met de menselijke stem gebeurt- werd bepaald na een heel brede reeks experimenten met diverse algoritmisch gegenereerde golfvormen met meerdere parameters, samples en niet -periodieke signalen. Uiteindelijk bleek een zuivere sinus hier nog het meest realistische effect op te leveren, hoewel akoestische modellen voor koperblaasinstrumenten ook een erg overtuigend resultaat opleveren. Niet voor niets worden kazoo's nu eenmaal vaak ingezet in armelui's fanfares en kinderspeelgoed.

Voor de tessituur van deze muzikale robot beperkten we ons tot wat -heel ruim bekeken- ook binnen het vokale bereik kan vallen. De firmware voor de klankopwekking is gespreid over twee microprocessors en omvat uitgebreide mogelijkheden voor klankkleur modulatie evenals voor de besturing van de omhullende. Een derde microprocessor staat in voor de besturing van de motor, de lampjes, de relais en de MIDI-parsing. Tot slot voegden we nog een vierde processor toe waardoor de <Kazumi> robot ook alleenstaand en onafhankelijk interaktief kan werken. Hiervoor ontwierpen we een board voorzxien van een 24GHz radar sensor waarmee bewegingen van mensen kunnen getraceerd en geanalyseerd worden. Op grond van deze 'gesture recognition' kan de robot dan interaktief en bewegingsgestuurd opereren.

Apologie van de kazoo:
Toen we op sociale media ons plan onthulden om een robot kazoo te ontwerpen en te gaan bouwen, kregen we al snel heel wat negatieve reacties. Voor velen is de kazoo klaarblijkelijk zowat het onmuzikaalste ding dat ooit werd uitgevonden of bedacht. Eerder een -onuitstaanbare- grap dan een instrument dus. Een kleine apologie is dan ook aangewezen.
De introduktie van de kazoo in de muziekpraktijk is immers een revolutionaire stap gebleken in het bevrijden van de muziek uit de kluisters van het woord. Vokale muziek was -afgezien van het toch wat marginale genre van de zuivere vocalise- helemaal gebonden aan het woord met alle semantische vervuiling en narigheid vandien. De intrede van het woord in de muziek heeft er de leugen binnengebracht. Erger nog, die vergiftiging van de vokale muziek met woord heeft zelfs een verfoeilijk genre als de opera mogelijk gemaakt en zo de deur opengezet voor enorme geldverspilling en torenhoge korruptie in het muziekbedrijf. Een korruptie die met noodzaak gepaard ging met de institutionalisering van operahuizen als bedrijven met honderden werknemers, werkslaven en vakbondsvertegenwoordigers. Het orkest werd daarbij zelfs naar een bak onder het podium verbannen. Er waren zelfs ooit musicologen van laag allooi die het presteerden ettelijke bladzijden (zoniet hoofdstukken en zelfs boeken) van 'wetenschappelijke' publikaties vuil te maken aan uitvoerige beschrijvingen van opera libretto's, alsof die ook maar iets met muziek zouden hebben uit te staan... Pure waardeloze broodschrijverij natuurlijk en zonde van de omgehakte bomen. Maar goed, dankzij de kazoo is de verlossing uit de hel van de vokale onmuziek mogelijk geworden en misschien ook eindelijk in aantocht. Zelfs met religieuze muziek kan dankzij de kazoo helemaal komaf worden gemaakt, waarmee eindelijk nu ook in de vokale muziek de verlichting kan doordringen. Stel u voor, een volledige Mattheuspassie voortaan met alle koren en solisten op kazoo! Heerlijk toch. Ik kijk nu al uit naar de volgende krematie van een intendant met een Erbarme Dich op een kazoo...

Toen <Kazumi> zijn eerste nootjes liet horen, liep de konfrontatie met mijn hondje Bo, niet meteen van een leien dakje, zoals te zien en te horen in dit video fragmentje...

Slotbeschouwing en evaluatie: Het typische geluid van de kazoo kan slechts worden verkregen binnen bepaalde grenzen van tessituur zowel als geluidsterkte. Onder een bepaald geluidsniveau trilt het membraan niet mee. Ook boven een bepaalde geluidsdrruk werkt het niet meer. We hadden natuurlijk de parameters kunnen begrenzen tot waarden waarbinnen de kazoo voortreffelijk werkt, maar omdat die parameters en die grenzen telkens anders komen te liggen wanneer het membraan vervangen wordt, leek ons dat helemaal niet praktisch.


Bouwdagboek - Construction & Research Diary:


Terug naar Logos' index-pagina:

index.html

Naar Godfried-Willem Raes personal homepage... Naar katalogus instrumenten

gebouwd door

Godfried-Willem Raes

Go to Godfried-Willem Raes' homepage

Last update: 2023-04-26 by Godfried-Willem Raes

The following information is not intended for the general public nor for composers wanting to make use of the <Kazumi> robot, but may be essential for maintenance and servicing of the robot by our users, clients and collaborators. It also might be usefull for people that want to undertake similar projects and/or improve on our designs.

Technical drawings, specs and data sheets:

Power supplies:

Lucas Ledex softshift solenoid (PDF datasheet)

Printed circuit boards:

 

Board with components:

Circuits: waveform synth for the membrane compressor:

 

Amplifier board -stereo- as finaly used in <Kazumi>:

Hub and motor control board:

PCB:

Circuit drawing:

Relay: SPSDT-NO, 277VAC, 30VDC, 23A - Farnell part nr. 2213773 - Manufacturer part nr.: G4A1AE DC5 - Coil voltage 5V DC

Eye-bulbs: Sencys G4 socket, 12V 1.5W, 155 lumen at 2700K. 15000h.

Stepping motor data sheet

Motor controller data sheet (Gecko drive)

Omron proximity sensors data sheet

Amplifier circuit:

Data-sheet voor de TDA7264 stereo versterker (2 x 25W) chip

24GHz radar gesture interface board, circuit: Picture of the finished PCB for the rfadar interface in <Kazumi>:

Mechanical construction drawings and welding plan:

Functional pin assignments for the microprocessors:

Processor/board    
hub - 18F2620 A0 Omron sensor L - active low - high at rest
  A1 Omron sensor R - active low
  A2 nc
  A3 on/off relay
  A4 mosfet -12V - tungsten eye-light (15W max.)
  C0 mosfet - 12V - tungsten eye light (15W max.)
  C1 softshift PWM 24 V - HPWM2
  C2 PWM 24V
 

C3

mosfet 12V - eyes lights (14W max.) - LED G4 bulb, 1.5W
  C4 mosfet 12V - relay exponential horn kazoo
  C5 mosfet 12V - relay ordinary kazoo
  B5 watchdog LED
  B4 green LED power on
  B3 nc
  B2 stepping motor ctrl. DIR
  B1 stepping motor ctrl. enable
  B0 stepping motor ctrl. step pulse
Synth board   cfr. circuit drawing.
Radar board   cfr. circuit drawing

 

 

References:

Crakow, Louis "Songophone", 1900, Patent Office Manhattan, New York.
Raes, Godfried-Willem, "Expression control in musical automates", 1977/2023,