Jump to content

MIDI concertina feature wishlist


Recommended Posts

Recently I started exploring keyboard layouts beyond concertinas to build virtual organs around. I tried classic piano (I still hate it), then converted one to Janko (much better, but octave span is still a problem), then bought 70 years old CBA (and fell in love with the B-system layout)... and down the rabbit hole I got fed up, that there are no viable MIDI options for basically anything other than classic piano. They are either flawed, non-existent, no longer in production or simply stupidly expensive. This includes of course MIDI concertinas of any flavour. So I decided to dust my old MIDI project. Right out of the gate I was very happy to discover, that some current iterations of Arduino support USB MIDI out of the box, and that one of them is physically compatible with my old circuitry. Software however needs a rewrite, since the old version relied on a software driver and there are off-the shelf libraries available now. So, a question to the concertina hive mind:

 

What features would you personally want in a MIDI box? What controls beyond buttons and pressure sensor would you find use for? 

 

To clarify, this project is only for MIDI controller, not a standalone digital concertina. No onboard synthesizer, no speakers, USB (and perhaps BL) MIDI only (no MIDI connectors), and my question is not about physical instrument this will go into. The main goal is to provide a flexible, open platform built around off-the-shelf circuitry and components (so no custom PCBs), that can be used to build MIDI free reed instruments, either from scratch or as conversions.

 

Some things that are currently implemented:

 

Hardware:

- basic keyboard with 64 buttons using multiplexers

- 2x pressure sensor

- four bi-stable utility switches

- one potentiometer

 

Software

- basic MIDI communication for the hardware above

- button mapping customisable on the fly (and persistent), without the need of hardcoding it. Currently this procedure requires another MIDI keyboard as an input.

- four selectable pressure response curves

- unisonoric and bisonoric modes (this is old code and IIRC bisonoric mode had some issues; not yet tested with the current setup)

- piano mode (pressure controls velocity instead of volume)

- transposition knob

- since there are two pressure sensor inputs (initially I could only source uni-directional sensors), the other one is used as a wind input for additional MIDI CC

 

My current "to do" and "this might be an interesting idea" list:

- expand basic keyboard capability to 2x64 notes with independent channel setting via I2C bus

- drop multiplexers in favour of full matrix, so that links can be used freely (for expanding Hayden layout sideways into enharmonic duplicates and to accomodate CBA duplicate rows)

- implement keyboard matrices in a way, that disconnects them from physical layout of switches (intermediary PCB) to allow any sort of physical layout

- expand bi-stable switches pool to accommodate organ and accordion registration requirements (stops, combinations etc) for multiple manuals

- add rotary encoder and display so that I can add an "onboard" button mapping procedure and allow for menu-driven settings and wider customizability of available controllers

- add one or two thumb joysticks or other suitable controls for more MIDI CC inputs

- add drums mode and perhaps sequencing/looping capability for finger-drumming backing track (this one only if I decide to upgrade to more powerful board later on)

- add accordion standard basses modes

- add expression/sustain pedal connectivity

- add "strum" mode, where pressed notes are arpeggiated up/down/fast/slow depending on pressure direction and value

 

[obviously, not everything on this list concerns MIDI concertinas :D]

 

Currently I work around Arduino Leonardo, as this was a straightforward modernisation of my old circuitry, but it is a rather limited board, so an upgrade to Mega or even Teensy 4.1 at some point may happen...

 

As a side goal, I'm also testing some ideas for 3d printed switch suitable for free reed MIDI, with a form factor that will fit Hayden spacing requirements and durable enough for musical instrument. If it'll work, conversions of any kind of concertinas will be possible without the need of lever action. But that may prove to be a quest for a holly Grail...

 

 

 

Edited by Łukasz Martynowicz
  • Like 1
Link to comment
Share on other sites

I think it would be rad if there were a thumb wheel on each side that would allow you to bend the pitch up or down. They would probably need to be spring-loaded to return themselves to the neutral position when not in use.

 

I do hope you or one of the other talented engineers here produces a viable midi concertina one of these days. Such a device would seriously simplify my tutorial production workflow. To say nothing of being able to practice with headphones :)

  • Like 2
Link to comment
Share on other sites

8 hours ago, Cathasach said:

A octave switch would be useful. I like how the Commodorion uses a mic to capture the airflow rate(

)


You mean a single octave up/down transposition shortcut, or a switch to make each button simultaneously playing two notes an octave (or another interval) apart?

Link to comment
Share on other sites

8 hours ago, Łukasz Martynowicz said:

I don’t understand this. Could you please elaborate?

Well, it's a wish list but thinking it through,  I don't see how a master button would work other than on a melody.  However, if each button ( landing pad ) had multiple functions, like a little joystick. an 88 keyboard could be reduced to 52........😊

Link to comment
Share on other sites

Teensy 4.1 is a powerhouse, but you will almost certainly need to re-write some code to use native Teensy midi functions.

 

What processor do you plug the controller in?

What I found is that although MIDI is supposed to be a "standard", every processor seems to interpret various CC commands differently 🤪.

Link to comment
Share on other sites

5 hours ago, mChavez said:

Teensy 4.1 is a powerhouse, but you will almost certainly need to re-write some code to use native Teensy midi functions.

 

What processor do you plug the controller in?

What I found is that although MIDI is supposed to be a "standard", every processor seems to interpret various CC commands differently 🤪.

I only work with software MIDI via USB/BT, so I just use custom mappings. At this point I don’t intend to include classic MIDI connectivity due to limited pins on Arduino, but I may add it later if I decide to switch to Mega/Teensy. Regardless, if I manage to add display and encoder, then all switches/controls will be customizable onboard. Rewriting code for different boards is not really a problem once the fundamental version is done. It pretty much boils down only to changing pin numbers and rewriting MIDI calls for different library (although the one I use currently seems to be available on all platforms). The important core of the code is pretty much platform agnostic, since all those platforms use C/C++ syntax.

Link to comment
Share on other sites

14 hours ago, wunks said:

Well, it's a wish list but thinking it through,  I don't see how a master button would work other than on a melody.  However, if each button ( landing pad ) had multiple functions, like a little joystick. an 88 keyboard could be reduced to 52........😊


Ah, you mean a sort of a „modifer keys”? Press a natural note and a modifier to make it sharp/flat, so a fully chromatic octave only needs 8 keys instead of 12? You answered yourself - this is a melody only solution. And „joystick” method actually needs more than 88 inputs, since you would have 3 inputs per note. However, this can be solved mechanically with rocker switches and the physical layout could indeed be reduced to just 7 keys per octave (which operate on 21 switches). So good news here - since what I intend will support button repeats, this will be supported, but it’s up to the user to come up with suitable physical instrument.

  • Like 1
Link to comment
Share on other sites

1 hour ago, mChavez said:

What do you use on the other end of the USB cable? Haven't tried the classic MIDI port, but played about with MIDI over USB.

 

Pianoteq, Organteq or VCVrack, all rely on manual MIDI mapping. There are some basic presets for those Moddart apps, but nothing hardcoded. In VCV you have to wire everything anyway. I'll map preset based on official MIDI documentation though.

Link to comment
Share on other sites

  • 1 month later...

I think you could do interesting things with one or more "programming" keys.

 

Reassign a drone key to any other note.

Toggle between key layouts (of which octave or key shifting is a special case).

Sharpen or flatten a particular virtual reed.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...