How to make an 'Organelle' without an Organelle?


#1

Just came across the organelle today - looks fantastic. I am trying to understand exactly ‘what it is’ and if the concept is tethered to particular hardware…

Put it this way: If I couldn’t get my hands on an organelle for whatever reason (e.g. they’re out of stock - like now!), or I just wanted to get involved in making patches for the organelle without actually needing the self-contained unit for performance, how would I ‘make’ one? Would it just be a question of installing stuff from github.com/critterandguitari on any machine running arch Linux, or does it depend on having certain custom hardware?

If I bought something like this (which I think has the same processor), could I put bits together and end up with a less portable version of the organelle that did the same thing?


#2

There is a lot of info here:

Someone build one here, maybe you can contact him:


#3

what is an organelle is an interesting question…
it’s an equal mix of custom hardware, custom software, and open source software, that together make a musical instrument.

for sure that ‘mix’ is not tethered to any hardware, only the implementation.

this yields the answer to some of your other questions…

some of the code is based on the hardware that is present, specifically to get data from the keys, knobs, encoders and to write to the display.

if you have coding skill these could be replaced with any number of solutions…
but to retain compatibility with an organelle (so be able to use organelle patches ‘unchanged’) it needs to be done quite carefully.

a good example of what necessary is to think about the display/menu system used to launch patches, and also within the patch itself - how would you replicate this?

of course, you could just take PureData as you abstraction level (in a similar way to mother.pd desktop does), but this only gives a certain level of compatibility e.g. desktop mother basically doesn’t work at all for the newer graphical patches, or multi level menu patches. (and certainly not orac :wink: )

Im not saying its impossible, far from it, I’ve done exactly this kind of ‘emulation’ before… if you look at my Norns emulation, you’ll see its a similar concept

on my Norns emulation project, what i did was rewrote the entire UI from norns to instead use a push2 controller, and ran the whole thing on a rPI with PiSound, its done in such a way that its 100% compatible with the Norns, even down to scaling the display, and emulating add-on components like the monome grid.
(I could easily do exactly the same for Organelle, but im not going to :wink: )

so that brings us back to ‘what is an organelle?’
sure you can think of it as something like a rPI with a lcd display, keyboard, knobs, encoders and sound card added… but what this does not account for is the software that’s needed to turn this ‘generic computer’ into a musical instrument, where the pieces are integrated into a whole.

… this is why quite a few had talked about doing it, but few have actually done it :wink:

it’s no surprise that a computer can be a synthesizer (etc), but that doesn’t make it musical instrument, adding the physical interface, control, user experience does that…

but there is absolutely nothing stopping you doing this, and i’ll admit freely, its actually a fun thing to do - if you have the time and technical skills to do it.


to end on some help as to where to start:

use a rPI3 + PiSound, its imperative you have a good sound card. the standard rPI audio is dreadful.
(reddit post is wrong - bbb/bela is not suitable due to performance)
if you’re into diy electronics you can easily add pots/lcd display - but take care as the PiSound uses many gpio ports, do you might have to multiplex stuff.
if your not into DIY, then you could use midi, and perhaps a touchscreen?
or you might even take a shortcut and use something like http://zynthian.org

all approaches are going to end up quite a bit chunkier than an organelle, esp. by the time you add a keyboard, but that tends to be the nature of DIY (unless your getting custom pcbs/enclosures made)

from there you will have to alter/re-write the (C++) code of the ‘Organelle_UI’ which you’ll find in GitHub, and also adapt the various linux scripts to match your distribution.

anyway, depending on your skill set, it could range from ‘reasonably simple, but a bit time-consuming’ , to quite an ambitious (but fun) project.


#4

Thanks for your replies! There seems a lot going on in this space at the moment, and yet it’s mostly new to me. Zynthian I think I had come across recently; Norns was new to me. There’s Bela and Axoloti; Mod Devices and now I’ve come across the Organelle!

I was asking my original question as someone who is doing a bit of audio coding in C#, and wondering - if I ever make anything interesting - whether it would be more worthwhile targeting some existing modular/plug in system. As a windows coder VST would be one way to go, but the ‘market’ for VSTs is mostly loading into track-based DAWs, which isn’t quite right for what I’m doing. So then there’s LV2, LADSPA, and then higher-level modular systems like PD, Max, VCV…

…then there’s the dimension of what kind of hardware to run these on if playing live: is a Linux or dedicated DSP box actually a win over just running a host or a bit of dedicated code on Windows…?

Organelle seems to have a nice experimental feel to the community patches, and of course the box itself is super cute…


#5

Axoloti are also pretty nice devices. Got 3 of them :slight_smile:

And also a lot cheaper than Organelle or building a DIY organelle with Rpi3.


#6

yeah @topomorto theres a lot of choices theses days, and I suspect many more to come…

i think all of this comes down to “what is your target use-case and user-base?”

if you’re trying to sell something, then you have to define your market…
but even if not selling, you still have to know who are your users? what do they want?
the answer could be yourself, and thats not a bad answer - given you know your needs very well :slight_smile:

then there are technical questions about your requirements…
the capabilities of a laptop, organelle, bela, axoloti all vary enormously in cpu/memory, connectivity and many other factors.

again your better off defining what you need based on your requirements, then selecting a platform - than choosing a platform then trying to make it work.

I do projects on Axoloti, Bela , Organelle and rPI (and macOS/windows) , what I do is initially pick one suitable target … but make the code cross-platform (*), so usually the code is developed under macOS, but regularly tested on the chosen target.
e.g. Orac, developed on macOS using a push 2 for display, but testing and release was on the Organelle… but in the background Ive also always been compiling/testing on rPI and Bela too.

as Ive stated before, I like the Organelle as a target, because unlike other platforms you know exactly what the hardware is… every user has the same, and as you say its portable and super cute :slight_smile:

(but back to your original point, id would not target something that i dont own the original of, how can you know its 100% compatible? what if you get bugs you cannot reproduce?)

(*) axoloti is an odd-ball here, due to its nature, I cannot use the same codebase for it, so most things i do with it, are specific, and code-sharing tends to be cut-paste-adapt.