dagargo / overwitch

JACK client for Overbridge devices
GNU General Public License v3.0
120 stars 14 forks source link

Trying to add model:cycles #16

Closed landorg closed 1 year ago

landorg commented 2 years ago

Hi. I tried to add the model cycles like this:

diff --git a/src/overbridge.c b/src/overbridge.c
index 36585be..f48f4d3 100644
--- a/src/overbridge.c
+++ b/src/overbridge.c
@@ -43,6 +43,7 @@
 #define ARMK2_PID 0x0010
 #define DTONE_PID 0x0014
 #define AHMK2_PID 0x0016
+#define MC_PID 0x001b
 #define DKEYS_PID 0x001c

 #define MAX_USB_DEPTH 7
@@ -142,9 +143,19 @@ static const struct overbridge_device_desc AHMK2_DESC = {
   .output_track_names = {"Main L", "Main R", "FX Return L", "FX Return R"}
 };

+static const struct overbridge_device_desc MC_DESC = {
+  .pid = MC_PID,
+  .name = "Model:Cycles",
+  .inputs = 2,
+  .outputs = 2,
+  .input_track_names =
+    {"Main L Input", "Main R Input"},
+  .output_track_names = {"Main L", "Main R"}
+};
+
 static const struct overbridge_device_desc OB_DEVICE_DESCS[] = {
   DIGITAKT_DESC, DIGITONE_DESC, AFMK2_DESC, ARMK2_DESC, DKEYS_DESC,
-  AHMK1_DESC, AHMK2_DESC
+  AHMK1_DESC, AHMK2_DESC, MC_DESC
 };

 static const int OB_DEVICE_DESCS_N =

I can list the device but I get this error:

[I] ➜ overwitch -d Model:Cycles -v
Device: Model:Cycles (outputs: 0, inputs: 2)
ERROR:jclient.c:575:(jclient_run): USB error: can't set usb config

[I] ➜ overwitch -d Model:Cycles -v
Device: Model:Cycles (outputs: 0, inputs: 2)
ERROR:jclient.c:575:(jclient_run): USB error: can't set usb config

Same as root. I'm not sure about the i/o counts or how to find them out.

dagargo commented 2 years ago

Sadly, this isn't gonna work as M:C is not an Overbridge device.

But I'm gonna keep this open as I could add this in the future.

In the meantime, I suggest you to take a look at zita-a2j.

dagargo commented 1 year ago

I've decided that zita-a2j is the way to go when devices are already available in ALSA, as any USB audio or MIDI compliant device would be.