Akai APC Key25 mk2 driver

Cool! Very nice. It’s there a reason you called the “Arranger” view, “Patman”?

1 Like

Yes, I didn’t want to confuse the user with the actual arranger of Zynthian (which has more features). Actually, in the code it’s called “arranger sub-mode”. :grin:

1 Like

hi,
is it possible to fit Oscar’s drivers into the stable branch?

Sorry @balenciaga we are not applying features to the current stable. We are focusing all effort to getting Oram out as soon as possible. Stable is now frozen with only substantial bugs being patched. The good news is that by focusing on Oram we can release it more rapidly. :smile:

2 Likes

So I’m waiting for fixing synth chain menu in Oram. Can’t see nor samplers nor modelers, “analogs” only. Or am I the only one with this problem?

You can side slide with the touch or use the top-left encoder (knob 3)

Regards

Holy shit! Surprised me! I used to be smarter fifty years ago… I’ve just started converting Oscar’s script… Thanks!

1 Like

I don’t think you can migrate everything to stable. Oscar’s driver use a lot of features only available in oram. Also, i don’t think it’s worth the effort. If you really want to use this driver, you should jump to oram-bookworm. Anyway, up to you :wink:

All the best!

1 Like

I’ve explored three branches, stable, Oscar’s chain_manager and oram_bookworm. And at least three hardware constelations. I’ve ended with two: RPi4/Hifiberry headless and RPi4/v5 ADAC/7inch/AkaiMPC25 as UI and chain_manager. Tried oram and decided to switch. Only problem was undiscovered way to FS modelers/samplers. So no need to rework drivers. Anyway, problem solved the easiest way - swappin’ sd card. Thanks!

1 Like

Don’t use chain manager branch. That was a development that led to Oram and is no longer being developed. Oram is the new chain manager.

1 Like

Just got the Akai MPK Mini editor running in Wine & Box 86

It just works and allows me to reedit the default pad settings which I managed to edit back in my heretical days of using Windows… to alter PAd one to work on MIDI channel 5…

Progress can now be made!

3 Likes

I have two Akai APC Key25 mk2 units, they are usually on separate Zynthian or Zynia units. I thought it would be interesting to hook them up to one Zynthian and see how they work, and the answer is quite well!

I wouldn’t say it’s thoroughly tested, but in general the two controllers work together nicely - you can keep them in different modes and use them independently, or put them both in the same mode and they each reflect the state of the other as their ‘own’. And you can even set the octave up-down to get a four octave keyboard!

Kudos to @jofemodo @riban and @oscaracena !!!

Here’s how they appear when I SSH to root:
(venv) root@zynthian:~# amidi -l
Dir Device Name
IO hw:1,0,0 APC Key 25 mk2 APC Key 25 mk2 K
IO hw:1,0,1 APC Key 25 mk2 APC Key 25 mk2 C
IO hw:2,0,0 MPK225 Port A
IO hw:2,0,1 MPK225 Port B
IO hw:2,0,2 MPK225 MIDI
IO hw:2,0,3 MPK225 Remote
IO hw:4,0 f_midi
IO hw:5,0,0 APC Key 25 mk2 APC Key 25 mk2 K
IO hw:5,0,1 APC Key 25 mk2 APC Key 25 mk2 C
(venv) root@zynthian:~#

hw 1 & 5 are the two APC Key25s, hw 2 is an MPK225 without a driver, I don’t know what the f_midi is on hw 4 and I don’t know why hw 3 is skipped.

4 Likes

The kernal and ALSA assign identifiers to devices as they are detected. The kernel snd module handles audio and MIDI. If an interface is disconnected then reconnected it may get a different hw number. So the missing hw:3 may be an audio card or a temporarily assigned interface that was subsequently removed, e.g. USB MIDI / Audio.

Cool work in playing with multiple instances and it is good to see it behaves nicely. The bulk of the kudos goes to @oscaracena who spent so much time writing the control driver for this device. :heart:

4 Likes

But without such a good system to work with, nothing could be achieved! The hard work both of you make in Zynthian shines through! :grinning: :clap: :clap:

4 Likes

Hi,

I think I’m having some trouble with the Akai APC Key25-driver.
Not sure if it’s the same as @marzaise is experiencing like stated here, but it seems to be very likely.

I can do everything I was reading in the wiki about Supported plug&play MIDI Devices, but program anything via Sequencer-Mode.

Another thing I didn’t understand, are the green soft-key which should work as knob-push. They also don’t seem to do anything when pressed.

Does anybody know if it schould already be fixed?

My webconf-dashboard

Some UI Log while using the said function of the controller

May 29 19:20:53 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:20:53 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:20:53 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:20:53 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:20:53 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:20:53 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:20:53 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:20:53 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:20:53 zynthian startx[906]: self._libseq.addNote(
May 29 19:20:53 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:37:42 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:37:42 zynthian startx[906]: Traceback (most recent call last):
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:37:42 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:37:42 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:37:42 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:37:42 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:37:42 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:37:42 zynthian startx[906]: self._libseq.addNote(
May 29 19:37:42 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:37:42 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:37:42 zynthian startx[906]: Traceback (most recent call last):
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:37:42 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:37:42 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:37:42 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:37:42 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:37:42 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:37:42 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:37:42 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:37:42 zynthian startx[906]: self._libseq.addNote(
May 29 19:37:42 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:37:47 zynthian startx[906]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:37:47 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:37:47 zynthian startx[906]: cuia_func(params)
May 29 19:37:47 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:37:47 zynthian startx[906]: self.zynswitch_short(i)
May 29 19:37:47 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:37:47 zynthian startx[906]: elif i >= 4:
May 29 19:37:47 zynthian startx[906]: ^^^^^^
May 29 19:37:47 zynthian startx[906]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:37:50 zynthian startx[906]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:37:50 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:37:50 zynthian startx[906]: cuia_func(params)
May 29 19:37:50 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:37:50 zynthian startx[906]: self.zynswitch_short(i)
May 29 19:37:50 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:37:50 zynthian startx[906]: elif i >= 4:
May 29 19:37:50 zynthian startx[906]: ^^^^^^
May 29 19:37:50 zynthian startx[906]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:37:53 zynthian startx[906]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:37:53 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:37:53 zynthian startx[906]: cuia_func(params)
May 29 19:37:53 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:37:53 zynthian startx[906]: self.zynswitch_short(i)
May 29 19:37:53 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:37:53 zynthian startx[906]: elif i >= 4:
May 29 19:37:53 zynthian startx[906]: ^^^^^^
May 29 19:37:53 zynthian startx[906]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:37:56 zynthian startx[906]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:37:56 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:37:56 zynthian startx[906]: cuia_func(params)
May 29 19:37:56 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:37:56 zynthian startx[906]: self.zynswitch_short(i)
May 29 19:37:56 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:37:56 zynthian startx[906]: elif i >= 4:
May 29 19:37:56 zynthian startx[906]: ^^^^^^
May 29 19:37:56 zynthian startx[906]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:37:59 zynthian startx[906]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:37:59 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:37:59 zynthian startx[906]: cuia_func(params)
May 29 19:37:59 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:37:59 zynthian startx[906]: self.zynswitch_short(i)
May 29 19:37:59 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:37:59 zynthian startx[906]: elif i >= 4:
May 29 19:37:59 zynthian startx[906]: ^^^^^^
May 29 19:37:59 zynthian startx[906]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:38:20 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:20 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:20 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:20 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:20 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:20 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:20 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:20 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:20 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:20 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:20 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:20 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:20 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:20 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:20 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:20 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:20 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:20 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:20 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:20 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:20 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:20 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:20 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:20 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:20 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:20 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:20 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:20 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:20 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:21 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:21 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:21 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:21 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:21 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:21 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:21 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:21 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:21 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:21 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:21 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:21 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:21 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:21 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:21 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:21 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:21 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:21 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:21 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:21 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:21 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:21 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:21 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:21 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:21 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:21 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:21 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:21 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:21 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:22 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:22 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:22 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:22 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:22 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:22 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:22 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:22 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:22 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:22 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:22 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:22 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:22 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:22 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:22 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:22 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:22 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:22 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)
May 29 19:38:22 zynthian startx[906]: ERROR:zynthian_state_manager.zynmidi_read: this function takes at least 5 arguments (4 given)
May 29 19:38:22 zynthian startx[906]: Traceback (most recent call last):
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_state_manager.py", line 694, in zynmidi_read
May 29 19:38:22 zynthian startx[906]: if self.ctrldev_manager.midi_event(izmip, ev):
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/zynthian_ctrldev_manager.py", line 181, in midi_event
May 29 19:38:22 zynthian startx[906]: return self.drivers[idev].midi_event(ev)
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 234, in midi_event
May 29 19:38:22 zynthian startx[906]: if self._on_midi_event(ev):
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 335, in _on_midi_event
May 29 19:38:22 zynthian startx[906]: return self._current_handler.note_off(note, self._is_shifted)
May 29 19:38:22 zynthian startx[906]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 1904, in note_off
May 29 19:38:22 zynthian startx[906]: self._toggle_step(self._pads.index(note))
May 29 19:38:22 zynthian startx[906]: File "/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py", line 2224, in _toggle_step
May 29 19:38:22 zynthian startx[906]: self._libseq.addNote(
May 29 19:38:22 zynthian startx[906]: TypeError: this function takes at least 5 arguments (4 given)

Alrighty, the fix is really easy for the sequencer-mode as seen in @oscaracena 's Commit

But for the device-mode there still seem to be some errors coming up in the ui log:

May 29 19:53:34 zynthian startx[870]: Hardware Model: Raspberry Pi 4 Model B Rev 1.5
May 29 19:53:34 zynthian startx[870]: ----------------------------------------------
May 29 19:53:36 zynthian startx[900]: ZynCore: Setting-up 16 x Zynswitches...
May 29 19:53:36 zynthian startx[900]: ZynCore: Setting-up 4 x Zynpots (zyncoders)...
May 29 19:53:36 zynthian startx[900]: ZynCore->gpiod_start_callbacks: Callback thread created successfully
May 29 19:53:38 zynthian startx[900]: Started libzynaudioplayer using libsndfile-1.2.0
May 29 19:53:39 zynthian startx[900]: Started libzynmixer
May 29 19:53:39 zynthian startx[900]: Started libzynseq
May 29 19:53:39 zynthian startx[900]: Started libzynsmf
May 29 19:53:41 zynthian startx[900]: WARNING:zynthian_gui_brightness_config.init_ctrls: Can't set display brightness!
May 29 19:57:09 zynthian startx[900]: WARNING:zynthian_signal_manager.unregister: Callback not registered for signal(12,3)
May 29 19:57:31 zynthian startx[900]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:57:31 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:57:31 zynthian startx[900]: cuia_func(params)
May 29 19:57:31 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:57:31 zynthian startx[900]: self.zynswitch_short(i)
May 29 19:57:31 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:57:31 zynthian startx[900]: elif i >= 4:
May 29 19:57:31 zynthian startx[900]: ^^^^^^
May 29 19:57:31 zynthian startx[900]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:57:34 zynthian startx[900]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:57:34 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:57:34 zynthian startx[900]: cuia_func(params)
May 29 19:57:34 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:57:34 zynthian startx[900]: self.zynswitch_short(i)
May 29 19:57:34 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:57:34 zynthian startx[900]: elif i >= 4:
May 29 19:57:34 zynthian startx[900]: ^^^^^^
May 29 19:57:34 zynthian startx[900]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:59:53 zynthian startx[900]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:59:53 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:59:53 zynthian startx[900]: cuia_func(params)
May 29 19:59:53 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:59:53 zynthian startx[900]: self.zynswitch_short(i)
May 29 19:59:53 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:59:53 zynthian startx[900]: elif i >= 4:
May 29 19:59:53 zynthian startx[900]: ^^^^^^
May 29 19:59:53 zynthian startx[900]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:59:56 zynthian startx[900]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:59:56 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:59:56 zynthian startx[900]: cuia_func(params)
May 29 19:59:56 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:59:56 zynthian startx[900]: self.zynswitch_short(i)
May 29 19:59:56 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:59:56 zynthian startx[900]: elif i >= 4:
May 29 19:59:56 zynthian startx[900]: ^^^^^^
May 29 19:59:56 zynthian startx[900]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 19:59:59 zynthian startx[900]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 19:59:59 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 19:59:59 zynthian startx[900]: cuia_func(params)
May 29 19:59:59 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 19:59:59 zynthian startx[900]: self.zynswitch_short(i)
May 29 19:59:59 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 19:59:59 zynthian startx[900]: elif i >= 4:
May 29 19:59:59 zynthian startx[900]: ^^^^^^
May 29 19:59:59 zynthian startx[900]: TypeError: '>=' not supported between instances of 'str' and 'int'
May 29 20:00:02 zynthian startx[900]: ERROR:zynthian_gui.cuia_thread_task: Traceback (most recent call last):
May 29 20:00:02 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2325, in cuia_thread_task
May 29 20:00:02 zynthian startx[900]: cuia_func(params)
May 29 20:00:02 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1507, in cuia_v5_zynpot_switch
May 29 20:00:02 zynthian startx[900]: self.zynswitch_short(i)
May 29 20:00:02 zynthian startx[900]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1911, in zynswitch_short
May 29 20:00:02 zynthian startx[900]: elif i >= 4:
May 29 20:00:02 zynthian startx[900]: ^^^^^^
May 29 20:00:02 zynthian startx[900]: TypeError: '>=' not supported between instances of 'str' and 'int'

Ok, let me check it out…

UPDATE: It was a missing casting to integer. As I think the PR is not merged, and this is a so simple fix, I can update it. Just a second.

UPDATE: Done! soft-keys should be working again (if PR is applied) :slight_smile: Thanks @Jojo_Action for submitting the issue!

2 Likes

It’s merged!

Thanks @oscaracena

2 Likes

Welcome to the community @Jojo_Action and well done on such a useful and informative first couple of posts. I am sure you will enjoy us as much as we will enjoy you. (Not in a Hannibal Lecter way!!!)
image

2 Likes

I just tried the APC key25 mk II with pi5, oram, a touch hdmi display and Steinberg UR22II. Keyboard is not working at all. UI Log says

Jun 28 18:15:50 zynthian startx[1004]: Exception in thread Multitouch:
Jun 28 18:15:50 zynthian startx[1004]: Traceback (most recent call last):
Jun 28 18:15:50 zynthian startx[1004]: File “/usr/lib/python3.11/threading.py”, line 1038, in _bootstrap_inner
Jun 28 18:15:50 zynthian startx[1004]: self.run()
Jun 28 18:15:50 zynthian startx[1004]: File “/usr/lib/python3.11/threading.py”, line 975, in run
Jun 28 18:15:50 zynthian startx[1004]: self._target(*self._args, **self._kwargs)
Jun 28 18:15:50 zynthian startx[1004]: File “/zynthian/zynthian-ui/zyngui/multitouch.py”, line 245, in _run
Jun 28 18:15:50 zynthian startx[1004]: event = self._f_device.read(self.EVENT_SIZE)
Jun 28 18:15:50 zynthian startx[1004]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 28 18:15:50 zynthian startx[1004]: OSError: [Errno 19] No such device
Jun 28 18:15:54 zynthian startx[1004]: ERROR:zynthian_ctrldev_manager.load_driver: Can’t load ctrldev driver APC Key 25 mk2 IN 2 => /zynthian/zynthian-ui/zynlibs/zynseq/build/libzynseq.so: undefined symbol: enableMidiClockOutput
Jun 28 18:15:59 zynthian startx[1611]: Cannot open StepSeq-Monitor client
Jun 28 18:15:59 zynthian startx[1611]: Cannot read socket fd = 67 err = Success
Jun 28 18:15:59 zynthian startx[1611]: CheckRes error
Jun 28 18:15:59 zynthian startx[1611]: JackSocketClientChannel read fail
Jun 28 18:15:59 zynthian startx[1611]: JackShmReadWritePtr1::~JackShmReadWritePtr1 - Init not done for -1, skipping unlock
Jun 28 18:15:59 zynthian startx[1611]: Process StepSyncProvider-1:
Jun 28 18:15:59 zynthian startx[1611]: Traceback (most recent call last):
Jun 28 18:15:59 zynthian startx[1611]: File “/usr/lib/python3.11/multiprocessing/process.py”, line 314, in _bootstrap
Jun 28 18:15:59 zynthian startx[1611]: self.run()
Jun 28 18:15:59 zynthian startx[1611]: File “/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py”, line 1320, in run
Jun 28 18:15:59 zynthian startx[1611]: self._jack_client = jack.Client(“StepSeq-Monitor”)
Jun 28 18:15:59 zynthian startx[1611]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 28 18:15:59 zynthian startx[1611]: File “/zynthian/venv/lib/python3.11/site-packages/jack.py”, line 213, in init
Jun 28 18:15:59 zynthian startx[1611]: raise JackOpenError(name, self._status)
Jun 28 18:15:59 zynthian startx[1611]: jack.JackOpenError: Error initializing “StepSeq-Monitor”: <jack.Status 0x21: failure, server_error>
Jun 28 18:16:00 zynthian startx[1004]: ERROR:zynthian_ctrldev_manager.load_driver: Can’t load ctrldev driver APC Key 25 mk2 IN 2 => /zynthian/zynthian-ui/zynlibs/zynseq/build/libzynseq.so: undefined symbol: enableMidiClockOutput
Jun 28 18:16:05 zynthian startx[1621]: Cannot read socket fd = 73 err = Success
Jun 28 18:16:05 zynthian startx[1621]: CheckRes error
Jun 28 18:16:05 zynthian startx[1621]: JackSocketClientChannel read fail
Jun 28 18:16:05 zynthian startx[1621]: Cannot open StepSeq-Monitor client
Jun 28 18:16:05 zynthian startx[1621]: JackShmReadWritePtr1::~JackShmReadWritePtr1 - Init not done for -1, skipping unlock
Jun 28 18:16:05 zynthian startx[1621]: Process StepSyncProvider-2:
Jun 28 18:16:05 zynthian startx[1621]: Traceback (most recent call last):
Jun 28 18:16:05 zynthian startx[1621]: File “/usr/lib/python3.11/multiprocessing/process.py”, line 314, in _bootstrap
Jun 28 18:16:05 zynthian startx[1621]: self.run()
Jun 28 18:16:05 zynthian startx[1621]: File “/zynthian/zynthian-ui/zyngine/ctrldev/zynthian_ctrldev_akai_apc_key25_mk2.py”, line 1320, in run
Jun 28 18:16:05 zynthian startx[1621]: self._jack_client = jack.Client(“StepSeq-Monitor”)
Jun 28 18:16:05 zynthian startx[1621]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 28 18:16:05 zynthian startx[1621]: File “/zynthian/venv/lib/python3.11/site-packages/jack.py”, line 213, in init
Jun 28 18:16:05 zynthian startx[1621]: raise JackOpenError(name, self._status)
Jun 28 18:16:05 zynthian startx[1621]: jack.JackOpenError: Error initializing “StepSeq-Monitor”: <jack.Status 0x21: failure, server_error>

Do i have to change repositories to test, or should it work out of the box?