Orac 2.0 for the Raspberry PI

I’m having trouble understanding how the modules speak with ORAC.
Some patches have a [r activePage] box which i guess would get the name of the page from the “module.json” file.

The problem is that I never get any message from [r activePage]. I fed it in a [print] box and nothing comes out in the console. I tried changing pages, changing modules, nothing gets printed.

I get the names of the pages in different clients using OSC client but I would like to get them directly in Pure Data without using OSC.

The same happens with [r activeModule].

The big question for me is where are those activePage messages sent from ? I can’t find any [s activePage] in main.pd or mother.pd. Does this only work with the Organelle ?

1 Like

Should Push2 just work when plugged in to a Pisound running Patchbox and Orac module? I am having no joy with it and can’t find any set up instructions.

Also my Mac keeps deleting parts of the PD remote as being from “unverified” sources and I can’t seem to stop it happening so that is not working either . Any help getting around either issue greatly appreciated.

You have to modify the mec.service file, I think it’s mentioned in one of @thetechnobear’s videos:

sudo nano /etc/systemd/system/mec.service

Comment out one ExecStart, uncomment the other, so they look like this:

#ExecStart=/usr/local/MEC/mec-app osckontrol.json
ExecStart=/usr/local/MEC/mec-app pushkontrol.json

Ctrl+X, then Y to save and exit.

Then do:

sudo systemctl daemon-reload

And finally start the Orac module again via the patchbox config utility, make sure to say ‘yes’ to enabling mec.service:

patchbox

Hmm, I guess you should look into how to run unsigned or ‘unnotarized’ mac binaries, I’m not sure whether PD builds get fully signed & notarized according to macOS’s latest requirements.

amazing ! worked first time. Thanks again G, there is a class full of kids who will get to use this today!

1 Like

Hi @PollinoPops, this is probably coming way too late but I looked into that recently so I thought I’d answer.

The activePage msg seems to be sent out by the KontrolRack external that lives in Orac.
This external can be instantiated with arguments like “midi” “organelle” or “bela” etc, this argument refers to the type of device that will be created internally. They are listed here.

You are right that this message is specific to Organelle and TT which means that the modules that display stuff or act upon it will not entirely be compatible with a pisound based Orac.
Here is an example of where it gets sent out.

Adding these message to the midi kontrol device that is used for rPi based Orac could be a local fix but would be problematic in general I think as the active page is also handled seperately by a mec device for certain Orac installations

I know that this thread’s a bit dead, but maybe somebody could shed some insights into how ORAC responds to midi program change?

I was thinking of creating a custom midi controller for the RPI and ORAC that could send ccs along with program change to switch ORAC projects on the fly, but didn’t find any info on how ORAC would respond to that.

If I’m not mistaken, the source code indicates that it ignores program change (status byte 0xc0) messages: https://github.com/TheTechnobear/MEC/blob/master/mec-api/devices/mec_mididevice.cpp#L388.

Still, you probably can come up with your own logic to convert PC messages to some OSC messages which you might be able to use for your purposes.

do I have to need mrpeach externals? Can´t find it for RPi 4 (ArmV6)

(sorry for the short question, it took me a very long time to read all of this ORAC 2.0 stuff, watch all technobear vids and searching all over the net: I just wanted to put some patches in my usermodules and select them in the main.pd…I completely failed and have to go for a walk and some fresh air immediatly)

1 Like

Probably not, unless your PD patch requires it. It’s available via apt:

sudo apt install pd-mrpeach

Then you’ll like have to place one of these objects in your patch:

  • [declare -lib mrpeach]
  • [declare -path mrpeach]
  • [declare -stdlib mrpeach]
  • [declare -stdpath mrpeach]

Just go through them and see which one works - you can test by placing some object belonging to mrpeach external. The ones placed already won’t resolve on their own, until you save and re-open your patch which contains the correct [declare ...] object.

For creating an ORAC user module, a ‘grammatically correct’ .json file is required. Make sure there’s no syntax errors, doublecheck by pasting it into https://jsonlint.com/.

1 Like

With lemur app being unavailable currently are there any other alternatives similar to the ui that the lemur orac template provided? I have TouchOSC but I haven’t found any info on people using it with pisound orac.