Feasibility of a project using ZynthianOS on a Raspberry Pi for a MIDI-controlled patch library for external analog synth hardware

Hello!

My partner and I are electronic engineering technologist students working on an applied research project as part of an accredited course in our college program. Without getting too into the nitty-gritty, how viable would using a Raspberry Pi running ZynthianOS be for essentially acting as the brain of what will otherwise be a mostly analog synth? Ideally, the final build of the project will have an editable patch library.

HiFiBerry’s DAC/ADC boards look like promising middlemen between the Pi and the discrete component analog VCOs, VCFs, ADSR, and VCA we’ve cobbled together, but what other considerations should we be concerning ourselves with?

We were thinking of writing the library program in PureData, which isn’t even scratching the surface of what that particular graphical programming language is capable of, but neither of us have any practical experience in implementing it or with ZynthianOS’s quirks.

Any thoughts, suggestions, or directions to useful resources? The college workload and limited timeframe are the main reasons I’m reaching out generally instead of going digging myself. Many thanks in advance!

1 Like

a reasonable choice. Maybe a better choice would be Blokas Patchbox, it’s a bit more oriented towards ‘standalone’ use without the conventional app:

2 Likes

Hi @rambo! May I extend the warmest of welcomes to you and your shy partner :grin:. I hope you will enjoy your travels through Zynthianland and even if it is not your final destination, you linger a while and converse with this wonderful community.

I don’t think that Zynthian is a good platform for your project. You may find yourself figthing with its archtitcture. The current codebase is suboptimal (being radically transformed in development) and can take a long time to understand to a level that would be beneficial as a base for you.

Also you describe a mostly analogue platform. If your system is creating sound with VCOs then what would you be doing with audio bandwidth ADC/DCA? You may benefit from wider bandwidth (from 0Hz / d.c.) DAC. You could use the low frequency analogue outputs of zynaptik but may find a challenge to cross-over between the two or find constraints about seperate low / audio frequency DAC.

Raspberry Pi is a good platform and the Zynthian repositories in github are there for inspiration. Remember that RPi needs an OS and takes tens of seconds to boot. This may not be an issue for your research project but worth considering.

PureData is a graphical programming language for audio processing. It is a fine platform for creating processing chains and control mechanisms - maybe simpler than lower-level languages like C/C++/Rust. In Zynthian it acts as a mechanism for users to create their own plugins without such low-level programming knowledge but is currently limited to running only one patch. You do not need Zynthian to run PureData and frankly I would suggest it is easier to do so on a standard OS.

Zynthian is a glue that sticks together lots of modules including upstream synths, audio and MIDI processors, etc. We are often asked if we can integrate other similar projects and although it occasionally happens (like mod-ui) it is (IMO) a poor fit.

Zynthian is based on Debian, a fine GNU/Linux based operating system. You may find it more appropriate for your project to use a vanilla Debian OS (e.g. Raspbian OS or DietPI) and build the bits you need. Of course Zynthian does offer a hardware and software platform from which to build and there may be benefit in reusing some / all of that, especially if the target project has similar hardware requirements, footprint, etc.

We are a nice bunch and as long as you don’t end up dragging too many of us too far off topic we love talking about audio processing on Raspberry Pi, especially if there may be some benefit for our lovely little project too! So do continue the conversation and let us know of your progress and direction.

3 Likes

Good points on the bandwidth, haha. S’pose this is the benefit of dipping toes in the water; they cloister us off in classrooms and theory-land so long that as soon as we’re let off the leash to attempt implementing what we’ve learnt, the first principles get thrown right out the window, haha. -_-

I see, that makes sense. The possibility of connecting the appropriate CV signals and MIDI data to/from a Pure Data patch that’s essentially for editing various parameters throughout the rest of the synth occurred to me, but now that you mention it, it does make a bit more sense to descend a level from Zynthian OS and its tailored feature set to just running a Pure Data patch on Raspberry Pi OS.

Thanks for the cud to chew, haha. Cheers.

1 Like

Oh, this does look closer to what we’ll need. Thank ya kindly!

2 Likes

Another option is the Norns/Norns Shield platform but it is a bit hard to get your hands on due to changing designs due to parts availability and popularity. It is Raspberry Pi based with an ecosystem built on top of SuperCollider but there is an addon called Orac that supports the Organelle Puredata based plataform. Organelle is another RPi platform you might be able to hack.

1 Like

Orac is one of the “modules” offered by Blokas Patchbox.

1 Like

It is really worth to look @ norns hardware/ecosystem and the ||||||||- community. As nice and infomative as here :slight_smile:

I beg to differ! Some of the moderators at lines are swift to ban new users if they transgress the (oftern obfuscated) rules even slightly and on their first offence. My experience at lines was wholy disappointing. Zynthian is a much friendlier community.

1 Like

My experience on the lines-forum differs from yours, Riban. Got lot of good infos for using my norns, grid and arc bisides the Zynthian, I recently bought and is more open to other subjects.