Wow nice patch! And nice case also!
I'm playing a bit with the patch and trying to control it with midi CC but can't seem to find a way to control the wave-selector by midi. Maybe it's because i'm just doing my first steps with the axoliti Any ideas?
The Xylobox Wavetable Synthesizer (hardware + patches)
Thanks! I think the Midi CC outputs a float value, whereas the wave selector requires an integer. Try using conv/i
and disp/i
objects to see what you get out. You may also need bipolar2unipolar
if the cc values come in as bipolar (-64 to 64 instead of 0 to 127).
Hi very cool synth. Maybe I missed something, but how you managed to connect 24 potentiometers?
My control board also functions as an input expansion board. It has 2 MCP3008 analog-to-digital chips that I read in over SPI. Those each have 8 inputs, plus 8 more on the axoloti board = 24.
Here's a thread about interfacing the MCP3208 to axoloti:
https://sebiik.github.io/community.axoloti.com.backup/t/gpio-i-o-example-adc-mcp3208-spi/
Hi @gagarin and @dyneq I was able to finish up a very rough schematic for the control board and other inputs in fritzing. Please excuse the wiring, I'm not familiar with the part editing so had to use the layouts I could find. The big chip is indeed the MCP23S17 (not the MCP23017 as on the graphic labeled).
Anyway, the main trick consists in sharing the 3 serial lines (SCK, MOSI, and MISO) between all 3 chips, then using separate digital pins from axoloti to the NSS/CS pins of each chip to enable them. The rest is basic potentiometer wiring, some series resistors for the LEDs and seven-segment displays, and a couple switches and encoder quadrature. I may have flipped a few pins from the axoloti serial protocol, so make sure you try each piece on a breadboard before soldering anything up!
(Note: the outputs from the MCP23S17 are arranged for diagramming convenience - probably a good idea to wire them according to the standard ABCDEFG 7-segment schematic so you can use a standard truth table, although I ended up making my own by trial and error anyway)
(Edited to add some decoupling capacitors.)
that's beyond impressive!!! this patch is one of the reason i bought my first axoloti
but being totally totally unable to work with the welder and electronic components, do you think it can be used with a usb controller? the akai midimix has enough pots i guess...
That's very cool to hear! Should be no problem using the patch with MIDI. The only thing to be aware of is that the wave selector input takes an integer
value rather than a float
which the midi objects use, so you may have to mess about with conv
objects to get that to respond. Ultimately it may be better to add some math objects and use increment/decrement buttons instead of a selector knob.
living in Canada, I enjoyed seeing your reference to BLMS... as I have been quite happy with price and especially delivery. Great build.
Really Really great project and thank you for sharing! I was wondering if you could perhaps share your BOM and schematics so I know what to get if I decide to build one of those as a first DIY project.
Edit: I have been piecing together the necessary information by going through this thread and following various links taking me across the axo community. I am getting more and more enthusiastic about the possibilities of the axoloti and the brilliant stuff that people have been creating. I think I almost have all the information I need to start ordering parts for my project, which will be largely based on the Xylobox (same amount of knobs and buttons).
I have two questions about the patch that I can't seem to find an answer to but perhaps that is because I don't know exactly how to phrase them. I am posting them here because they relate to the xylobox patch and project, but @thetechnobear feel free to move it if you think they belong somewhere more general:
I would like to add the possibility to store the potentiometer and button positions as loadable presets (and control them by adding save/load/cycle preset functionality to the three existing buttons). My Microgranny has this function and I find it it extremely useful. Does anyone have experience creating such a thing and @matthewcieplak do you think adding this to your master_patch.axp would be actually possible (with regards to cpu use for example)?
I would also like to use this patch to manipulate incoming audio. Is there an elegant way to modify the master patch into a version that responds to incoming audio rather than MIDI? (I would like to feed it audio loops and mangle those on the fly using the knobs, not like adding an effect to the audio, but to use sound signals as a trigger much like a midi trigger). In a perfect world this would be a matter of simply swapping a few objects to change the source of the signal I have to say the more time I spend visiting these pages the deeper I disappear into a rabbit hole of amazing theoretical possibilities; most of them far beyond my actual skills. So what is the harsh reality?
Great to hear! Yes, the schematics are pretty barebones but you seem to have followed the major details. As for a BOM, there's not that much to it!
Chips: MCP23S17, MCP3008 (x2)
3x LEDs, 3x momentary switches, 1x rotary encoder, 1x 2-digit 7 segment display
24x 10k potentiometers (or 100k), wire, and protoboard!
Honestly the case took the most time to build because I'm such a noob at construction and picked very difficult materials (plexiglass and walnut). Lately I've been getting more into building guitar pedals and started etching my own circuit boards. It might be fun to try to redesign a control board that can be put on a single-sided PCB so I can make a few to sell or allow others to build their own.
As far as the features you discuss adding, the preset stuff eluded me when last I looked into it. I know that technobear and others have been working on getting into the main software so that is a possibility. However the way my xylobox control works is to read in parameters in-real-time from the serial interface and update controls in-place, so it would have to be adjusted to respect the position of parameters set by the preset controller with some kind of takeover control (i.e. only switch to realtime control when the knob matches the preset). I also don't know how the preset storage would work, other than serializing parameters to file on the SD card.
I would probably suggest adding a couple dedicated buttons for loading and saving presets. The axo inputs are maxed-out in my design, so I'd probably add a 3rd MCP3008 and move the last 8 potentiometers to serial input as well to free up 7 more pins (8 minus the one you need one for each add'l chip). Then you could have a couple more buttons. Might also free up some object memory.
As for the realtime audio manipulation, that's easier in some ways than static wavetable management. There are a couple patchers around the forums that do the granular synthesis thing, which is basically what you're describing. However it might be a real challenge to mix this with the preset logic since you wouldn't automatically have a way of writing the audio to SD alongside the preset.
Curious to hear what you come up with! I would suggest starting small, on a breadboard, so that you can get each component working without having to debug entire systems at once. Good luck, and let me know if I can help further clarify stuff.
Ah man thanks for you elaborate reply, this is really helpful!
Did you see my post on the design I did? Do you reckon it's simply a matter of keep adding more MCP3008's to be able to expand on your original by this much buttons?
I will definitely keep you posted on how I fare - will start last week of October when I have time off
I hope I found my answer here: gpio/mcp3208
If I understand this correctly, it should be far easier to just double the amount of pots in my design and forget about doubling the functionality of each knob by adding A/B mode tact switches and pot position recall code in the patch? I would be able to fit all the pots on the same surface so my box will not even have to be any bigger either.
Right?
Did you connect 10 pots directly to axo and 14 via the mcp3200's? I read that it's not possible to adjust more than one pot at a time when they are connected via a mux (the mpc's are mux's?) is this correct?
Hello,
I like this project thats the reason I bought the axoloti core becasue of this project.
Only thing is I cant get the xylobox controls to work is there a way u can upload the master patch with the controls working?
Would help me alot to understand how this works.
Hi imdiffrent,
You can find the control-signaling patch in this post here, it's a .axs file which is used as a subpatch in the main synth patch, and has outputs that represent the various control levels. But I think the axo patcher will let you run it on its own to test out the serial comms.
hello thanks for the reply,
I tested out my pots and they work except the rotary encorder could you share how u hooked the xylobox control up in the main patch?