a small guitarStringTuner

StringTuner is an “app” for Android phones that plays the notes of a stringed instrument, such as a guitar, to aid in tuning the instrument.

Gratis and libre by Steve White.

Project page

The Theory

There is more than one kind of tuning method. Some work better for some people than others.

Some people seem to be born with “perfect pitch”. They just know a note is exactly right, and don’t need any outside help to tune an instrument.

Some people don’t have “perfect pitch”, but can compare two notes, and tune an instrument to a standard note being played. The String Tuner app is for these people.

Other people lack the ability to compare two notes. They need something like an oscilloscope to tell them that their instrument is tuned right. There are plenty of phone apps around with oscilloscope-like features just for this case.

Finally, some people have no musical ability, but can hire other people to tune their instruments for them, and even play for them, and to tell them how fantastically gifted and wonderful they are, just to be able to sit while someone else does everything for them. Such people are not among our target audience.


So far, StringTuner has standard tunings for Guitar, Ukulele, Banjo, Bass, Violin and Cello.

And so far, its interface is localized for the languages Dutch, French, German, Italian, Russian, Spanish, and Turkish, besides English.

Sound implementation

The current implementation uses standard MIDI sounds sythesized via the operating system (perhaps using MIDI hardware on the device). Advantages of this approach include: much simpler, smaller code that usually produces pretty good sound. Disadvantages include: it doesn’t sound the same on every device, it sounds pretty crappy on some devices, and that the app is limited to the voices supported by the General MIDI standard.

Hardware supported

Should work on any Android phone running OS v 2.3 (Gingerbread) or higher.

Previous versions

A previous version of StringTuner was intended for any device that supports

It was been seen running in multiple Nokia phones with Symbian S60 3rd Edition.

It ought to run as well on Blackberry RIM—but that system is mysteriously lacking the feature of playing a short MIDI event, although the Blackberry developer documentation seems to indicate support for MMAPI.

It might run under Android with something like Netmite App Runner, but the App Runner also currently lacks MMAPI support.

It won’t work on iPhone until they smarten up about Java.