Using just a few rotary encoders to control almost every parameter of axoloti?


#21

I believe it's possible to send any parameters you want.

My design should allow for 80 cc's on the rotary encoders and then 32 more on the glowing buttons.
I also have a shift button tho I am unsure what I am using that for at this point. I'm basically looking to have a control surface which is super open ended to allow control of a wide variety of patches.

So I want to send all the parameters on patch open and then manipulate them from there.

I was thinking it would be cool if I can use some of the squishy buttons to recall presets. At which point sending the parameter values would be really important.

This is all the UI bits. Demonstrating proof of concept on the Arduino side. Lots of coding still to be done but I think I am near to being in a position to try and physically connect the two soon(when full time job and family commitments allow)


#22

This looks cool, even though I much prefer an OLED screen instead of big led number displays :slight_smile: the cheap oleds are so cheap that one wonders about using 4 displaying oleds for info about parameter or LFO, OSC info, etc.. :slight_smile:


#23

I plan to do that with the next one.
For now those were convenient and easy as I am pretty new to this.


#24

yes, there are a lot pre build menu library for arduinos. They should also work with teensy/-duino.

I don't know if axoloti fw sends any message if a new patch is loaded to axoloti but you can code a routine and write your "hello, I'm a new program" command and here are the start condition and values which are send one time if a new patch is loaded to axoloti and it's starting for the first time. same on your microcontroller ehich send "hey, I'm ready to receive"…
theoretical it's working like any normal midi controller which has encoders build in.

@MrBim
your project looks cool.


#25

@MrBim and @bafonso what about and ILI9341 touchdisplay…at the moment they're cheaper then oled displays.

edit1 maybe this pcb is 8 encoders and led rings would be interesting for.


#26

In my DMX light controller I used a capacitive touch screen based on the ILI9341. It works well and is FAST w/ the teensy, not sure about other platforms. You need to pick a screen that has libraries available or then it becomes a project just to use that particular display. The multiple small OLED display will be a pain to use, it is much simpler to use a single bigger display.

You mean the 16 monster encoder PCB? :slight_smile: It seems like that there's no middle ground between 1 encoder breakout and 16 :slight_smile: I looked and could not find 3, 4, 6 or even 8. I panel mounted them last time but all the wires, it's a mess, oy vey


#27

yes, I looked up the U8glib library for my oled…it has a lot of function but to complex to edit it to work with stm32f1…the adafruit libraries are much easier to understand.
I used an I2C oled display and I can set up different I2C addresses by resistors…so I think it's possible to drive 4 oled display by one i2C bus. a maple mini has two hardware I2C buses and with fast clock speed and it's also possible to use software I2C with any GPIO but slower speed (~100MHz)

YES :heart_eyes:…the module use 4 74hc165 shift in registers + SPI (4 wires, VDD, GND) to read out the encoders states. I don't know how there doing it, but it working great with their MIOS fw. Maybe someone which is more skilled in programming can to a look at their source code and find out how it's done.

There is also 8 encoder pcb :grin:


#28

They haven't stopped at 8 :smiley:

Midibox thread


#29

thanks @mongrol . I have searched for this control board but didn't found it. I love the ways some oled display are mount between the rings and encoders.
Can you explain how they're are reading the 24 increment state of each encoder?

here is a one example how to transmit datas by uart between an arduino and axoloti. The axoloti part needs some improvements. If I have tried to comment each step so everyone knows, what's going on.

message to be send to arduino are:
l/ value1 value2 value3 value4 ("l/" at the beginning signals a message for leds section followed by 4 bytes value.
x/ HELLO WORLD!; ("x/" at the beginning signals a string message. ";" marks ending of a string message. Everything between will be printed by arduino serial…

the arduino sketch needs two serial ports but you can edit it to work with only one arduino serial port. I have tested this sketch with stm32f1 based board running as stm32duino.

arduino & axoloti files

Sometimes the serial communication got stocked and it seems that serial messages are printed out in four pack sequence. So something is wrong with byte handling or storing…


Using UART to connect to arduino for UI controls
Serial Data Output
Bug after trying to open patch from dropbox
#30

The MBProgramma board is still in development. I think the one in the video was a one off and that version of the project appears to have went silent. If you read from this post you'll see Latigid On is working on a 4x4 matrix board that can be combined up to 64 way and uses RGB encoders. Looks nice.


Arduino to axoloti thru serial
#31

ah cool, hope this will be continued. I have two 16enc. edition pcbs from the first run somewhere. I haven't assembled them because I was irritated by the LED brightness problem and my whole midi box project went out of money and time.
going with a mios based midi controller (e.g. midibox128) in combination axoloti should be the easiest and interesting way to go with a lot of encoders, buttons, displays etc.


#32

sooooooo i am at the point where i am able to think about this properly now.

i have looked at the code kindly provided.

the arduino side looks like it makes sense but i am struggling to get the axolotl side to play ball.
if i download the file from git and remove the .html tag (leaving it as a .axp) i get a whole bunch of errors from the axoloti console if i try to load it.
am i being dumb? can you clear this up a little for me. i think i am probably being an idiot but i don't know where to start.


#33

I have Made some definite progress.
This is axoloti with just a 4pole filter.

Using Paul's second midi input on PA2 and PA3 (plus gnd)
Might look at NRPN's to reduce the jumps.

More to follow as it materialises.


Arduino to axoloti thru serial
#34

I can't view the video here but if its filter stepping you mean then the hi-res Midi objects could help. Arduino also supports this.


#35

awesome i will look into that today.
thenkyou for the heads up.


#36

Does any one know what format the hirez midi object expects?
I seem to remember I can't count on directly from 127 as I think the last bit is reserved as 0.


#37

if you're talking about midi/in/bend hr it's 14bits by the looks of it, 16383.


#38

Hi res midi is 14 bit, as 2 7bit numbers.
pitchbend is always 14 bit , cc optional
There is also support for 14 bit velocity iirc but this is not implemented ( and rarely supported )


#39

But is it just a 14 bit number?
Normal messages are 7 but with the 8th as zero.
Does that mean hi Rez is two 8 bit messages with each of their 8th bits as zero?


#40

by the time its out of the transport layers its 2 (8bit) bytes, each with 7bits of data.

at the transport level, you need to check the protocol, e.g. usb midi uses 3 bytes, serial 8n1 , not sure that they are using for ethernet... but all expose to app as 2 bytes.