Musical Robot
Research project on the development of new tools for musical expression at the University College Ghent


an automated rotary valve trombone

Godfried-Willem RAES


[Nederlandstalige versie]

Robot: <Bono>

This musical robot consists of an old but extremely well made valve trombone, found on the Ghent flea market. It was build by the famous brass instrument builders V.F.Cerveny and Sons in Hradec Kralove (Tchechia) We equipped it with an automated playing head and four automated valves. In the first building phase the wind supply -we used a small rotating compressor- was also automated, however, later we improved the design and could drop the wind supply alltogether. Controlling this robot is realized using a standard midi protocol. This instrument has four rotary valves. Normally these valves rotate over a 90 degree angle under finger operation. The drawing illustrates the internal workings of this type of valve: When we started the automation of this mechanism we had many technical choices with regard to the way the valves could be operated:

1. The most trivial solution seemed to be to preserve the existing mechanism and replace the human fingers with push type solenoids pushing on the existing fingerplates. The problem with this approach is that operation of the valves is very sluggish, mainly because the return spring now also has to lift up the anchor of the solenoid. A second problem is that due to the many mechanical parts, the action tends to be rather noisy. For these reason we abandoned this track.

2. A second possibility consists of activating the axis of the valves directly using angular displacement solenoids. The problem here is that angular displacement solenoids operating over full 90 degrees angles are difficult to find, 45 degrees being the most common standard. Also, the 90 degree types are pretty noisy whenever they reach their end positions. One could of course go with a design using two 45 degree rotary solenoids for each valve, each operating on another side of the axis. At rest all valves would then be in a halfway depressed state. In this case we would need eight solenoids.

3. A third possibility was to use motors (stepper or servo) to rotate the valves on their axis in steps of 90 degrees. The advantage of this last approach being the unsurpassed speed that can be achieved from the valves, however at the detriment of complexity: position sensors become a mandatory requirement. With stepper motors, small types doing 7.5 degrees per step could be used. These require 12 steps for a 90 degree angle and are pretty silent in operation. However their torque is marginal if they have to rotate worn out or not to well greased valves.

4. A fourth possibility consist of using eight pull-type tubular solenoids working on the eccentric pivot point on the valve shafts. Here we get rid of the entire original mechanism and replace it with traction wires made of 1.6 mm stainless steel rods.

During the research phase we tried out the third and the fourth possibility. We rejected the third mainly because the acceleration of the steppers could never be made fast enough for a good and lively response of the keys. The fourth possibility was realized using Black Knight pull type solenoids. In order to get fast response we drive them using our pulse/hold PIC controller boards as developed for our <player piano> , for <Bako> and for <Qt>. The force they are able to develop is only marginal for smooth operation in this robot. The circuit principle is shown in the schematic below:

In total, three PIC-microcontroller boards are used in this robot: A first one placed on the midi-input and hub board, controlling the motor functions, the expression valve and the visual effects. A second one takes care of the valve combinations used for resonance on the required notes. A third one, -equipped with a dsPIC, type 30F3010, controlling the artificial mouth assembly and the pitch generation. This board also has two digit decimal displays, showing the midi note playing. We used a TIL311 display, because this type has an on chip BCD to 7-segment decoder. When no note is playing, the display will read 'FF'. (Not zero, because 0 is a valid midi note!).

For the construction of the artificial mouth we could build further on the experience gained when realizing our automated sousaphone, <So>. However, we also tried out a few other sound generating mechanisms prior to taking up the <So> design again. Thus we tried a servo motor driven rotary valve working on compressed air. This worked soundwise excellently - we could obtain really impressive fortissimos for instance over the entire compass. We finally rejected the application of this technology because we were unable to control the servo fast enough in going from the one speed to the other as required for proper generation of musical pitches. The second problem had to with the difficulty in finding really silent compressors.

The overview of the total circuitry looks like:

The <Bono> robot was designed to be suspended, thus reducing floor space requirements for the <M&M> robot orchestra. All mechanical parts were made from stainless steel, welded together using the manual TIG process. All serviceable parts can be taken apart however.

Power supply voltages and currents:


Midi Mapping and implementation:

Bono midi channel: 13 (counting from 0)

Midi note range: [0-33] 34 - 79 [80-96]. Note on with velocity is implemented and has a wide control range. For a good attack, low values for velo and a high setting for controller 17 should be used. (see further in this implementation tabel).

Note Off commands are required, but can be dropped for pure legato playing. Note-off starts the release of the mouthpiece driver and de-energizes the valve solenoids.


Controller 7: General volume control. There is a build in integrator, such that very fast changes for this controller are averaged out. Integration time is in the order of 15ms. This is the controller to use for crescendo and descrescendo playing. It also can be used as an excellent tremolo/flatterzunge controller as well as for advanced enveloppe control. Note that this controller also affects the timbre of the produced sound. The most useable range is between 10 and 64.

Controller 17 is used for the attack level and thus contributes to the volume scaling. Note that this setting affects greatly the effect of the velocity byte as well as that off the attack-time controller (controller nr.18). The intrinsic relation is shown in the graph below:

Controller 13 changes the valve combination used for playing any particular note. Bit 0 steers the 1/2 tone valve, bit 1 the 1 tone valve, bit 2 the minor thirth valve and bit 3 the fourth valve. This controller can be send whilst a note is playing. Send it when no note is playing has no effect.

Value -2 1/2t -1 1/2t -1t -1/2t
0 off off off off
1 off off off on
2 off off on off
3 off off on on
4 off on off off
5 off on off on
6 off on on off
7 off on on on
8 on off off off
9 on off off on
10 on off on off
11 on off on on
12 on on off off
13 on on off on
14 on on on off
15 on on on on


Controller 18: attack time (see graph under controller 17). This sets the time the volume will remain at the level set by controller 17, before falling back to the value set with the velocity byte.

Controller 19: release time for note-offs.(see graph under controller 17). When legato playing is in use, meaning that you do not send note-offs but only new note on's, there will be no release section in the enveloppe and thus the use of this controller will become meaningless.

Controller 20: tuning (diapason, default is 440Hz). The range is limited to maximum 50 cents (a quartertone) upwards.

Controller 25: Valve solenoid pulse duration (for research and development only)

Controller 66: Machine power on/off switch (mandatory). As long as controller 66 is not set to on (any non-zero value), <Bono> will not play anything. Reception of this controller does not change the program change in use.

Controller 123 switches all notes off. Releases the solenoid valves. Resets the controllers, except nr.20. Also switches off the lights. It does not change the program change command in use.

Program change: implemented. Program changes are used to select different lookup tables for the fingering of the notes. By default, program 0 is selected with the default lookup table. So after a cold boot, program change 0 will always be in use.

Value remarks
0 default acoustic theory [detailed mapping] (txt.file)
1 empirical [detailed mapping]
2 user table 1 [just intonation - to be done]
3 user table 2 [quartertone mapping - to be done]
other invalid

Pitch bend implemented. The range is limited to a semitone, thus a quartertone up or down. Pitch bend can be used for microtonal music as well as for vibrato control. The coding follows from the example below, given for a fragment of a quartertone scale:

Most good sequencer software (such as Cakewalk or Sonar) use 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.

Technical specifications:

Design and construction: dr.Godfried-Willem Raes

Collaborators on the construction of this robot:

Music composed for <Bono>:

Back to composers guide to the M&M robot orchestra. Back to Main Logos page:index.html To Godfried-Willem Raes personal homepage... To Instrument catalogue Go to Godfried-Willem Raes' homepage


Robot: <Bono>

In het M&M robot orkest hadden we behoefte aan wat meer variatie in de lage blaasinstrumenten, in dit tessituurgebied domineerden immers alleen <So> en de toch wat minder responsieve <Bako>. Voor deze automatische ventieltrombone gebruikten we bij onze eerste experimenten -waarbij we zochten naar een alternatief voor het mechanisme dat we ontwikkelden voor <So>- een persluchtmotor met drie schoepen als klankopwekkingsmechanisme. Deze persluchtmotor -hier gebruikt als kompressor - werd daarbij aangedreven door een uiterst nauwkeurige servo motor. De korrektheid van de intonatie staat of valt immers met de precizie van deze motor en zijn aansturing. Zouden we een dergelijk systeem zonder meer toepassen, dan zou de luidheid van de voortgebrachte tonen een funktie zijn van de toonhoogte. Dit is muzikaal uiteraard niet erg wenselijk. Daarom is ook een regeling van de windinlaat van de kompressor hier een absolute vereiste. Het mechanisme werkte naar toonkwaliteit erg goed en was in staat impressionante fortissimos te genereren, maar leed aan een niet te vermijden traagheid bij het snel wisselen van tonen. Een na enige tijd onuitstaanbaar portamento bleef een inherente eigenschap van het koncept. Daarom pasten we in de tweede versie opnieuw een moving coil driver toe, een in een aantal opzichten verbeterde versie van die toegepast in <So>. De rezultaten in de hoogte van de tessituur bleven echter onbevredigend, zodat we in versie drie -de meest recente- overstapten naar het gebruik van een akoestische impedantietransformator gekoppeld aan een 100W kompressiedriver. Hierdoor werd het oorspronkelijk ontwikkelde windmechanisme overbodig. Van meet af aan bouwden we <Bono> zo, dat het instrument ook probleemloos overweg kan met kwarttoonsmuziek en muziek in andere stemmingen in het algemeen.

De ventielen op deze bijzonder goed gebouwde trombone zijn draaiventielen. De Boheemse oorsprong van het instrument, gebouwd door V.F.Cerveny in Hradec Kralove in het huidige Tchechie, is daar uiteraard niet vreemd aan. Daardoor kon echter niet hetzelfde mechanisme worden toegepasten als bij <So>, die met drie duwventielen is uitgerust. Deze ventielen moeten immers over een hoek van 90 graden verdraaid worden om het ventiel te schakelen. In de ontwerpfaze onderzochten we grondig de verschillende mogelijkheden:

1.- Toepassing van duwmagneten op de bestaande hefbomen voor de vingers. Deze triviale mogelijkheid dienden we te verwerpen vanwege de te grote traagheid: de terugslagveren moeten nu immers ook het gewicht van de magneetkern omhoogduwen. Bovendien leidde de overmaat aan hefboompjes en draaipunten tot veel bijgeluiden, wrijvingsverliezen, traagheid en onbetrouwbaarheid.

2.- Toepassing van draai-elektromagneten. Deze hebben echter standaard een hoekverdraaiing beperkt tot 45 graden. Negentig graden types zijn zeldzaam en extreem duur. Bovendien zijn ze lawaaierig bij het bereiken van hun eindpositie.

3.- Toepassing van stappenmotoren. Hiermee kunnen de ventielen telkens over een hoek van 90 graden worden verdraaid. Maar, door torsie en wrijving bestaan de mogelijkheid dat de motoren op gezette tijden een of meer stappen missen waardoor de afregeling verloren gaat. Om dit te kompenseren zijn dan weer positiebepalingssensoren nodig. We hebben een proefprojektje opgezet met stappenmotoren met een stapgrootte van 7.5 graden, maar de versnellings mogelijkheden van deze motoren bleek te klein om erg soepel met de ventielen te kunnen omgaan.

4.- Toepassing van dubbele trek of duw magneten aangrijpend in het excenter punt van de oorspronkelijke ventielen, waarbij dan het gehele originele hefboommechanisme wordt verwijderd. Hiervoor pasten we Black Knight trekmagneten toe, voorzien van uit inox staaf geplooide trakturen. om die te plooien ontwikkelden we een speciale plooimal. De trakturen dienen immers onderling identisch te zijn. De lineaire verplaatsing wordt nu 10mm voor een draaihoek van 45 graden.

Deze robot maakt voor zijn interne besturing gebruik van drie mikroprocessoren: twee 18F2525 PIC's en een 30F3010 dsPIC. Gedetailleerde schakelschemas zijn aan het einde van deze pagina toegevoegd. Om het nodige podiumoppervlak voor het <M&M> robotorkest niet nog verder te vergroten, besloten we deze automaat te bouwen voor ophanging, hoewel opstelling op de bodem ook mogelijk is.

Godfried-Willem Raes

Pictures taken during the building of the <Bono> robot:

Construction Diary:

To be done on <Bono>:

(Terug) naar logos-projekten:


Terug naar Logos' index-pagina:


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

gebouwd door

Godfried-Willem Raes

Go to Godfried-Willem Raes' homepage  

Robody Bono Pictures:


Last update: 2013-10-09 by Godfried-Willem Raes


Technical drawings and data sheets:

Midi input board and PIC controller:

Midi buffers and thru ports:

Microprocessor section (motor control & lights):

Solenoids used for the valve mechanism:

Black Knight 121 420 610 620, 12V nominal @100% duty cycle, Rdc=20.4 Ohm. diameter 20mm (25 Euro a piece, in 2006) Farnell order code: 4207439 . Positive hold voltage: 9V, negative pulse voltage: -17V. Force for a displacement of 15mm, at 12V: 0.49N (50gf), for a 1mm displacement at 12V: 7.84N (800 gf). Maximum allowable voltage: 160V

Moving coil driver:

The driver was replaced on 30.10.2008 with a motor compressor driver coupled to an acoustic impedance converter turned on the lathe from a real trombone mouthpiece. This is now version 3.0. Amplifier: ILP HY2001 module. Power supply transformer: ILP type 1UR18, toroidal, 230V ac @ 2 x 18V , 0.83A. Power: 30VA. We have measured the driver (type PADU100) carefully and found the impedances in function of applied frequency as follows:11.4 Ohms @ 100Hz, 23.68 Ohms @ 1kHz, 26.7 Ohms @ 10kHz and 45 Ohms @ 25kHz. The acoustic load does influence the measured impedance at 1kHz over a 1:2 range: with the mouth completely closed it measures 32.8 Ohms and with the mouth completely opened but without any resonator, 15.35 Ohms. This phenomenon does not occur for the very low neither for the very high frequencies. The measurements were performed with our Hameg LCR meter, model HM8018. The frequency response is 100Hz to 10kHz. The thread for mounting is 1 3/8"-18.


Vaclav Franticek Cerveny & Sons, Hradec Kralove (Tchechia). Probably from ca. 1928 or earlier. The factory closed in 1945. Equiped with 4 rotary valves. (1/2t, 1t, 1 1/2t, 2 1/2t).

Potmeter on the DS-PIC board:

This multiturn potentiometer is used to adjust the maximum output level such that no harm can occur to the moving coil assemby or the compression driver. The setting should not be changed by users. Only qualified technicians should be allowed to interfere with this adjustment. The potmeter (the large blue component on the DS-PIC board) is a Bourns high quality wirewound potmeter with value 5k and forms the input attenuator for the HY2001 amp module. The input voltage to this module should not exceed 500mVrms.

Audio transformer:

This is a 1:1 audio transformer with impedance 600 Ohms. Brand: Oxford Electrical Products Ltd. Rdc is 109 Ohms : 134 Ohms. Frequency response: 30Hz - 25kHz. Power: 2mW. Farnell order nr.:117-2421. The theoretical maximum power, for a secondary voltage of 10V with a load of 4k7 is 21mW. Largely more than the specs. This will cause THD distortion at high levels. This is not a mistake but intended in the design. The original Rola transformer (version 2.0, out of use since 30.10.2008) was left in place but has no function any more. We are now at version 3.0. Note the single BA220 diode over one of the primary windings as well as the 150nF cap over the secondary: these components are essential for obtaining a trombone like sound from the instrument. The cap forms a formant filter (resonator) and the diode creates an asymetrical and non-linear (amplitude dependent) waveform. These component values were not calculated but found after many hours of experimenting with different arrangements and component values.

LED spotlite and other lite specs:

Technical ASCII description files for PIC-specs and lookups:

High resolution (300dpi) pictures of <Bono> for download: