A good thing, in my opinion, is to have a kind of dynamic matrix. Something like 2*n, where n is the number of intervals of the scale.
n is user configurable (by a knob, a slider or a number field).
See this schematic view:
-------------------------------------....---
| 1 | 2 | 3 | 4 | 5 | 6 |....|n|
|1.000|1.010|1.023|1.321|1.540|1.103|....|2|
-------------------------------------....---
^ ^ ^
| | |
Foundamental Lower! +1 Oct
In this way you can make scales of a different number of step within the octave
(in comparison to the standard 12 steps).
In the second line you put the factor of multiplication of the foundamental (2 is the upper octave)
Notice that it's possible to make decreasing scale if each factor are lower than the previous.
It's also possible to make strange and bizarre scales, the only thing is to put strange values...

(i imagine a scale that firstly decrease and then raise...)
At least 3 decimals are required in my opinion, to have the necessary precision at high frequences.
Next versions could have some cool features like these 2:
- The first is to make a button that activate a kind of auto-transpose. So when the button is in on the device will automatically transpose the scale up and down, permitting to cover the entire field of udible frequences. (in this case the last step doesn't be 2, otherwise there are 2 identical note in 2 contiguous places)
When the button is turned off, the scale works only for the setted range in the matrix; the pattern is copied in the upper and in the lower octaves. If, for eg., you play the note after the last in the matrix, the first of the matrix plays.
This could seems unuseful, but i think it's very useful if you want that an instument playes only in a selected range.
- The second is to make a kind of "finetune randomizer", that minimally change the pitch in realtime, reproducing either the beautiful "pich tuning throubles" of the vintage analog synthesizers and the natural performance of acoustic instruments (like the fretless bass, the strings like violin, viola etc...)
Finally I hope to be understandable, (my englih isn't very nice), otherwise tell me what you don't uderstand.
