Difference between revisions of "Developer Images"

From MOD Wiki
Jump to navigation Jump to search
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
This page contains links to the latest developer images.<br/>
 
This page contains links to the latest developer images.<br/>
They are useful for developers and plugin creators, as they contain a few extra things not present on the default builds.<br/>
+
They are useful for developers and plugin creators, as they contain a few extra things not present on the default builds.
These include:
 
  
 
== Release links ==
 
== Release links ==
  
MOD Duo X: [http://download.moddevices.com/releases/developer/modduox-v1.10.4.2398.tar modduox-v1.10.4.2398.tar]<br/>
+
MOD Duo X: [http://download.moddevices.com/releases/testing/modduox-v1.13.4.3296.tar modduox-v1.13.4.3296.tar]<br/>
MOD Dwarf: [http://download.moddevices.com/releases/developer/moddwarf-v1.10.4.2397.tar moddwarf-v1.10.4.2397.tar]
+
MOD Dwarf: [http://download.moddevices.com/releases/testing/moddwarf-v1.13.4.3297.tar moddwarf-v1.13.4.3297.tar]
  
=== Instructions ===
+
== Useful links ==
  
==== Carla ====
+
* [[Access MOD using SSH]]
 +
* [[Releases#Manual_update]]
  
Carla runs by default as internal JACK client with OSC enabled.<br/>
+
== Instructions ==
This makes it possible to connect remotely over OSC, using Carla-Control.
+
 
 +
=== Carla ===
 +
 
 +
[https://kx.studio/Applications:Carla Carla] runs by default as internal JACK client with OSC enabled.<br/>
 +
This makes it possible to connect remotely over OSC, using [https://kx.studio/Applications:Carla-Control Carla-Control].
  
 
Note that at this point in time Carla-Control does not fetch the plugin list from the remote instance, so the available plugins shown in the add-plugin dialog will your local ones, not the MOD ones.<br/>
 
Note that at this point in time Carla-Control does not fetch the plugin list from the remote instance, so the available plugins shown in the add-plugin dialog will your local ones, not the MOD ones.<br/>
 
It is still useful as a way to visualize the entire internal JACK connections.
 
It is still useful as a way to visualize the entire internal JACK connections.
  
==== MOD-SDK ====
+
To connect, first open Carla-Control and click its "connect" toolbar button.<br/>
 +
Use the MOD IP as remote host (that is, 192.168.51.1) and set TCP and UDP ports as 22752 (the default).
 +
 
 +
[[File:Screenshot-carla-control.png|thumb|Carla-Control connect dialog]]
 +
 
 +
That's it!
 +
When running the developer image, Carla-Control should be able to seamlessly connect to it with those values (assuming connecting to the PC over USB cable).
 +
 
 +
[[File:Screenshot-pedalboard-carla-canvas.png|thumb|Pedalboard view with Carla's canvas connections for comparison]]
 +
 
 +
As a final note, MOD-UI (so the pedalboard view) will not recognize connections made from outside on a tool such as Carla.
 +
But Carla will display the connections and disconnections made from MOD-UI.
 +
 
 +
=== MOD-SDK ===
  
MOD-SDK runs at port 9000, so you can access it using http://192.168.51.1:9000/<br/>
+
[https://github.com/moddevices/mod-sdk MOD-SDK] runs at port 9000, so you can access it using http://192.168.51.1:9000/<br/>
 
The deploy tab is pretty useless there, as the bundles are always running locally.
 
The deploy tab is pretty useless there, as the bundles are always running locally.
  
Line 27: Line 44:
 
And LV2 patch parameters are not supported yet.
 
And LV2 patch parameters are not supported yet.
  
==== Valgrind ====
+
[[File:Screen Shot MOD-SDK.png|thumb|Creating a new modgui through MOD-SDK]]
 +
 
 +
=== SFTP ===
 +
 
 +
SFTP can be used with sftp://root@192.168.51.1/ as URL
 +
 
 +
=== Valgrind ===
  
Valgrind is available to debug plugins more easily, in terms of memory issues at least.
+
[https://valgrind.org/ Valgrind] is available to debug plugins more easily, in terms of memory issues at least.
  
 
In order to make this useful we need to stop the main audio server and host and run it manually within valgrind, so we catch any errors.<br/>
 
In order to make this useful we need to stop the main audio server and host and run it manually within valgrind, so we catch any errors.<br/>
Line 37: Line 60:
 
Stopping and starting audio server + plugin host using valgrind can be done with:
 
Stopping and starting audio server + plugin host using valgrind can be done with:
  
<code>
+
<pre>
 
# stopping jack2, run it a few times if jackd complains server already active
 
# stopping jack2, run it a few times if jackd complains server already active
 
systemctl stop jack2
 
systemctl stop jack2
Line 49: Line 72:
 
# starting jackd with the typical JACK clients
 
# starting jackd with the typical JACK clients
 
valgrind jackd -r -t 500 -C /etc/jack-internal-session.conf -d alsa -d hw:0 -r 48000 -p 1024
 
valgrind jackd -r -t 500 -C /etc/jack-internal-session.conf -d alsa -d hw:0 -r 48000 -p 1024
</code>
+
</pre>
  
 
There will be a few warnings/errors regarding epoll_ctl which comes from ableton link, ignore them.
 
There will be a few warnings/errors regarding epoll_ctl which comes from ableton link, ignore them.
 
=== Manual update ===
 
 
If you want to do a manual factory reset, follow these steps:
 
# Turn on your MOD
 
# Let it boot until you see "Knob 1" etc.
 
# Press and hold the left knob until a menu appears in the display
 
# Turn the knob in order to select "System Upgrade"
 
## Note -> In newer devices, turn the left knob to the "System" option and then the right knob to "System upgrade"
 
# Select 'YES' and while holding the left footswitch (Duo) or bottom left square button (DuoX), click on the right knob
 
# Let go of the footswitch and knob and wait
 
# The MOD will now enter restore mode. Please wait.
 
# Connect the MOD to your PC if not done yet and wait for a new mass storage drive to appear
 
# Copy the tar file onto the new drive and use your OS option to safely remove the drive
 
# Remove the USB cable connecting your PC to the MOD
 

Latest revision as of 17:13, 24 November 2023

This page contains links to the latest developer images.
They are useful for developers and plugin creators, as they contain a few extra things not present on the default builds.

Release links

MOD Duo X: modduox-v1.13.4.3296.tar
MOD Dwarf: moddwarf-v1.13.4.3297.tar

Useful links

Instructions

Carla

Carla runs by default as internal JACK client with OSC enabled.
This makes it possible to connect remotely over OSC, using Carla-Control.

Note that at this point in time Carla-Control does not fetch the plugin list from the remote instance, so the available plugins shown in the add-plugin dialog will your local ones, not the MOD ones.
It is still useful as a way to visualize the entire internal JACK connections.

To connect, first open Carla-Control and click its "connect" toolbar button.
Use the MOD IP as remote host (that is, 192.168.51.1) and set TCP and UDP ports as 22752 (the default).

Carla-Control connect dialog

That's it! When running the developer image, Carla-Control should be able to seamlessly connect to it with those values (assuming connecting to the PC over USB cable).

Pedalboard view with Carla's canvas connections for comparison

As a final note, MOD-UI (so the pedalboard view) will not recognize connections made from outside on a tool such as Carla. But Carla will display the connections and disconnections made from MOD-UI.

MOD-SDK

MOD-SDK runs at port 9000, so you can access it using http://192.168.51.1:9000/
The deploy tab is pretty useless there, as the bundles are always running locally.

Note that MOD-SDK is a few releases behind in terms of plugin-supported features compared to MOD-UI (our webserver and session management tool).
The preview of a few plugins will not look identical to their actual view on the pedalboard.
And LV2 patch parameters are not supported yet.

Creating a new modgui through MOD-SDK

SFTP

SFTP can be used with sftp://root@192.168.51.1/ as URL

Valgrind

Valgrind is available to debug plugins more easily, in terms of memory issues at least.

In order to make this useful we need to stop the main audio server and host and run it manually within valgrind, so we catch any errors.
We need to increase the buffer size as valgrind makes things run much slower, 128 frames is too fast for it.
Note that not all plugins work reliably with higher buffer sizes, so try to limit the amount of plugins in use during this mode.

Stopping and starting audio server + plugin host using valgrind can be done with:

# stopping jack2, run it a few times if jackd complains server already active
systemctl stop jack2

# setting up environment
source /etc/mod-hardware-descriptor.env
export MOD_MIDI_SERIAL_PORT=${MIDI_SERIAL_PORT}
export MOD_PEAKMETER_BUS_NUMBER=${I2C_MAIN_BUS}
export MOD_PEAKMETER_GPIO_PATH=${PCA9685_OE_GPIO_PATH}

# starting jackd with the typical JACK clients
valgrind jackd -r -t 500 -C /etc/jack-internal-session.conf -d alsa -d hw:0 -r 48000 -p 1024

There will be a few warnings/errors regarding epoll_ctl which comes from ableton link, ignore them.