The easiest way to connect your Teensy to the Axo is as follows..
Teensy UART TX pin ------------------- Axoloti Midi in din pin 5
Teensy 3.3v --------------220ohm-R--- Axoloti Midi in din pin 4
Teensy GND ------------------------------ Axoloti Midi in din pin 2
Not sure which midi library you are using, but the one by "Forty Seven Effects" seems to be the most popular, in fact they have 2, one for UART and one for USB Midi, I haven't tried the USB one yet, but I would expect the same results. Sending Midi out is straight forward, it will recieve too, but you need to decide how you will code the data you are recieving, so if you are only building a controller recomend you just start with send.
@Sharco, More than happy to share everything I have done, but I am by no means an expert, self taught so I hold no responsibility for any mistakes along the way
I'll try to explain the best way I can about the preset method..
Firstly, I am not a Synth guy, I am a bass guitarist that loves playing with effects, so my build is designed to be totaly foot controlled with a fixed layout flexible enough to incorporate all the effects I apply and Synth techiniques I learn to apply along the way. From what I have learnt from other posts here on presets is, when building Synth related patches, users want the presets there ready to go the moment you hit a button or simmilar. There were a few things about this that bothered me, the main one being, when developing a patch, the user will work the patch to contain all the related presets they require. But for the life of me, I just can't decide that this is right for me, because I think I am more likely to develope a patch where presets will come, go and change for use in a performance, but the same patch with other presets could be a completely different performance. So my method I chose to implament is has 2 steps, 1- Load Preset, 2- Apply Preset. There will be room to be flexible with this, and at the time I decided this I found that adding this feeture to the Arduino Due and sending the preset as midi was the best way to go. I find it is important to explain the above, because this was my journey to discovering what suits my needs, but it may not suit yours.
One thing working againts me, is the graphics driver on my Due uses alot of RAM so I am also limited to how many presets could be held here, but for others this may not be an issue.
Without going into the code, my setup will hold 96 patches, each patch has 32 switches, and 32 adjustable parameters, each patch will also have a corresponding preset text file, the first line of text displays a number from 1 to 6, 1 to 4 for switches, choosing how the switch will work, momentary, inverted momentary, toggle rising edge, toggle falling edge, 5 to 6 for parameters, Ubnipolar and Bipolar (total of 64 values seperated by a coma on one line) each line thereafter is 64 values of presets, first 1 - 32 for switches either 0 off or 127 on, 33 - 64 for parameters ranging in the values from 0 to 127. So the first row is read into an array everytime a patch is loaded and also by default the second row as preset is also loaded. This is where it is where I am now, trying to decide how I will interact with the presets, do I have a description for each preset, if so I need to diplay it in my menu somewhere, and if I do this, do I also do nthe same at start up, a uuser must select a preset..
I can guide you on the code.. Text file is stored on an SD card, read an entire row of text which is numbers seperated by a comma, each time a char is read it is joined to the previous char, if a comma is recieved, the group of chars is converted to a value and stored in an array, then it is looped over and over until it gets to the end of the line.
Simples..
I think for me the biggest challenge is finding out what works for me and meets my needs at the samer time. I do believe this is important, especialy with large projects that you waste your life away on like mine..