Thanks! Render is by a friend of mine, based on my concept sketch
The algorithm will ideally be written to be portable the first time around, but its starting out on the instrument because I think the stradella bass layout lends itself to controlling the algorithm manually. Pressing a chord button simultaneously declares what notes you want played, the harmonic funtion you expext them to fulfill, and thereby how they should be tuned in relation to eachother. Other control schemes have a bit of ambiguity of intent, which we can work around, bit i think Stradella is better.
As for midi specifications, the instrument will have midi input and MPE output (look into MPE if you’re not familiar, great stuff) to controll other digital hardware or software instruments. Once the algorithm is written, I hope it will be repackaged into various other formats (like a VST plugin, or a midi/MPE passthrough that runs on a PC or a dedicated midi hub).
There are a few ways.
The tuning root can be played manually (aloud or just for tuning) on the bass keyboard
another open source algorithm whose name has left me can recognize chords in real time and my algorithm can tune based on that
players can write a midi tuning track ahead of time to play along with
C++ is the only language I have any experience with, and it’s a common enough choice for embedded development that i didnt see a need to learn a different language. If i had a programmer join who could work on the firmware and show me the ropes, id be willing to consider another language.