Remote display (X11)


#17

Hi guys,

I am having some difficulties here.

If I try to set up the display as described here then all I get is the dreaded “couldn’t connect to display error”

So I set up X11 forwarding on the organelle so it uses the default "localhost:10.0’ and I can start xterm and pd on the organelle and everything works fine on the Mac.

Until that is I select a patch from the organelle, the current pd window is closed but the loaded one is not started.

Anyone any ideas?

Cheers

Andy


#18

with 3.0 you should not need to do any of this anymore, so i suggest you reinstall that…

then all you need to do is to set DISPLAY correctly, and restart mother

(localhost is not correct, you need your ip/hostname of your mac)


#19

Hi Mark,

thanks for the reply, I am on 3.0

If I set DISPLAY correctly:

DISPLAY=macipaddress:0.0

And restart mother it was not working, nothing on the mac.

Also when sshing with -Y or -X from the mac and say trying to run xterm then that was also not working.

Only enabling X11 forwarding could I get any Xwindows stuff working from the organelle.


#20

hmm, i thought this was already enabled… i’ll double check on a ‘clean organelle’, perhaps ive forgotten something that’s enabled on my ‘dev’ machine…

on the mac, you will also need to have xquartz installed , and then type
xhost +

(can you double check you have followed my instructions in the first post, I’m pretty sure I walked this thru to check it… but it was a long time ago ;))


#21

Hi Mark,

Thanks for the reply.

Yep i have host going and quartz running.

I have just created a new card from the original 3.0 img I saved away before I started messing around, just about to give it a try…


#22

Ok, this is with the 3.0 image. WIFI set from usb stick:

Last login: Wed Dec 27 20:04:59 on ttys000
You have mail.
MP12:~ andrewcapon$ ping mp12.local
PING mp12.local (192.168.1.98): 56 data bytes
64 bytes from 192.168.1.98: icmp_seq=0 ttl=64 time=0.046 ms
64 bytes from 192.168.1.98: icmp_seq=1 ttl=64 time=0.048 ms
64 bytes from 192.168.1.98: icmp_seq=2 ttl=64 time=0.048 ms
^C
— mp12.local ping statistics —
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.046/0.047/0.048/0.001 ms
MP12:~ andrewcapon$ xhost +
access control disabled, clients can connect from any host
MP12:~ andrewcapon$ ssh -X root@organelle
root@organelle’s password:
Last login: Sat Oct 17 01:07:26 2015
/usr/bin/xauth: file /tmp/Xauthority-root does not exist
Welcome to Organelle.
[root@organelle ~]# export DISPLAY=192.168.1.98:0.0
[root@organelle ~]# ~/scripts/restart-mother.sh
pd: no process found
cat: /tmp/pids/.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
pd: no process found
cat: /tmp/pids/
.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
rm: cannot remove ‘/tmp/pids/*.pid’: No such file or directory
cat: /tmp/webserver.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
cat: /tmp/webserver.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
mother: no process found
mother: no process found

pd: no process found
cat: /tmp/pids/.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
pd: no process found
cat: /tmp/pids/
.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
rm: cannot remove ‘/tmp/pids/.pid’: No such file or directory
cat: /tmp/webserver.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
cat: /tmp/webserver.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
mother: no process found
mother: no process found
Simple mixer control ‘PCM’,0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 192
Mono:
Front Left: Playback 0 [0%]
Front Right: Playback 0 [0%]
Simple mixer control ‘PCM’,0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 192
Mono:
Front Left: Playback 170 [89%]
Front Right: Playback 170 [89%]
Simple mixer control ‘Headphone’,0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 0 [0%] [-51.50dB]
Front Right: Playback 0 [0%] [-51.50dB]
Simple mixer control ‘Headphone’,0
Capabilities: pvolume
Playback channels: Front Left - Front Right
Limits: Playback 0 - 127
Mono:
Front Left: Playback 127 [100%] [12.00dB]
Front Right: Playback 127 [100%] [12.00dB]
Simple mixer control ‘Capture Mux’,0
Capabilities: enum
Items: ‘MIC_IN’ 'LINE_IN’
Item0: 'LINE_IN’
found USB drive, using /dev/sda1
/dev/sda1 is already mounted
using USER_DIR: /usbdrive
running /root/mother with scripts /root/scripts
[root@organelle ~]# opening serial …
opened serial, setting up…
done opening serial
build date Dec 15 2017 16:54:24/n._Analog Style
._Arpeggio Sampler
._Arpeggio Synth
._Basic Poly
._Basic Sampler
._Beats and Pieces
._Children of Sample
._Chords Roll
._Countdown Timer
._Distributor
._Drone 1
._Dropper
.Drummy
.
.DS_Store
.DS_Store
._Genny 1
._Granular Freezer
._Guitar2ARP
._Guitar2Synth
._h Rando
._I Take Up
._Jeraphy
._Metronome
._Midi File Sampler
._Midi File Synth
._Nice Surprises
._Nice Surprises Poly
._Nori Grains
._Nori Sampler
._Nori Sampler Mono
._Overloop
._Phase Vocoder
._Polybeats DRG32V
._Pow Pow’s Polybeats
._Punchy
._Quad Delay
._Recorder
._Rhodey
._Rhythm Delay Dist
._Sampler Style
._Sampler Style Delay
._Sampler Style REC
._SC_Install.zop
._SimplePoly.sc
._Sine Surprises
._Steppy Delay
._Stereo Rhythmicon
._Test
._Thery Scary
._Tuned Delay
._UpdateOS-3.0
._Update-OS-v2.1
._Vocoder RL
._Waterfall Down
._Waterfall Up
._Wepa!
patch[0]
patch[1] Shutdown
patch[2] Storage
patch[3] Settings
patch[4] Extra
patch[5]
patch[6] Analog Style
patch[7] Arpeggio Sampler
patch[8] Arpeggio Synth
patch[9] Basic Poly
patch[10] Basic Sampler
patch[11] Beats and Pieces
patch[12] Children of Sample
patch[13] Chords Roll
patch[14] Countdown Timer
patch[15] Distributor
patch[16] Drone 1
patch[17] Dropper
patch[18] Drummy
patch[19] Genny 1
patch[20] Granular Freezer
patch[21] Guitar2ARP
patch[22] Guitar2Synth
patch[23] h Rando
patch[24] I Take Up
patch[25] Jeraphy
patch[26] Metronome
patch[27] Midi File Sampler
patch[28] Midi File Synth
patch[29] Nice Surprises
patch[30] Nice Surprises Poly
patch[31] Nori Grains
patch[32] Nori Sampler
patch[33] Nori Sampler Mono
patch[34] Overloop
patch[35] Phase Vocoder
patch[36] Polybeats DRG32V
patch[37] Pow Pow’s Polybeats
patch[38] Punchy
patch[39] Quad Delay
patch[40] Recorder
patch[41] Rhodey
patch[42] Rhythm Delay Dist
patch[43] Sampler Style
patch[44] Sampler Style Delay
patch[45] Sampler Style REC
patch[46] ._SC_Install.zop
patch[47] SimplePoly.sc
patch[48] Sine Surprises
patch[49] Steppy Delay
patch[50] Stereo Rhythmicon
patch[51] Test
patch[52] Thery Scary
patch[53] Tuned Delay
patch[54] Update-OS-v2.1
patch[55] Vocoder RL
patch[56] Waterfall Down
patch[57] Waterfall Up
patch[58] Wepa!
num patches 53
patch menu offset 6
Menu Selection: 6:Analog Style
Checking for patch Files : /usbdrive/Patches/Analog Style
pd: no process found
cat: /tmp/pids/
.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
pd: no process found
cat: /tmp/pids/.pid: No such file or directory
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec … or kill -l [sigspec]
rm: cannot remove '/tmp/pids/
.pid’: No such file or directory
rm: cannot remove ‘/tmp/patch’: No such file or directory
X server not found…
starting Pure Data : ( cd /tmp/patch ; /usr/bin/pd -rt -nogui -audiobuf 4 -path /usbdrive/PdExtraLibs “/root/mother.pd” main.pd )&
tb_peakcomp~ v1.0 2013 Two Big Ears
udpsend: connecting to port 4001
opened 0 MIDI input device(s) and 0 MIDI output device(s).
error: /tmp/patch/knobs.txt: can’t open
error: /tmp/patch/knobs.txt: read failed
verbose(4): … you might be able to track this down from the Find menu.

[root@organelle ~]# xprop -root
xprop: unable to open display ‘192.168.1.98:0.0’

[root@organelle ~]# ping 192.168.1.98
PING 192.168.1.98 (192.168.1.98) 56(84) bytes of data.
64 bytes from 192.168.1.98: icmp_seq=1 ttl=64 time=4.37 ms
64 bytes from 192.168.1.98: icmp_seq=2 ttl=64 time=3.88 ms
^C
— 192.168.1.98 ping statistics —
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 3.881/4.129/4.378/0.256 ms


Use iMac as a screen for the Organelle?
#23

P.s. I have XWindows working to other boxes from the mac.


#24

ok, so Ive just check with my clean 2.1 image, upgraded to 3.0
I can find no issue…
all i had to do was

on organelle
start wifi from wifi setup (already had setup the wifi text file)

on mac

xhost +
ssh -x root@organelle (password organelle) 

then from that ssh session

export DISPLAY=export DISPLAY=192.168.1.40:0.0
~/scripts/restart-mother.sh

then as soon as I started a patch , ping PD comes up

on my mac, Ive simply have

$ cat .ssh/config 
Protocol 2
ForwardX11 yes
ForwardX11Trusted yes
CheckHostIP no
StrictHostKeyChecking no 
UserKnownHostsFile=/dev/null

so its only the mac, that you might have to alter, the Organelle is already configured…

(its a while since i set this up, so ive added various things on the mac side, i think mostly for convenience )

EDIT: to be ‘complete’ , Ive used the above on both macOS 10.12 and 10.13… it was similar before, but think i was on 10.12 by the time i got my organelle.


#25

Thanks for checking for me, I’ll have a look at the ssh config on the mac in the morning…


#26

mmm, still getting the same issue here with the a local .ssh/config file exactly like yours on the mac.

I’m going to download the 2.1 image onto a clean scared and update to 3.0 and try again…


#27

Is there anywhere on the c&g servers to download a 2.1 image, I only seem to be able to find it here: http://thepeacetreaty.org/organelle/diskimages/ and I am not sure of how trustworthy that img is.


#28

Well I have managed to get it going without setting DISPLAY, that is leaving it as “localhost:10.0” as set via the ssh connection.

If create an xterm from the mac via ssh as follows:

ssh -X -C root@organelle xterm

Then in the xterm window restart mother everything works as expected.

Also doing it like this the mac automatically starts XQuartz so there is no need for the “Host +”.

Does this work at your end?


#29

With a little more fiddling I have it down to one line from the mac to do it all, including starting XQuartz on the mac:

ssh -X -C root@organelle xterm -hold -e “~/scripts/restart-motherX.sh”

the restart-motherX.sh file is a copy of the restart-mother.sh file with a single line added to the end:

#!/bin/sh

# USER_DIR=${USER_DIR:="/usbdrive"}
# PATCH_DIR=${PATCH_DIR:="/usbdrive/Patches"}
export FW_DIR=${FW_DIR:="/root"}
export SCRIPTS_DIR=$FW_DIR/scripts

$SCRIPTS_DIR/killmother.sh
$SCRIPTS_DIR/start-mother.sh

$SHELL

This makes sure that the xterm hangs around as the mother process is a child.


#30

This is actually better as the following:

ssh -Y -C root@organelle xterm -hold -e “~/scripts/restart-motherX.sh”

Using -X I was getting issues after a while, some security shenanigans I should think.


#31

cool, you have it working

its a bit odd -C just launches the command, so unsure why you cant do this on the organelle itself.
similarly xhost + is usually required to extend permission to a remote client to access a local display.

would seem for some reason, our macs/xquartz are configured differently.

anyway, id not worry about it, if you have it working :wink:


#32

I’m just wondering if that command works for you on your mac, if it doesn’t then I guess the macs must be setup different in some way. It is easily possible that I have done something at some time in the past to get it working in this way!

I would also just like to say thanks for all your help and the work that you have been doing on the organelle, it is very much appreciated.


#33

I just got X11 working on a Windows machine :slight_smile: (with Putty and Xming).
I originally tried to use secure X11 forwarding but I couldnt get it working (I think logging in as root makes this a bit complicated as it prevents the .Xauthority file from getting setup on login).
Launching Xming without access controls enabled and setting DISPLAY manually did the trick though.


#34

Thats useful info, I was thinking of setting up my surface pro, I will look at Xming. Thanks for the info.


#35

Thanks a lot for this, as this solutions works also on Ubuntu. Starting xterm directly as a ssh parameter makes also here a difference.


#36

I have this running on macOS, but it seems pretty unstable. After loading a few different patches, my Organelle ‘clicks’ and freezes up.

(For future macOS visitors - you’ll need to install XQuartz-2.7.11.dmg these days)


Use iMac as a screen for the Organelle?