Jojjelito and myself are currently collaborating on a bigger MIDIboxNG project, that should help facilitate patch programming for all those synth users, that are unhappy with the bad/minimalistic user interfaces of their rack and keyboard synths, especially when programming new patches. This project was planned for years and never took shape...
But, thanks to TK., MIDIboxNG came to the rescue!
Its codebase has all of the needed functionality integrated in a very generic way, allowing to do so many things!
So... why this project, additionally?
We thought, for the common usecase of programming patches for (multiple) complex synth engines, it would be nice to have the option to build a MBNG with a standardized component list, a predesigned frontpanel and to have a helpful display layout, with the option to add additional hardware modules (like a joystick vector mixer) later on. So, "MBProgramma" is basically just a name to identify a MIDIboxNG with the hardware properties listed below.
The idea of presenting a standardized project yields some benefits:
a) most important: we can share synth configurations among other users - they will work on all MBProgrammas without config file changes - if someone is brave enough to build that FS1r configuration, all other owners will benefit from the effort
b) newcomers can focus on building a proven setup, which saves time, as they do not have to design everything from scratch.
c) we can document and learn from mistakes along the way, so that other people can avoid them :-)
d) maybe we can contribute back to MBNG, if TK. accepts some code fragments, like the bitmap graphics loader, or so.
e) we can write specialized code for specific hardware, in this case some graphics routines for the 128x64px OLEDs - or something synth-programmer specific...
The current hardware requirements for a MBProgramma are as follows:
a) a STM32F4 core
b) one DOUTx4 digital out module
c) four of fairlightiiis LRE8x2 LEDring Modules (ideally equipped with pushable encoders for parameter input acceleration)
d) twenty-four SSD1306 compatible 128x64px OLEDs
e) a SCS-based menu section, which allows to switch patches (aka switch through programmable synth configurations) and change banks (64 encoders are not nearly enough for the complex synths)
f) all is housed below an affordable acrylics frontpanel in MBSEQV4L-style (all boards may be mounted on a wooden construction base, but maybe someone is willing to design a full case?). We will provide the panel file download for formulor/ponoko, when the panel has arrived and has been tested :-).
g) an optional analog extension box, allowing for joystick vector input, pot-fader input and analog pedal sockets.
Basically, the Programma is a MBNG with four 8x2 LEDring boards and a SCS and maaany displays. We present a novel way of mounting/using the OLEDs to label the encoders and have added some minor code patches to add some extra bling :-)
Our tests have shown, that it is next to impossible to use a few banked LEDring boards without proper labels. The displays are mounted on the encoder boards and they support graphical labels, that are directly read from SD-card (and are editable directly in photoshop, without use of a file converter), so we can have a lot of different banks with nice graphics :smile:
The project has just started and will be a long ongoing project, also, all those synthesizer programmer configurations will have to be written - we will use this thread to upload pictures and configurations along the way. Feedback is also very welcome! :-)
Jojjelito has agreed to do much of the documentation work ;-), so iÂ´ll just chime in from time to time to post pictures and give some free bad advice! :-)