Ping Garden Software Instrument

been into your work for a while in eurorack format, which is unavailable to me now. love it all tho

total noob, don’t know what to do. getting as error when typing text from step 2 into SuperCollider terminal:

“ERROR: Variable ‘xcode’ not defined.”

is anyone able to help me understand what to do? please?

thanks all

The instructions in step 2 must be entered into the terminal, not the SuperCollider editor.

…i’ve tried command prompt, terminal in VS Code, and command line in SuperCollider, all produce error messages when attempting to run the first line i type in (typed or copy/pasted), as below:

C:\Users\alche>xcode-select --install
‘xcode-select’ is not recognized as an internal or external command,
operable program or batch file.

i really don’t understand what i’m doing wrong and how to start problem solving

sorry, just wanting to play around with this

Judging by how your terminal path starts with C:\, it appears you’re on Windows.

XCode is Apple’s developer environment for MacOS (and other Apple products), so that’s unfortunately not going to work, even if you’re on a Macbook – you’ll have to reboot into MacOS first to run xcode-select.

More broadly, the MultiTouchPad plugin for SuperCollider is based on TongSengMod, which uses MacOS specific frameworks for reading Macbook touchpad data. As far as I’m aware, there’s no TongSengMod equivalent for reading Macbook trackpad data Windows; MultiTouchPad is only supported on MacOS. (Surprisingly, that isn’t obvious).

(I’ve found some open-source driver code for the Macbook touchpad from which someone with the right knowledge could possibly make this work, but it doesn’t exist yet.)

1 Like

ah, ok

that’s a shame, but at least it narrows down the causes of the issue. thanks for your help

Hi all! Has anyone had an issue running this on the new Macbook Pro with an M1 Pro chip? I’ve got the script running, the UI panels launch, but it doesn’t sense my fingers touching the trackpad. I see no graphical indication or console logs of my fingers moving, and no sound generated either. Anyone experiencing anything similar?

Same here. I will try the midi midi version posted above and see if this changes anything.

makes me wish i had a touch sensing yoga mat to pair with it

That’s an insanely great idea!

@tmarasco125 What’s on the console log?

1 Like
This is, what i get
> Booting server 'localhost' on address 127.0.0.1:57110.
> Number of Devices: 3
>    0 : "BlackHole 2ch"
>    1 : "MacBook Air Mikrofon"
>    2 : "MacBook Air Lautsprecher"
> 
> "MacBook Air Mikrofon" Input Device
>    Streams: 1
>       0  channels 1
> 
> "MacBook Air Lautsprecher" Output Device
>    Streams: 1
>       0  channels 2
> 
> SC_AudioDriver: sample rate = 44100.000000, driver's block size = 512
> SuperCollider 3 server ready.
> Requested notification messages from server 'localhost'
> localhost: server process's maxLogins (1) matches with my options.
> localhost: keeping clientID (0) as confirmed by server process.
> Shared memory server interface initialized
> -> a SynthDef
> -> MultiTouchPad
> Host: localhost
> Port: 57120
> Verbose: 0
> (with external trackpad support)

Besides that nothing…trackpad doesn’t react

1 Like

Have the same issue with MacBook Air with M1

1 Like

This is the same readout I get on my console, @MengQiMusic

Hi, all. I’ve been installing Supercollider, git and their dependencies on an old MacBook Air running High Sierra. I got all the way through to launching the IDE & running the sections in the .scd file. The SynthDef () portion appeared to work, but when I ran the section below line 85, I got a bunch of Class not defined errors, I’m guessing for MultiTouchPad. Even though earlier the GUI had stated MultiTouchPad installed.

Any ideas? I’d love to get this app working! Thanks in advance.

what errors did you get exactly? can you copy/paste the supercollider console log?


compiling class library...
	Found 855 primitives.
	Compiling directory '/Applications/SuperCollider.app/Contents/Resources/SCClassLibrary'
	numentries = 835903 / 12415276 = 0.067
	5513 method selectors, 2252 classes
	method table size 13422984 bytes, big table size 99322208
	Number of Symbols 12313
	Byte Code Size 368750
	compiled 328 files in 1.51 seconds
compile done
localhost : setting clientID to 0.
internal : setting clientID to 0.
Class tree inited in 0.01 seconds


*** Welcome to SuperCollider 3.12.2. *** For help press Cmd-D.
file "/Users/stevenray/Library/Application Support/SuperCollider/Help/scdoc_version" does not exist.
SCDoc: Indexing help-files...
SCDoc: Indexed 1361 documents in 1.67 seconds
Fetching https://github.com/supercollider-quarks/quarks.git
Installing MultiTouchPad
Adding path: /Users/stevenray/Library/Application Support/SuperCollider/downloaded-quarks/MultiTouchPad
MultiTouchPad installed
-> Quark: MultiTouchPad[1.2]
-> localhost
-> a SynthDef
ERROR: Class not defined.
  in interpreted text
  line 8 char 17:

  if (MultiTouchPad.guiOn, {"Touch Pad GUI On".postln}, {MultiTouchPad.gui});
                   
  
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 8 char 68:

  if (MultiTouchPad.guiOn, {"Touch Pad GUI On".postln}, {MultiTouchPad.gui});
                                                                      
  
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 11 char 14:

  	MultiTouchPad.stop;
                
  	oscDict.collect { arg item; item.free };
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 77 char 13:

  MultiTouchPad.resetActions.start;
               
  
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 79 char 13:

  MultiTouchPad.touchAction =
               
  {
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 93 char 13:

  MultiTouchPad.untouchAction =
               
  {
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 100 char 13:

  MultiTouchPad.setAction =
               
  {
-----------------------------------
-> nil
Booting server 'localhost' on address 127.0.0.1:57110.
Number of Devices: 2
   0 : "Built-in Microph"
   1 : "Built-in Output"

"Built-in Microph" Input Device
   Streams: 1
      0  channels 2

"Built-in Output" Output Device
   Streams: 1
      0  channels 2

SC_AudioDriver: sample rate = 44100.000000, driver's block size = 512
SuperCollider 3 server ready.
Requested notification messages from server 'localhost'
localhost: server process's maxLogins (1) matches with my options.
localhost: keeping clientID (0) as confirmed by server process.
Shared memory server interface initialized
Installing MultiTouchPad
MultiTouchPad installed
-> Quark: MultiTouchPad[1.2]
server 'localhost' disconnected shared memory interface
'/quit' message sent to server 'localhost'.
-> localhost
Server 'localhost' exited with exit code 0.
Booting server 'localhost' on address 127.0.0.1:57110.
Number of Devices: 2
   0 : "Built-in Microph"
   1 : "Built-in Output"

"Built-in Microph" Input Device
   Streams: 1
      0  channels 2

"Built-in Output" Output Device
   Streams: 1
      0  channels 2

SC_AudioDriver: sample rate = 44100.000000, driver's block size = 512
SuperCollider 3 server ready.
Requested notification messages from server 'localhost'
localhost: server process's maxLogins (1) matches with my options.
localhost: keeping clientID (0) as confirmed by server process.
Shared memory server interface initialized
-> a SynthDef
ERROR: Class not defined.
  in interpreted text
  line 8 char 17:

  if (MultiTouchPad.guiOn, {"Touch Pad GUI On".postln}, {MultiTouchPad.gui});
                   
  
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 8 char 68:

  if (MultiTouchPad.guiOn, {"Touch Pad GUI On".postln}, {MultiTouchPad.gui});
                                                                      
  
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 11 char 14:

  	MultiTouchPad.stop;
                
  	oscDict.collect { arg item; item.free };
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 77 char 13:

  MultiTouchPad.resetActions.start;
               
  
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 79 char 13:

  MultiTouchPad.touchAction =
               
  {
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 93 char 13:

  MultiTouchPad.untouchAction =
               
  {
-----------------------------------
ERROR: Class not defined.
  in interpreted text
  line 100 char 13:

  MultiTouchPad.setAction =
               
  {
-----------------------------------
-> nil

mmmmh. i can’t really make heads or tails out of it. Wild guess would be that the mulittouch library was not installed properly

Ok, thanks. I’ll do some digging and maybe redo it. I am not a programmer really, so I’m flying blind a bit here. :slight_smile:

Hi! list the steps you did so we can see what was done/wasn’t done. There are a few lines to run to get it working.

It’s amazing how often rebooting fixes your problem. :blush:

It’s working now! Thanks for everyone’s help!

1 Like

Are you using a M1 Mac or an Intel version?

It’s an Intelcore i7. It’s an old Air from 2011. But, it works now, so happy days. :blush: