Yann's Techno Toys Blog
Yann's Planes
Hobby Picture Gallery
Bertrand's Site
E-Flight Links
Engine Sound Synth
Naboo Cruiser
Horreur 4
Zepron FunFly
R/C AirHog
Delta Depron
Battery Data
Motor Data
Lots of Planes
Huge Picture Gallery
Download the DjVu Plugin

Engine Sound Synthesizer for Electric Airplanes.

We describe experiments with a home-made sound generator system for R/C electric airplanes.
Yann LeCun and Jean-Claude Le Cun
Summer 2006


Electric R/C airplanes have a big advantage over gas airplanes: they are quiet. For years, we toyed with the idea of developing a sound generator for electric airplanes that would make them produce realistic airplane engine noises.

This page describes an airplane sound generater system that was developed in 2005/2006 and tested during the summer of 2006. It's main innovation (and main feature) is that the pitch of the engine sound is proportional to the speed of the propeller.

At first, we experimented with very simple circuits that consisted of an 8K byte eeprom chip connected to a simple digital to analog converter made with an R/2R resistor ladder. The address bus of the eeprom was simply connected to a counter. It worked, but there was no simple way of producing a clock for the counter that was proportional to the speed of the propeller, because the clock frequency for a typical engine RPM (about 8KHz) can't easily be generated from the slow RPM of an outrunner motor (at least not without some rather complicated frequency conversion circuit).

Hence, we opted for a software implementation on a microcontroler. We picked the Tini2138 from New Micros. It is a tiny module with a powerful LPC2138 ARM7-TDMI CPU from NXP running at 60MHz. The LPC2138 has the distinct advantage of being extemely small and lightweight, and of having an on-board 10-bit DAC, which we could use to produce the sound without requiring an external DAC. It also has 512KB of flash, which provides ample room for sound loops. On the down side, the Tini2138 module is rather expensive at $70.

A new Arduino-based design is coming up

As we write these lines (in August 2009), we are developing a new sound generator based on the hugely popular Arduino microcontroler platform. The system will be much cheaper, easier to build for hobbyists, and considerably ligher so it can fit into park flyers. But it's not entirely ready yet. Stay tuned.


A reflective optocoupler (a phototransistor and an infra-red LED) points towards the rotating body of the outrunner brushless electric motor. The motor has a white band on half its perimeter and a dark band on the other half. The sensor output is fed to an amplifier and a Schmidt trigger whose output is connected to one of the "timer" inputs of the microcontroller. the input can be configured to save the value of a counter at each rising edge, hence meauring the period of the RPM sensor without burning CPU cycles. The software in the microcontroller sets its sampling period (the rate at which it pumps sound samples to the DAC) to a value proportional to the period measured by the sensor. If the RPM is below a threshold, the frequency to set so that the engine sound is at idle. The microcontroller has a number of potentiometers that are periodically read through ADC inputs. They are used to select the engine sound being produced, to adjust the coefficient linking the RPM to the sampling frequency, and to adjust the idle RPM.

The sound from the LPS2138 DAC is fed to an audio amplifier (about 40 Watts are required) and to a low-cost loudspeaker: the Visaton R10S, which is cheap, has a 4 Ohm impedence, is powerful (it can stand 40 Watts), and is relatively light (though not nearly as light as we would like).

The whole system is powered with a 4-cell LiPo battery.

The system was mounted in an old "Magnatila" model.


The sounds were extracted from engine sound files that are provided with various flight simulator models. Suitably short sound loops were automatically extracted using a program that find appropriate breaking points so that the end of the loop meshes seamlessly with the beginning. Finding the cut point is performed using a simple cross-correlation method. The sound loop were resampled to 22050 samples per second, and scaled to 10 bits per sample. With 512KB or flash, the LPC2138 has ample room for lots of high-quality, uncompressed sound loops. Each sound loop is 32,000 samples (64KB at 2 bytes per sample), which allows us to store about 7 sound loops (without compression, and with a lot of wasted space since we only use 10 out of 16 bits for each sample word).

Sounds loops were produced for Cessna 172, DC3 Dakota/C47, Piper J3, Merlin engine (Spitfire and P-51 Mustang), Rayan PT22, Extra 300, and Airbus A340 jetliner.


Sound circuit: the microcontroller is at the top, Below is the sensor board with contains a quad op-amp chip (for the optocoupler amplifier) and 4 potentiometers to select the sound (PT22, Merlin, Extra 300, DC3, Cessna 173, Airbus A340), adjust the coefficient relating the prop RPM to the pitch of the sound, adjust the idle pitch, and adjust the volume. The speaker can be seen at right. The amplifier is hidden below.

Optical reflective sensor. The sensor consists of and infrared LED and a phototransistor. The black "shielding" is necessary to avoid changes in triggering threshold due to changes in ambient sunlight. In a newer design, the sensor points directly at the prop and requires no adjustment.

The loudspeaker is placed at the bottom of the fuselage, so as to direct the sound at the crowd below.


These videos were recorded on July 30th and August 6th, 2006 at the flying site of the Aéro-Modèles Club de la Cote d'Emeraude, in Plerguer, France, near Saint-Malo.

PT-22 engine from War World I.
Cessna 172 sound
DC3 Dakota (also known as C47). Twin radial engine.
Piper J3.
Extra 300.
Merlin engine used in the Spitfire and the P-51 Mustang.
Another Merlin video.
Yet another Merlin video.
Merlin again
Last Merlin.
Airbus A340 jetliner. Just for fun.

Send comments and questions to Yann: .