Web client for ORAC 2.0

Hey, I get the exact same problem as you. mec and orac services are running and touchosc2midi as well…
The installation went well without any error and the orac-control-web is also running fine.

Tried with firefox and chrome : same result, the logo and “Looking for OSC Service…”

I submitted a poorly written issue on github https://github.com/dsedleckas/orac-control-web/issues/10

I still didn’t find time to try to make it work on my own. It seems to be a problem between sockets libraries compatibility
Will see how it goes. Definately a nice feature to have

It might be because I have Python3.7 installed ? How do I revert to 3.5 or 3.6 without breaking everything ?

It could be related but more likely the used socket libraries between python and javascript. I’m not used to use python as a backend so I can’t tell fast about that
This is a veery similar error https://github.com/miguelgrinberg/python-socketio/issues/578#issuecomment-740502733

I would start checks here

Ok, so I tried reinstalling a fresh version of the Patchbox OS on my raspberry pi4 with a Pisound hat and I get the same error again… I unfortunately don’t understand enough Python and webserver to dig any further. Hope you find something @DrKoma or @murmeklis !

Blockquote
Jan 31 20:54:08 patchbox python3[4167]: The client is using an unsupported version of the Socket.IO or Engine.IO protocols (further occurrences of

Try downgrading your python-socketio

pip3 install python-socketio==4.6.1

3 Likes

Yes ! It worked ! :slight_smile: downgrading the python-socketio to version 4.6.1 worked
Thank you @jhreid

Awesome , lets try it out :slight_smile:

That worked for me as well–thank you!

Hi sam, do you figure out a way to extend the autoselecting time?
Bridge

sudo nano /usr/local/MEC/osckontrol.json

Add “menu timeout” value to set the desired milliseconds. You must add a comma after the “6100” line so the json file is valid after new value is added. Here’s a full example of how it should look like:

{
    "mec"  :  {
        "oscdisplay"  :  {
            "listen port" : 6100,
            "menu timeout" : 1000
        },

        "kontrol"  :  {
            "listen port" : 6000
        }
    },

    "mec-app"  :  {
        "outputs" : {
            "midi" : {
                "virtual" : 0,
                "voices" : 15,
                "mpe":false,
                "pitchbend range" : 48.0,
                "device" : "Pure Data:0"
            },
            "_console" : {
                "throttle" : 0
            }
        }
    }
}

Hit ctrl+x, then y to save. Then restart MEC:

sudo systemctl restart mec

I tried on a Pi4B 4GB that but got:

  • orac-control-web.service - Orac Control Service
    Loaded: loaded (/lib/systemd/system/orac-control-web.service; enabled; vendor preset: enabled)
    Active: inactive (dead) (Result: exit-code) since Tue 2021-11-09 19:40:55 PST; 10s ago
    Process: 1780 ExecStart=/usr/bin/python3 ./main.py (code=exited, status=1/FAILURE)
    Main PID: 1780 (code=exited, status=1/FAILURE)

Nov 09 19:40:55 patchbox systemd[1]: orac-control-web.service: Service RestartSec=100ms expired, scheduling restart.
Nov 09 19:40:55 patchbox systemd[1]: orac-control-web.service: Scheduled restart job, restart counter is at 8.
Nov 09 19:40:55 patchbox systemd[1]: Stopped Orac Control Service.
Nov 09 19:40:55 patchbox systemd[1]: Dependency failed for Orac Control Service.
Nov 09 19:40:55 patchbox systemd[1]: orac-control-web.service: Job orac-control-web.service/start failed with result ‘dependency’.
~
Not sure which dependency is missing?

It’s probably mec.service. What’s the output of sudo systemctl status mec?

  • mec.service - Run MEC at boot
    Loaded: loaded (/etc/systemd/system/mec.service; enabled; vendor preset: enabled)
    Active: failed (Result: exit-code) since Tue 2021-11-09 19:56:12 PST; 15h ago
    Main PID: 895 (code=exited, status=255/EXCEPTION)

Nov 09 19:56:12 patchbox systemd[1]: mec.service: Service RestartSec=100ms expired, scheduling restart.
Nov 09 19:56:12 patchbox systemd[1]: mec.service: Scheduled restart job, restart counter is at 5.
Nov 09 19:56:12 patchbox systemd[1]: Stopped Run MEC at boot.
Nov 09 19:56:12 patchbox systemd[1]: mec.service: Start request repeated too quickly.
Nov 09 19:56:12 patchbox systemd[1]: mec.service: Failed with result ‘exit-code’.
Nov 09 19:56:12 patchbox systemd[1]: Failed to start Run MEC at boot.
Nov 09 19:56:12 patchbox systemd[1]: mec.service: Start request repeated too quickly.
Nov 09 19:56:12 patchbox systemd[1]: mec.service: Failed with result ‘exit-code’.
Nov 09 19:56:12 patchbox systemd[1]: Failed to start Run MEC at boot.
~
~

This seems to be related to mec starting after Orac, see https://community.polyexpression.com/t/orac-2-0-with-mpe-support/252/24

Stopping mec and Orac then starting mec gives:

patch@patchbox:~ $ systemctl start mec
patch@patchbox:~ $ systemctl status mec
* mec.service - Run MEC at boot
   Loaded: loaded (/etc/systemd/system/mec.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2021-11-10 13:16:49 PST; 6s ago
 Main PID: 6329 (mec-app)
    Tasks: 5 (limit: 4915)
   CGroup: /system.slice/mec.service
           `-6329 /usr/local/MEC/mec-app osckontrol.json

Nov 10 13:16:49 patchbox mec-app[6329]: [RtMidiIn Client:TouchOSC Bridge 132:0]
Nov 10 13:16:49 patchbox mec-app[6329]: [pisound-ctl:pisound-ctl 134:0]
Nov 10 13:16:49 patchbox mec-app[6329]: MecMidiProcessor not open, so invalid forPure Data:0
Nov 10 13:16:49 patchbox mec-app[6329]: MecApi_Impl::init
Nov 10 13:16:49 patchbox mec-app[6329]: oscdisplay initialise
Nov 10 13:16:49 patchbox mec-app[6329]: listening for clients on 6100
Nov 10 13:16:49 patchbox mec-app[6329]: KontrolDevice initialise
Nov 10 13:16:49 patchbox mec-app[6329]: KontrolDevice::init
Nov 10 13:16:49 patchbox mec-app[6329]: kontrol device : listening on 6000
Nov 10 13:16:49 patchbox mec-app[6329]: KontrolDevice::init - complete
patch@patchbox:~ $ 

But restarting Orac from the module control of patchbox always wants to start mec after Orac; or not start it in which case mec is stopped. Either way, back to square 1.

OK, now working. Did the python3-pip installation and downgraded python-socketio,get:

patch@patchbox:~ $ systemctl status orac
* orac.service - Run Orac at boot
   Loaded: loaded (/etc/systemd/system/orac.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-11-11 12:34:08 PST; 4min 14s ago
 Main PID: 8901 (pd)
    Tasks: 13 (limit: 4915)
   CGroup: /system.slice/orac.service
           |-8901 /usr/bin/pd -rt -alsamidi -nogui -audiobuf 4 mother.pd main.pd
           |-8902 sh -c /usr/lib/puredata/bin/pd-watchdog
           `-8903 /usr/lib/puredata/bin/pd-watchdog

Nov 11 12:34:09 patchbox pd[8901]: mainDir : .
Nov 11 12:34:09 patchbox pd[8901]: dataDir : /home/patch/data/orac
Nov 11 12:34:09 patchbox pd[8901]: mediaDir : /home/patch/media
Nov 11 12:34:09 patchbox pd[8901]: moduleDir : modules
Nov 11 12:34:09 patchbox pd[8901]: userModuleDir : /home/patch/media/orac/usermodules
Nov 11 12:34:09 patchbox pd[8901]: currentPreset : demo1
Nov 11 12:34:09 patchbox pd[8901]: Preset : Init
Nov 11 12:34:09 patchbox pd[8901]: Preset : demo1
Nov 11 12:34:09 patchbox pd[8901]: Preset : demo2
Nov 11 12:34:22 patchbox pd[8901]: preset loaded  : demo1
patch@patchbox:~ $ systemctl status mec
* mec.service - Run MEC at boot
   Loaded: loaded (/etc/systemd/system/mec.service; disabled; vendor preset: enabled)
   Active: active (running) since Thu 2021-11-11 12:34:12 PST; 4min 23s ago
 Main PID: 8944 (mec-app)
    Tasks: 6 (limit: 4915)
   CGroup: /system.slice/mec.service
           `-8944 /usr/local/MEC/mec-app osckontrol.json

Nov 11 12:34:12 patchbox mec-app[8944]: Midi output opened :Pure Data:0
Nov 11 12:34:12 patchbox mec-app[8944]: MecMidiProcessor enabling for midi to Pure Data:0
Nov 11 12:34:12 patchbox mec-app[8944]: MecApi_Impl::init
Nov 11 12:34:12 patchbox mec-app[8944]: oscdisplay initialise
Nov 11 12:34:12 patchbox mec-app[8944]: listening for clients on 6100
Nov 11 12:34:12 patchbox mec-app[8944]: KontrolDevice initialise
Nov 11 12:34:12 patchbox mec-app[8944]: KontrolDevice::init
Nov 11 12:34:12 patchbox mec-app[8944]: kontrol device : listening on 6000
Nov 11 12:34:12 patchbox mec-app[8944]: KontrolDevice::init - complete
Nov 11 12:34:19 patchbox mec-app[8944]: KontrolDevice::new client 127.0.0.1 : 6001 KA = 5

Now shows Orac Web Client screen and connects, but no response from on-screen web controls.

Patchbox OS installed on PI4 2GO.
I’m struggling to run ORAC through the web client ( Ip :8080)
i’vce tried with the hotspot and intro the PI. Same thing.

Pyhton3 updated.
Status of ORAC and MEC seems ok (below). So, i’m stuck.
Any idead ?


patch@patchbox:~ $ sudo systemctl start orac-control-web.service
Failed to start orac-control-web.service: Unit orac-control-web.service not found.
patch@patchbox:~ $ sudo systemctl stop orac-control-web.service
Failed to stop orac-control-web.service: Unit orac-control-web.service not loaded.
patch@patchbox:~ $
patch@patchbox:~ $ sudo apt-get install python3-pip
Reading package lists… Done
Building dependency tree
Reading state information… Done
python3-pip is already the newest version (18.1-5+rpt1).
0 upgraded, 0 newly installed, 0 to remove and 220 not upgraded.
patch@patchbox:~ $
patch@patchbox:~ $ sudo systemctl status orac
● orac.service - Run Orac at boot
Loaded: loaded (/etc/systemd/system/orac.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-12-31 15:44:02 GMT; 24min ago
Main PID: 601 (pd)
Tasks: 14 (limit: 3861)
CGroup: /system.slice/orac.service
├─601 /usr/bin/pd -rt -alsamidi -nogui -audiobuf 4 mother.pd main.pd
├─624 sh -c /usr/lib/puredata/bin/pd-watchdog
└─625 /usr/lib/puredata/bin/pd-watchdog

Dec 31 15:44:03 patchbox pd[601]: mainDir : .
Dec 31 15:44:03 patchbox pd[601]: dataDir : /home/patch/data/orac
Dec 31 15:44:03 patchbox pd[601]: mediaDir : /home/patch/media
Dec 31 15:44:03 patchbox pd[601]: moduleDir : modules
Dec 31 15:44:03 patchbox pd[601]: userModuleDir : /home/patch/media/orac/usermodules
Dec 31 15:44:03 patchbox pd[601]: currentPreset : demo1
Dec 31 15:44:03 patchbox pd[601]: Preset : Init
Dec 31 15:44:03 patchbox pd[601]: Preset : demo1
Dec 31 15:44:03 patchbox pd[601]: Preset : demo2
Dec 31 15:59:17 patchbox pd[601]: preset loaded : demo1

patch@patchbox:~ $ sudo systemctl status mec
● mec.service - Run MEC at boot
Loaded: loaded (/etc/systemd/system/mec.service; enabled; vendor preset: enab
Active: active (running) since Fri 2021-12-31 15:59:07 GMT; 9min ago
Main PID: 2801 (mec-app)
Tasks: 6 (limit: 3861)
CGroup: /system.slice/mec.service
└─2801 /usr/local/MEC/mec-app osckontrol.json

Dec 31 15:59:07 patchbox mec-app[2801]: Midi output opened :Pure Data:0
Dec 31 15:59:07 patchbox mec-app[2801]: MecMidiProcessor enabling for midi to Pu
Dec 31 15:59:07 patchbox mec-app[2801]: MecApi_Impl::init
Dec 31 15:59:07 patchbox mec-app[2801]: oscdisplay initialise
Dec 31 15:59:07 patchbox mec-app[2801]: listening for clients on 6100
Dec 31 15:59:07 patchbox mec-app[2801]: KontrolDevice initialise
Dec 31 15:59:07 patchbox mec-app[2801]: KontrolDevice::init
Dec 31 15:59:07 patchbox mec-app[2801]: kontrol device : listening on 6000
Dec 31 15:59:07 patchbox mec-app[2801]: KontrolDevice::init - complete
Dec 31 15:59:15 patchbox mec-app[2801]: KontrolDevice::new client 127.0.0.1 : 60
lines 1-18/18 (END)

EDIT:

Done

curl https://raw.githubusercontent.com/dsedleckas/orac-control-web/master/install-orac-control-web.sh | sh

And now, it’s stuck…on a “looking for OSC service”.

EDIT

I’ve got now something: an 'ask mark" menu. But nothing more

By the way, MODEP is working fine now.thanks to
https://amin.is/doing/MODEP-raspi-effects-pedal/