> The serial EEPROM is a 4K X 16bits so it gives > 32 steps between each semitones. > 32steps X 12semitones X 8octaves = 3072 words (16bits) Why do you need a lookup for each octave ? Just multiply or divide the table for one octave by factors of two. You may not even need to do that if the timer has a suitable prescaler. Cheers, Colin f