Akai APC Key25 mk2 driver

Hi Zynthianers!

As some of you know, I’m working on a driver for the APC Key25. It’s being a very fun quest, and I’m enjoying it a lot! :nerd_face:

The support for Zynmixer and Zynpad is already there, and also a second mode to handle the UI. I’m currently implementing a third mode, something like a step sequencer to work with the Zynpad + Pattern Editor. It’s still in a very early stage, but I would like to share a taste of it with you. Hope someone will find it useful, and any feedback/suggestion is welcomed!



Woaoo @oscaracena !! This is a really cool workflow for percussion patterns! You are doing a fantastic work with the APC driver. Congrats!!
Please, think big and try to abstract the key parts. I would like to replicate this on my launchpad, for instance.



Are you integrating with zynseq patterns? Is the source code available to review? I’m interested in how you’re are doing this. It would be good to have a consistent approach.


Thank you! :smiling_face: I have the modes separated (even in different classes), it wouldn’t be very difficult to extract and reuse for other devices, I think :wink:

Yes, it’s integrated, I’m using the API exposed on zynseq.h. I’m not sure if I pushed the latest changes (related to clearing note assignment), but the code is in my fork of zynthian-ui, just here:

The code may need a bit of refactoring and cleaning, so don’t take it too seriously :face_with_peeking_eye::pray:


This is super cool man! We should abstract the pattern integration so that it can be implemented in any pad-based controller and also presented in the zynthian gui. It is an old-school presentation of drum machines (similar to 808) that is cool with the kids now as it was in the 80’s and that is the type of sequencing I had in mind when I wrote zynseq. Let’s expose this cool feature to the masses, not just those with APC key25 mk2 units. :slight_smile:


Thanks @riban and @jofemodo for your support! I’m eager to get the common factor and use it in other controllers! :slight_smile:


Hi guys!

Just an update… I’ve got a bunch of new features in the sequencer! :grinning: Now we can:

  • Choose between 4 pages, of 8 instruments each, to store our notes.
  • Adjust the velocity and/or the duration of each step/instrument.
  • Adjust the tempo and the selected sequence chain’s level directly with a pair of knobs.
  • Move to previous/next pattern in current track. If there are no more patterns, it will be created (up to 8). This can be used to chain patterns easily.
  • Roll (copy) current pattern to adjacent ones.
  • Playing along (I called it stage play), which is a playing mode that follows the playhead (changing the pattern as it goes).

And some other minor details. And many other in the oven… :upside_down_face:

I’ll try to record a new video showing them in action.
Keep in sync!


This is making it a foregone conclusion that I’m buying one of these… :>


Or maybe we can abstract this so that we can all benefit, whatever hardware controller we have. (There is a ban on new keyboards / controllers being purchased in our household due a perceived excess!)

Brilliant work by @oscaracena - thanks!


I do have a Launchkey 61 which I would not at all mind getting better integrated.

Has anyone ever looked at the Ableton Push? They have reached a third version so there are probably a lot of Push 1s out there and scoopable. Even the first edition, it’s got those little character displays, it feels like it could be appropriated by us as a next-level interface.

I own a copy of Ableton, I will never use it and I think about selling it all the time, but I also am pretty sure that I’ll find a sdeal on a Push eventually, and I’ll wanna have a baseline to compare to, cause if that happens I’ll definitely have a go at integrating it myself.

Edit: most recent one does some MPE stuff though, sexy af

The idea of re purposing old kit in this fashion seems a very sensible area to develop in as far as zyndrivers are concerned.

It would, if the marketing departments of the companies have done their job properly, mean that functional concepts should subclass easily between subsequent versions of the brand name.

Hello, thank you for the work you are doing on this driver!
I’m pretty new to zynthian and I’m noting issues in making APC working.
I’ve uploaded your driver to zyngui/ctrldev folder and turned repository to testing (already downloaded all the stuff), but nothing changed and the upper rows of the pad section are still playing low octave notes and the “control” pads somehow replicates some keyboard notes.

for sure I’m missing some steps and any advice or suggestion would be precious.
thank you in advance

Hi @bigtower17 and welcome to Zynthianland! :slightly_smiling_face:

First and foremost, did you update to chain_manager? This driver uses the features of the branch chain_manager, and I’ve not tested it outside that branch. I thing @jofemodo merged some of its development to testing, but I don’t know its current state.

On the other hand, (at least in chain_manager) the drivers changed its location to zyngine/ctrdev. Please, check if that folder exists in your installation, and tell me your current branch of Zynthian, so I can help you further.

UPDATE: I’ve checked the git repository, and I confirm you that, in order to use this driver, you need to update to chain_manager.

1 Like

I’m at stable branch now, I’ve just tried to switch zynthian-ui to chain_manager (both via web and ssh) but the system shows error screen and i have to roll back to stable, I don’t get what I’m doing wrongly

Please, note that the branch chain_manager is heavily updated, and may be unstable sometimes. BUT, if you don’t mind it, we can help you with the transition… :slight_smile:

Did you check the logs (http://zynthian.local/ui-log) to try and debug the problem?

Mission completed! after 3 attempts it worked and updated my repos :heart:
Thank you for your precious support, now it’s time to learn how the controller map works

Is there anything I can do to help you in developing the driver?


Great!! Congrats! :smiling_face::clap::clap:

My pleasure! :grin: Did you already check the wiki?

Yeah, you can use it, and tell me what do you think, and what would you improve or change, or what do you think is missing… :slightly_smiling_face: Thank you!


Beat that Moog!

Game changer! Please video! :pray:t5::pray:t5::pray:t5::pray:t5: