Replies: 7 comments 4 replies
-
You'd need a bootloader that allows you to choose which kernel gets booted. |
Beta Was this translation helpful? Give feedback.
-
No. What I meant is that all these projects are very similar in structure, and I’d like to combine them all into a single file with a menu to choose from. And if there are enough resources, it would be awesome to add the ability to play multiple synthesizers simultaneously or split them. I’m not sure about the copyright and licensing issues, but I’d really like to see something like that. Or maybe develop a universal API for integrating any synthesizer. The foundation is already there—display, buttons, MIDI processing, network, USB. That way, other developers could also join the project. |
Beta Was this translation helpful? Give feedback.
-
No, it would take up more resources, even though it would add compatibility. But aren’t we discussing bare metal? I looked at the code, and it seems logical and everything is in its place. JV880 is based on Minidexed, and so is MT32-pi. Integrating them shouldn’t be too difficult. I tried, but I don’t have much programming experience—the last time I wrote code was 20 years ago. I can fix some things, but it’s hard for me to see the big picture as a whole. What worries me more is pulling in third-party libraries into the project. Commits aren’t being added to main, and there are always some issues during compilation. I managed to compile JV880, submitted a commit, but it seems the project is abandoned. The display output still needs to be finished. Maybe I’ll manage to get something working. After that, we’d need to add the discarded SC55, SC155, etc. |
Beta Was this translation helpful? Give feedback.
-
The only overhead will be the memory usage. Considering the shared components like the display, buttons, MIDI parser, USB, not much memory will be needed. If only one synthesizer is loaded, the boot time won’t change either. But don’t you agree that playing on a Yamaha and then, 10 seconds later, on a Roland is an interesting idea? Moreover, the capabilities of such a project would increase significantly. SoundfontSynth, for example, is only limited by the size of the SD card and the amount of RAM. I’ve played around with it, and there are some really interesting sounds. And constantly swapping a tiny SD card is very inconvenient. I agree that switching kernel.img might be easier than adapting all the projects, but then they would remain separate projects, potentially with different hardware configurations that would also need to be adjusted for Minidexed. After all, I doubt anyone will stop at just MT32-pi and SC55. There will be other projects that might want to join MiniDexed. Especially since there are already plenty of different Hardware Shields available. The only difference would be in the software. The core components are already in place. I actually have an idea — to skip adding physical buttons, because I want to integrate Minidexed or UnitedSynth :) into a Novation SL MK2 MIDI keyboard, which has plenty of buttons that can be programmed for any command. I tried it. Minidexed seems to have some latency. I need to test it further. |
Beta Was this translation helpful? Give feedback.
-
There is an integration with the Arturia Minilab 3 and Keylab MK2/Keylab ES, you can use Minidexed with their displays and encoders. Probably you can extend the code with your controller. I think integrating MT32-pi and Minidexed into a project takes more work and time than you might think. Although both use Circle, there are many differences. But good idea anyway. If this is the goal, then in the long run I would also vote for a Linux-based project. |
Beta Was this translation helpful? Give feedback.
-
I think given that things like Zynthian exist and is already so, so much more powerful and integrated, I'd say that attempting to expand the scope of MiniDexed like this would negate some of the reasons for the project existing in the first place :) But that's just my view. I know building in Dexed was a request for MT32-Pi which already allows the choice between Fluidsynth and MT32, but given the apparently stalled status of MT32-Pi I'm guessing development has now ceased. Kevin |
Beta Was this translation helpful? Give feedback.
-
Some time ago I wrote a bootloader for Ultibo, another bare metal environment for Raspberry Pi. The bootloader lists the kernels in the directory on the SD card, allows to select one and then copies the kernel, its cmdline and config.txt to the main directory and reboots the pi. These kernels should however have a shutdown/reboot function that restores the bootloader. If not, the last selected kernel will run after the reboot. For synths, there may be not a bootloader at all. Instead a function, invoked via midi event, may replace the kernel with another synth and reboot the Pi. Another solution may be using several Pis, every Pi with its own synth. Zero 2s are cheap enough to consider this, and then they may be configured to use different midi channels. A problem to solve is how to connect all these Pis to the midi controller and/or computer. Of course, there may be yet another Pi |
Beta Was this translation helpful? Give feedback.
-
My idea is to combine all bare metal synthesizers with similar connectivity into one. Currently, I use mt32-pi and Minidexed on the same hardware, but constantly swapping the SD card has become tiresome. How could this be combined? Additionally, there is the mini-jv880 project, which uses the Nuked SC55 engine, which also has multiple romplers, like the MT-32. What do you think of this idea?
Beta Was this translation helpful? Give feedback.
All reactions