led display for guitar chords

topicaxe

New Member
Someone I know plays a guitar but his eyesight is poor to the extent that he can only read music with a magnifying glass.
I'm wondering how I could make a display panel, consisting of 6 columns x 5 rows of leds, and have some of those leds light to display a particular guitar chord. The panel would be positioned in front of the guitarist. The illuminated leds indicating which strings to press. Having played that chord he then presses a foot switch and the next chord is displayed, and so on.
The electronics would need to allow him to firstly input the 'code' for each chord - which leds to be illuminated - and memorised.
I'd welcome your ideas as to how this problem could be solved. I've done a few basic projects with picaxe but nothing experimental like this.
 

papaof2

Senior Member
Most songs will have a lot of chord "events" to store, although the number of different chords used in a given song is usually limited. You probably want to encode each chord (C7, etc) in a simple manner for storage and recall (six bytes to display columns or 5 bytes to display rows).

The display needs some multiplexing (to drive 30 LEDs), either on-chip or with external chips (lots of examples on the forum).

Back-of-the-envelope design -

A stored library of chords, which can be displayed on the LEDs.

A "Store/play" switch.
An "advance" switch.
A "save" switch.

In "store" mode, the "advance" switch would step through the library of chords and the "save" switch would save the chord that is currently displayed.

In "play" mode, the "advance" switch would display the next chord and the "save" switch would change to another song (if more than one song is stored).

If saving multiple songs, then some type of index is needed - possibly an LCD display with large characters that displays just four characters of the song's title (Beethoven's Fifth might be "BEE5", the Beatle's "HELP" also fits in 4 characters). The index would need memory for storage.

The biggest problem I see is the amount of memory required to store the library of chords and the sequence of chords for a song (or group of songs) and the index (if used). Speed doesn't seem to be critical here, so either an I2C or a serial memory device might work.

If only one song is to be stored, then one of the X1 series chips might have enough memory to save the data on-board.

Let's see what the PICAXE brain trust comes up with in the next couple of days ;-)

John
 

hippy

Ex-Staff (retired)
In some instances driving a 6x5 LED display without flicker can be difficult with a PICAXE unless a dedicated multiplexing driver is used, but in this case as you only need to drive a half dozen LED's or so at any time it should be possible to do that using Charlieplexing. That would just require 7 I/O lines from the PICAXE.

I'm sure you will, but talk through with your musician friend to determine how he wants the display to be done, as well as the LED's on the strings there will also be LED's needed to show the open strings etc.

The more capable you make the display the more useful it will be as your friend progresses ...

http://upload.wikimedia.org/wikipedia/en/2/2e/Common_guitar_chords.png

Likewise for input; user convenience should drive it. Maybe an input panel with three columns A-G, sharp/Flat, maj/min/dim/aug etc ). You could use a matrix keypad for that or maybe use a hacked-up PC keyboard and use the KEYIN command.

Prototype and test drive it before committing to building boxes and PCB's. Cardboard with holes punched in for LED's is a quick display, a PC keyboard can be used for prototyping software to save having to build the real input interface.
 

manuka

Senior Member
How bad is his vision? Is it a short/long sighted issue or more major ? I'm reminded of help given ~20 years back for a teen with similar vision hassles. All manner of human & electronic (pre micro) ways were being expensively considered to help him with word processing, but in the end a PC with composite video output feeding into a very large screen TV solved things nicely.

Since that time of course numerous electronic image magnifiers have appeared- have you considered even a simple digital camera looking at the score (& feeding into a big LCD), or -gasp- just a magnified photocopy of the score to A3 etc? Even photocopy to mylar & use an OHP to make the score wall size- this is done all the time for school musicians etc.
 
Last edited:

westaust55

Moderator
Some thoughts on storage and display.

For some reasonable storage, using say a PICAXE 28X1 on a AXE022 protoboard immediately gives access to one EEPROM socket. The standard address is 1 but with a small mod I have chnaged mine to Address 0. Then add the AXE111 memory expansion board (intended for the data logger) for another 7 sockets.

With 8 24LC256 EEPROMs you will have 256 KBytes of EEPROM as data storage for the music information. These EEPROM operate at the faster (400kHz) i2c bus speed. Using 5 bytes of data to drive the 5 x 6 LED display, guessing at 1,000 chords in a sequence for each song would allow you to store 52 songs with some space left for an index. Alternatively keep the index in the EEPROM within the PICAXE.

In terms of a display, I have just build a circle of 16 LED’s in various colours (Red, Green and Yellow). I am driving these using two PCF8574 (100kHz) 8-bit IO-Expanders via i2c comms. The MCP23008 (8 bit) or a few MCP23016/17 (16 bit) IO Expanders are alternatives and operate at the faster speed (400KHz). So the 5 x 6 LED display can be achieved with 5 x MCP8574 ICs + 30 x 330 Ohm resistors and of course the 330 x LED’s.
 

topicaxe

New Member
Thank you all for your replies. Interesting to hear your ideas. Wish I could get going on it soon, but I'm just so busy in the garden this time of year.
 
Top